Commit Graph

19 Commits

Author SHA1 Message Date
Thomas Pöchtrager
5afdf2b471 Wrapper changes:
* 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
2015-08-22 23:15:27 +02:00
Thomas Pöchtrager
03e904d5f1 fix relocation issues 2015-08-21 23:32:37 +02:00
Thomas Pöchtrager
29a5fee522 * add windows support via cygwin
* add openbsd and dragonfly support
* replace `` with $() in bash scripts
* misc other changes
2015-07-19 22:28:10 +02:00
Thomas Pöchtrager
56eba88a9b only create x86_64h symlinks when the 10.8 (or later) SDK is used #2
forgot to test it with 'rm -rf target'...
2015-06-27 20:40:13 +02:00
Thomas Pöchtrager
da2b8f25f5 xcrun:
* 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
2015-06-27 19:01:56 +02:00
Thomas Pöchtrager
3e46f6cc32 add 'osxcross-man' - man page tool 2015-06-21 14:07:19 +02:00
Thomas Pöchtrager
02e1cb2a9e add a minimalistic implementation of xcrun 2015-06-21 11:46:01 +02:00
Thomas Pöchtrager
9033b6b847 wrapper:
* 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
2015-05-02 21:49:23 +02:00
Thomas Pöchtrager
28436035a5 clean up the symlinking code a little bit 2014-09-28 20:46:38 +02:00
Thomas Pöchtrager
7db4705be9 also create a pkg-config symlink for x86_64h 2014-09-27 20:24:37 +02:00
Thomas Pöchtrager
a8fdaa3ab2 add pkg-config wrapper 2014-09-27 19:45:49 +02:00
Thomas Pöchtrager
a34ce76854 misc fixes 2014-09-27 10:07:15 +02:00
Thomas Pöchtrager
413c33a5e9 split the wrapper into multiple files + some generic wrapper cleanups 2014-09-13 15:32:42 +02:00
Thomas Pöchtrager
f1c5d5368d add a workaround for a glibc 2.20 bug 2014-09-11 00:58:44 +02:00
Thomas Pöchtrager
ef6bfe6952 fix finding intrinsic headers on freebsd
fix an unwind issue with gcc + OS X <= 10.5
2014-05-08 23:07:42 +02:00
Thomas Pöchtrager
9b642c3931 fix OSX_VERSION_MIN=default
take care of MACOSX_DEPLOYMENT_TARGET
fix a minor issue where '-oc-use-gcc-libs' would be ignored
2014-04-22 19:34:08 +02:00
Thomas Pöchtrager
e34da881ff misc wrapper changes:
- Machine -> Arch
- 'osxcross-conf': add missing OSXCROSS_VERSION
- error out on invald '-stdlib=' value
- add 'osxcross' util which can be used to check
  for an OSXCross installation
- fix 'libLTO.so: cannot open shared object file'
- listFiles(): windows implementation
- cleanup

get_dependencies.sh:
- debian: add --force-yes

add a patch to support some older linux dists
(such as debian squeeze)
2014-04-17 20:51:16 +02:00
Thomas Pöchtrager
1e8ede1d78 support OS X itself too 2014-04-14 21:59:03 +02:00
Thomas Pöchtrager
f8e57bfcd3 new compiler wrapper written in C++
to highlight some changes:

- this gets rid of the bash dependency (after installing)
- osxcross-env, osxcross-conf and (the fake) dsymutil are now implemented
  in the wrapper
- added: 'sw_vers' tool, which is required by some projects (llvm, ...)
- added '-oc-use-gcc-libs' option (uses './build_gcc.sh' libstdc++)

This new wrapper is also more restrict and several times faster than the bash
implementation (~0.2ms vs. 10ms+).
2014-04-06 22:27:59 +02:00