2015-06-16 9:28 GMT+02:00 Vladimir Prus
compiling some source, or running some tools, then it can be done.
AFAIK it is very hard or nearly impossible for code to detect for which ABI and/or binary format it is compiled for. ABI/binary format are set/specified by flags in the compiler command line. The address model can be detected over pointer size - but ABI ...?!
However, unless I am mistaken, all ARM variants use <abi>aapcs - so maybe it does not need to be detected at all, and can be removed from conditions?
For ARM this is true but not for the other architectures (MIPS for instance has 4 different ABIs). boost.context determines the default values for ABI/binary-format on the values returned by 'os.name' and 'os.platform'. I don't know another way for reliable ABI/binary-format detection in boost.build.