This just required to move some code around.
The appropriate error message was already there.
Before:
osxcross: error: targeted OS X version must be <= 10.6.0 (SDK)
After:
osxcross: error: libc++ requires Mac OS X SDK 10.7 (or later)
* Support for generating fat object files with gcc and '-foc-use-gcc-libstdc++'
has been removed.
This feature was not 100% correctly implemented; using multiple source files
did not work, i.e.: 'o32-g++ -m32 -m64 a.cpp b.cpp' would have failed;
And I refuse to implement that, instead I am removing all source file handling
from the wrapper with this commit for simplicity.
This feature should be implemented in the gcc driver instead.
This does NOT affect clang's fat object file support, which is implemented in
clang's darwin driver.
* '-oc-use-gcc-lib' has been renamed to '-foc-use-gcc-libstdc++'.
* Added support for '-stdc++' and '-gstdc++' compiler "shortcuts"
o32-clang++ --> uses libstdc++ for <= 10.8 and libc++ for >= 10.9
o32-clang++-libc++ --> uses the SDK's libc++
o32-clang++-stdc++ --> uses the SDK's libstdc++
o32-clang++-gstdc++ --> uses gcc's (build_gcc.sh) libstdc++
* Entirely rewrote the command line parser; the previous one wasn't very
readable.
* Minor Readme Updates
* Added unit tests
* Removed OSXCROSS_C_STANDARD / OSXCROSS_CXX_STANDARD support
I am no longer parsing -std=, so this feature has to be dropped.
Setting the language standard via an env variable isn't a good idea anyway.
* Removed unneeded stuff
Other Changes:
* Version bump to 0.11
* handle '-sdk' / 'SDKROOT' (env.) properly.
e.g. 'xcrun -sdk /[...]/MacOSX10.6.sdk clang' will use
the specified 10.6 SDK.
* never execute xcode tools outside target/bin even when
a full path is specified.
e.g. 'xcrun /usr/bin/gcc' will execute target/bin/<triple>-gcc.
other wrapper changes:
* implement 'OSXCROSS_SDKROOT' env. variable for 'xcrun -sdk'.
* error on '-arch x86_64h' + clang <= 3.4.
clang <= 3.4 misinterprets x86_64h as x86_64.
* only create x86_64h symlinks when the 10.8 (or later) SDK
is used.
other changes:
* misc fixes and cleanup
* improve and colorize warning/error/debug/info messages
* add include path warnings for /usr/include and /usr/local/include
other changes:
* bump version to 0.10