Am Sat, 9 Feb 2013 02:51:58 +0100 schrieb Steven Le Roux: Was some permission issue on the server. I corrected it...
> Andreas : 1st link issues a 404 > > can't wait to test that ;) > > > On Sat, Feb 9, 2013 at 12:10 AM, Andreas Volz <[email protected]> > wrote: > > > Am Fri, 8 Feb 2013 11:41:38 +1000 schrieb David Seikel: > > > > > On Thu, 7 Feb 2013 23:18:59 +0100 Andreas Volz > > > <[email protected]> wrote: > > > > > > > Am Sat, 2 Feb 2013 23:56:02 +0100 schrieb Andreas Volz: > > > > > > > > > Hello together, > > > > > > > > > > I'm currently trying to port some EFL libs to android. > > > > > > > > Just like to report some success about this task. > > > > > > > > The EFL is working successful on android platform. Up to now I > > > > ported the buffer engine and use a native android bitmap to > > > > display rendered result. :-) > > > > > > > > As next task I like to polish it more and commit changes to SVN. > > > > I'll raw summarize my needed changes so anyone could add a > > > > comment before I start with this task. Please give me some > > > > comments. > > > > > > > > I won't provide any patches at the moment, because I used > > > > efl-1.7.5 and need to port it to trunk and I like to discuss > > > > them before. > > > > > > > > Library versions > > > > ---------------- > > > > Android doesn't well support the library versions (libxyz.so.1). > > > > Each application or library package is independent from others. > > > > So no need to use versions.I had to modify all Makefile.am to > > > > replace: > > > > > > > > "-version-info @version_info@ @release_info@" => > > > > "-avoid-version". > > > > > > > > Module structure > > > > ---------------- > > > > The app resources on android support only flat directory > > > > structure. So I had to change module structure > > > > > > > > > > /lib/evas/modules/engines/software_x11/linux-gnu-x86_64-1.7.99/module.so > > > > > > > > isn't possible. This goes together with next change... > > > > > > > > Module name > > > > ----------- > > > > For some reasons shared objects on android need to be named > > > > lib*.so to be correct included. Maybe this is also a limitation > > > > of the package creator. Don't know for sure. But for this > > > > reasons I decided to name modules like this: > > > > > > > > libevas_modules_engines_buffer.so > > > > libevas_modules_engines_software_generic.so > > > > > > > > (PS: if you are more experienced with android and teach me a > > > > better way to solve the library restrictions, please do so!) > > > > > > > > Module loader (evas) > > > > -------------------- > > > > I had to modify module loader > > > > evas-1.7.5/src/lib/file/evas_module.c to load modules from the > > > > new place in evas_module_paths_init(). In my case here local > > > > hacked to "/data/data/com.example.efl/lib/". The correct way > > > > would be for sure to get this path dynamic. Seems that this > > > > path is only available in the Java API. So I've to get it by > > > > JNI calls from Java. Other people out there do the same trick > > > > to solve this. > > > > > > > > I've to port evas_module_engine_list() for sure too. But until > > > > now I could survive without. > > > > > > > > The evas_module_find_type() needed changes too to support the > > > > new library paths. > > > > > > > > If I remember correct this were the biggest changes I've done > > > > until now. > > > > > > > > How to bring this into EFL trunk? > > > > --------------------------------- > > > > My idea to solve the build structure is to create a new > > > > configure option (e.g. --flat-lib-naming or more specific > > > > --enable-android) and handle the magic in all Makefile.am files > > > > with this options. I even think about auto detecting android > > > > support and just configure it in a correct way. This would be > > > > more smart. > > > > > > > > The change in evas itself are only several lines of code that I > > > > currently guard with #ifdef __ANDROID__. > > > > > > > > For sure all dependencies (libpng, libjpeg, freetype...) needs > > > > to be modified in some similar way regarding the library > > > > naming. I would maintain this as patches for release versions > > > > as long as they don't support android. > > > > > > > > Next steps > > > > ----------- > > > > Ok, after bringing android support with current state into EFL > > > > trunk I would start to write some software_android engine and > > > > later maybe some gl_android engine. I assume the input events > > > > (touchscreen) then needs also to be supported. I've really no > > > > idea how this works as I didn't care about it currently. But > > > > I'm sure there's a way... > > > > > > > > Help needed > > > > ----------- > > > > I like to commit my changes to EFL and afterwards I hope some > > > > tutorials and an example application could motivate someone > > > > experienced with writing evas engines to support this port. > > > > > > > > So if nobody complains after this email I'll commit my changes > > > > _carefully_ to EFL with being sure not to destroy any existing > > > > code. > > > > > > I'm looking forward to seeing your work. Dunno if I can help > > > much, but I'll certainly by trying it out. > > > > Ok, are you really brave enough to test a first demo? :-) > > > > If you answer yes, then please read this: > > > > - Be sure to have an arm device (e.g. Samsung Galaxy S2)!!! > > - didn't compile for mips until now > > - Activate installing apps from foreign locations > > - copy > > http://tux-style.com/projects/android_efl/2013_02_08/clock.edj > > to /sdcard/clock.edj on your android device > > - Point your browser to > > http://tux-style.com/projects/android_efl/2013_02_08/efl.apk and > > install it > > - Run the new efl application and press on the button after starting > > - See a nice edje clock rendered (if everything works correct!) > > > > Please don't kick my ass if anything goes wrong on your device!!!! > > > > Problems > > -------- > > - Edje animation loop isn't working. So you see only the first frame > > rendered at 12 o'clock and that's it. I'm working on this... > > - If you don't have the edje file in correct place it may crash. > > - My way of displaying content is really bad as I get image content > > through jni. This is horrible slow! I'll improve it. > > - Sometimes there are crashes. And then your phone hangs for several > > seconds until the process is killed. I hadn't time to debug it > > today. > > > > If you're not brave enough here is a photo: > > > > http://s3.postimage.org/otq03l29v/P1010822_small.jpg > > > > Video doesn't help as animation loop isn't working. :-) > > > > regards > > Andreas > > > > -- > > Technical Blog <http://andreasvolz.wordpress.com/> > > > > > > ------------------------------------------------------------------------------ > > Free Next-Gen Firewall Hardware Offer > > Buy your Sophos next-gen firewall before the end March 2013 > > and get the hardware for free! Learn more. > > http://p.sf.net/sfu/sophos-d2d-feb > > _______________________________________________ > > enlightenment-devel mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > > > > > -- > Steven Le Roux > Jabber-ID : [email protected] > 0x39494CCB <[email protected]> > 2FF7 226B 552E 4709 03F0 6281 72D7 A010 3949 4CCB > ------------------------------------------------------------------------------ > Free Next-Gen Firewall Hardware Offer > Buy your Sophos next-gen firewall before the end March 2013 > and get the hardware for free! Learn more. > http://p.sf.net/sfu/sophos-d2d-feb > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > -- Technical Blog <http://andreasvolz.wordpress.com/> ------------------------------------------------------------------------------ Free Next-Gen Firewall Hardware Offer Buy your Sophos next-gen firewall before the end March 2013 and get the hardware for free! Learn more. http://p.sf.net/sfu/sophos-d2d-feb _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
