My goals are to write cross platform C++ code and utilize bunches of FOSS stuff to stand on the shoulders of giants/not reinvent the wheel.
I want to be able to run my native code on my host platform for unit tests etc. I'm living with r13b and clang/stdc++ shared/c++11.
Stuff I want to use for C++ development, and how they relate to CMake/standalone toolchains etc.
Boost: supported bjam works with standalone tool chain, dead cmake project (last commit 2+ years old), I think the experimental cdep supports it
http://www.boost.org/aws-sdk-cpp: uses cmake 3.7 to build a standalone tool chain. Not very good about taking externally provided tool chain, can't find it in the cdep support list
Note this magically gets me curl/openssl and zlib (not required for android, but nice for host builds) built as well....
https://github.com/aws/aws-sdk-cpp https://www.openssl.org/ https://curl.haxx.se/libcurl/ https://www.zlib.net/ avro c++: cmake 3.7 auto detect and standalone tool chain work (host based test suite needs conditionals to skip on cross compile), no mention of cdep support
https://avro.apache.org/http://luajit.org/: cmake 3.7 auto detect and standalone tool chain work, no mention of cdep support
botan: has it's own python configure set, standalone tool chain seems to be the way to go
https://github.com/randombit/botanMy concerns are that I'm on a schedule, and will be, so things that involve re-writing working build systems, and updating them to track updated releases, have lots of strong marks against. If it were all my code, and there were some reasonable promise that it would continue to work for 12+ months, I'd gladly use the supported built-in options. Right now the standalone tool chains give me some level of confidence that the same level of C++ support, API level, and stdc++ library get used for everything I'm pulling together (my current hack is a shell script to do aws-sdk-cpp first, and pass the tool chain to cmake for avro & lucjit, and play with boost/bjam and botan's choice of build systems; this gives me libraries, and standalone test programs that build on OSX/ubuntu in a docker image for the host and armeabi).
When I see "use ours, since 3.7's support actually broke our toolchain file" I have the similar frowny emoticon. Why is there a "theirs and ours"? Is there some split between or policy restriction between the cmake development team and Google NDK support that forces the replication of effort (and could it go away)?
Any elaboration on insights or warnings into what to do next if I want to do C++ development for android going forward with a bunch of external project dependencies?