Adding list to Cc in case others are interested. On Sat, 2013-03-02 at 22:35 +0100, Nikos Mavrogiannopoulos wrote: > On 03/02/2013 10:10 PM, David Woodhouse wrote: > > > On Sat, 2013-03-02 at 10:08 +0100, Nikos Mavrogiannopoulos wrote: > >> Linking was done fine, so it should be ok. However, I noticed is that > >> ANDROID_KEYSTORE isn't defined. If I do though, it cannot find > >> keystore.h (it is not part of ndk). Where do you get this header from? > > > > Hm, libxml isn't in the NDK *either*. I took a quick look at making it > > build with the NDK, and I'm not entirely sure it's feasible at all > > unless we want to do a local build of libxml too? > > > > Then again, I've often said I want to ditch libxml and move to something > > simpler. In searching for information about using libxml under the NDK, > > I've seen libroxml recommended: http://code.google.com/p/libroxml/ > > > > > I don't know what requirements you have of xml, but I personally like > small parsers that fit in a single file like the one in miniupnpc > (minixml.[ch]). The drawback is that you need to cope with any issues in > that code. We build and parse fairly simple documents. [dwmw2 at shinybook .libs]$ nm -a libopenconnect.so.2.1.0 | grep LIBXML U xmlAddChild@@LIBXML2_2.4.30 U xmlCopyNode@@LIBXML2_2.4.30 U xmlDocDumpMemoryEnc@@LIBXML2_2.4.30 U xmlDocGetRootElement@@LIBXML2_2.4.30 U xmlDocSetRootElement@@LIBXML2_2.4.30 U xmlFreeDoc@@LIBXML2_2.4.30 U xmlFree@@LIBXML2_2.4.30 U xmlFreeNode@@LIBXML2_2.4.30 U xmlGetProp@@LIBXML2_2.4.30 U xmlNewChild@@LIBXML2_2.4.30 U xmlNewDoc@@LIBXML2_2.4.30 U xmlNewNode@@LIBXML2_2.4.30 U xmlNewProp@@LIBXML2_2.4.30 U xmlNewTextChild@@LIBXML2_2.4.30 U xmlNodeGetContent@@LIBXML2_2.4.30 U xmlReadMemory@@LIBXML2_2.6.0 > btw. I didn't have much issues compiling libxml2 for android, but it > occupied quite some space (1.5 out of 3.2) if we include its dependency > on libiconv. I believe we can do without that. It's optional, isn't it? Just edit include/libxml/xmlversion.h and disable it. So... building openconnect in a full AOSP build tree, as Jason and I had been doing, is probably not the best way to do it. What *should* we do? Should we provide a script which downloads the libxml/gnutls/etc tarballs and configures+builds them using the NDK, and then builds openconnect against them? Or even just expect them to be extracted in the local directory, and add their C files directly to the openconnect Android.mk (which perhaps should be called Application.mk? ) Or should we just declare that the way to build for Android is with Cerbero? Or something else? It'd be good if someone relatively clueless could manage to build it for Android out of the box without having to jump through *too* many hoops... -- dwmw2 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 6171 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/openconnect-devel/attachments/20130302/2b9fd655/attachment.bin>