On 06/08/2014, at 5:24 AM, Ryan wrote:
>> 
>>> Basically I just wanted to copy the felix generated cpp files to
>> NDK/jni then invoke ndk-build.
>> 
>> Sorry i have no idea what ndk-build is or does.
> 
> It's the build tool that Android uses, I believe(NDK=Natural Development Kit).

I guess that, but that is really not a lot of information.

>> I would copy these to your target and modify them to suit the target
>> by hand.  You only need to do that once (well .. until I change the RTL
>> :)
> 
> ...or, if you know how to use Git, you can clone the Felix repo and create a 
> custom branch with the changes you make. Then, whenever the source changes, 
> you can merge them in using Git's merge utilities.

Better to share by modifying the repository directly.

There is a tool called 

        src/tools/flx_build_prep.flx

This prepares a new target for building. Please read
the code, its only short.

One of the switches to the tool is used to copy the C++ headers:

        --copy-config-headers

This copies the headers in the source directory, usually

        build/release/host/lib/rtl

The only ones of interest are:

~/felix>ls build/release/host/lib/rtl/*config.h*
build/release/host/lib/rtl/demux_sockety_config.hpp     
build/release/host/lib/rtl/flx_pthread_config.hpp
build/release/host/lib/rtl/flx_demux_config.hpp         
build/release/host/lib/rtl/flx_re2_config.hpp
build/release/host/lib/rtl/flx_exceptions_config.hpp    
build/release/host/lib/rtl/flx_rtl_config.h
build/release/host/lib/rtl/flx_faio_config.hpp          
build/release/host/lib/rtl/flx_rtl_config.hpp
build/release/host/lib/rtl/flx_gc_config.hpp            
build/release/host/lib/rtl/flx_sqlite3_config.hpp
build/release/host/lib/rtl/flx_glob_config.hpp          
build/release/host/lib/rtl/flx_sundown_config.hpp
build/release/host/lib/rtl/flx_manymouse_config.h       
build/release/host/lib/rtl/flx_tre_config.h

[The other ones are actually generated from Felix source. Hmm .. didn't realise.
I should split these up]

Of those, most do not contain any actual configuration data.
Almost all the config data is actually in

~/felix>cat build/release/host/lib/rtl/flx_rtl_config_params.hpp
#ifndef __FLX_RTL_CONFIG_PARAMS_H__
#define __FLX_RTL_CONFIG_PARAMS_H__

#define FLX_HAVE_VSNPRINTF 1
#define FLX_HAVE_BOOL 1
#define FLX_HAVE_LONGLONG 1
#define FLX_HAVE_LONGDOUBLE 1
#define FLX_HAVE_GNU 1
#define FLX_HAVE_GNU_X86 0
#define FLX_HAVE_GNU_X86_64 0
#define FLX_HAVE_GNU_BUILTIN_EXPECT 1
#define FLX_HAVE_CGOTO 1
#define FLX_USE_REGPARM3 0
#define FLX_HAVE_ASM_LABELS 0
#define FLX_HAVE_DLOPEN 1
#define FLX_MACOSX 1
#define FLX_LINUX 0
#define FLX_WIN32 0
#define FLX_WIN64 0
#define FLX_CYGWIN 0
#define FLX_POSIX 1
#define FLX_SOLARIS 0
#define FLX_HAVE_MSVC 0
#define FLX_HAVE_KQUEUE_DEMUXER 1
#define FLX_HAVE_POLL 1
#define FLX_HAVE_EPOLL 0
#define FLX_HAVE_EVTPORTS 0
#define FLX_HAVE_OPENMP 0
#define FLX_MAX_ALIGN 16

#endif

That's basically it. You have to set those macros.

I've actually been meaning to make a version of this file
for each platform and copy that based on a switch.

Most of the other stuff is not interesting if you're copying
C++ files to the target for building: it is only useful
if you're cross compiling, and require, for example,
libraries on your host to link to.

So really it's not a big thing to make your own Android config.
If you have a cross compiler, such as gcc with ARM target or whatever,
you could make code that runs on Android directly.

After all, Android is Just Linux with a Java based GUI on top.

If you want to do GUI stuff it is a pain on ANY platform!
Which is why I have played with SDL, since it allows one
to write portable graphics code (It's not a GUI, but is aimed
at games).

--
john skaller
skal...@users.sourceforge.net
http://felix-lang.org




------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
Felix-language mailing list
Felix-language@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/felix-language

Reply via email to