On Sun, 2013-09-29 at 20:43 +0200, Thomas Martitz wrote: > Am 29.09.2013 14:22, schrieb Arun Raghavan: > > Some notes: > > > > * This depends on 'androgenizer', a tool to generate Android-style > > Android.mk files from an autotools build system. > > > > * This assumes that PA is run as the system daemon and configures > > accordingly. > > > > * In the Android build, libltdl is likely not available when configure > > is being run, and we know it will be so the check is manually > > overridden. > > > > * NEON support needs to be communicated from an upper-level Android.mk. > > > > * rpaths don't work on Android - you need LD_LIBRARY_PATH set. > > > > * Configuration files for /etc/pulse are shipped out of tree, since they > > vary from device to device. > > > > * The original patch was massive and ugly, but thanks Pekka Paalanen's > > work on Weston to break out common androgenizer snippets, we could > > greatly decrease the size of the Android-specific elements. > > > > * Since we don't use libtool for linking, we need to work around some > > symbol definition problems that turn up. This is done in a separate > > file (pulseaudio-android-symdef.c). More information about this at: > > http://www.sourceware.org/autobook/autobook/autobook_173.html (the > > example snippet needs some fixing to work with current libtool). > > > Is the lot of those changes just so you can use the "ndk-build" command? > You know you don't have to use it for android stuff, you can keep using > existing/traditional build systems. We at Rockbox use our original > make-based build system in the same way as for all other ports, with the > exception that the final output is a .so file. This basically just > required passing -shared on the final linker cmdline. The point is that > we don't use ndk-build anywhere and this kept the required changes to > our build system at a minimum. This is not for the NDK - it actually lets you integrate PA into an AOSP tree, and then build a system image more ore less as you otherwise would (with one preprocessing step that can be done away with). I do hope that this can be reused for easy integration into an ndk-build tree as well, but this is not the main objective. Doing so would make sure all your NDK bits are built with the same flags (this isn't such a big deal, just a nice-to-have). -- Arun