Commit Graph

113 Commits

Author SHA1 Message Date
Thomas Pöchtrager
6a35a0bf84 update cctools to 870 and ld64 to 242
OSXCross *should* now work on Linux ARM devices with this update.

Port changes:

* commit f7818cbf61074ea6fbb56de1b50c0973afe3428f
| Author: Thomas Pöchtrager
| Date:   Fri Jul 17 19:34:57 2015 +0200
|
|    add preliminary llvm-3.8 support
|
* commit 8482a95745f54062de974e65fdd28b0389f3c6a5
| Author: Thomas Pöchtrager
| Date:   Sat Jul 11 09:32:55 2015 +0200
|
|     * get rid of the openssl dependency
|     * make libuuid optional (based on http://git.io/vqbwu)
|
* commit a8e002367d64c5e3e3a195bba37aa1ccb306f897
| Author: Thomas Pöchtrager
| Date:   Sat Jul 11 08:45:49 2015 +0200
|
|     * undo unnecessary changes done by the original porter
|     * add cctools-port comments to changed code
|     * add codelite project
|
* commit 2b050dc41d1ae375a5af36b751d479be4513a6f3
| Author: Thomas Pöchtrager
| Date:   Tue Jun 23 19:31:00 2015 +0200
|
|     ios-toolchain: remove 'CC=cc' - just causes troubles
|
* commit f7f7c6180e5b7ae2897e3617e3475811c88a5173
| Author: Thomas Pöchtrager
| Date:   Sat May 30 15:51:27 2015 +0200
|
|     silence gcc 5.1 warnings
|
* commit 359b40b5bd40d86e0d1c9d40fb7bb2297130e903
| Author: Thomas Pöchtrager
| Date:   Sun Apr 19 21:33:15 2015 +0200
|
|     use KERN_PROC_ARGV instead of KERN_PROC_ENV
|
* commit 7a9b23fbb24c7250cb4caae2d97b79afbdefe503
| Author: Thomas Pöchtrager
| Date:   Sun Apr 19 20:35:01 2015 +0200
|
|     _NSGetExecutablePath() should now work properly on openbsd
|
* commit 47c29e6a7701a16268da57412a68e133818a32dd
| Author: Thomas Pöchtrager
| Date:   Sat Apr 11 18:34:58 2015 +0200
|
|     clang 3.6 miscompiles ld64 on armhf (even at -O0); enforce gcc on arm until
|     i can figure out what's going on there
|
|     probably related:
|     https://github.com/raspberrypi/linux/issues/766
|     https://github.com/tpoechtrager/cctools-port/issues/1#issuecomment-59118615
|
|     backtrace:
|
|     https://gist.github.com/tpoechtrager/d68c8352a3fd32165af4
|
* commit 5e5b511a3eebd3fa9ece49bead85a1be29a25dfb
| Author: Thomas Pöchtrager
| Date:   Thu Mar 19 21:28:44 2015 +0100
|
|     fix more potential -D_FORTIFY_SOURCE crashers
|
* commit 5098fc9f6dfba7eac18f5ae55b7e361314e0fb7b
| Author: Thomas Pöchtrager
| Date:   Thu Mar 19 21:14:13 2015 +0100
|
|     strip: don't crash with -D_FORTIFY_SOURCE enabled (ubuntu gcc)
|
* commit 268c3de73b173673dc9ae932ab802f42247570ff
| Author: Thomas Pöchtrager
| Date:   Wed Mar 18 21:29:21 2015 +0100
|
|     add arm to the tested host architectures
|
* commit ade8d819ad8fd2d04978a2da22e5efe06dc40dad
| Author: Thomas Pöchtrager
| Date:   Wed Mar 18 21:29:06 2015 +0100
|
|     ios-toolchain: set COMPILER_PATH
|
* commit 700c6fd644f78b9427163e9f444fc15f2c73ed28
| Author: Thomas Pöchtrager
| Date:   Wed Mar 18 20:28:27 2015 +0100
|
|     configure.ac: target_cpu -> host_cpu
|
* commit bf9ac6a2c5846af3c2112c483a612937d8e3a037
| Author: Thomas Pöchtrager <tpoechtrager@users.noreply.github.com>
| Date:   Sun Mar 15 22:43:36 2015 +0100
|
|     update README
|
* commit 253ec0ff238ebc3b359d7f4fe2edc38b0aa3e428
| Author: Thomas Pöchtrager
| Date:   Sun Mar 15 22:26:45 2015 +0100
|
|     typo
|
* commit 42109667d4b080bbc8091235c036ed418d369d13
| Author: Thomas Pöchtrager
| Date:   Sun Mar 15 22:21:16 2015 +0100
|
|     * linux ppc/ppc64 & arm/arm64/aarch64 port
|       (compiles now - everything else is *untested*)
|
|     other changes:
|
|     * rename 'machochecker' to 'machocheck'
|     * get rid of duplicate $CFLAGS
|     * fix a typo in the ios toolchain README
|     * package.sh: remove the autom4te.cache directory
|
* commit 0c32be78e979641095a92480786a621e65282b92
| Author: Thomas Pöchtrager
| Date:   Mon Mar 9 20:01:33 2015 +0100
|
|     misc fixes:
|     * fix gcc warnings (even though they are not my fault)
|     * fix a typo in include/foreign/i386/_types.h (__INT64_TYPE_ -> __INT64_TYPE__)
|     * fix the cygwin + clang<=3.4 build
|
* commit 3f00c16b0fce9a7a151a88114209f17a46711637
| Author: Thomas Pöchtrager
| Date:   Sun Mar 8 20:49:50 2015 +0100
|
|     be more precise about the gcc requirement
|
* commit 1b9a93057b856c92190f3f8d32e507539f4669cd
| Author: Thomas Pöchtrager
| Date:   Sun Mar 8 20:09:11 2015 +0100
|
|     update README
|
* commit 3cc1ba6fc7c862de258e7a29c840ea7d5eb04be1
| Author: Thomas Pöchtrager
| Date:   Sun Mar 8 17:47:09 2015 +0100
|
|     * windows (cygwin), openbsd and dragonflybsd port
|     * gcc compiler support
|     * add --with-llvm-config option
|     * fix 'ld: malformed 32-bit x.y.z version number: 3.19.0-7-generic'
|
* commit 7a2d21ca7f4e42c70c8ff85ec3e37ac6ef9d0de7
| Author: Thomas Pöchtrager
| Date:   Tue Feb 24 21:58:10 2015 +0100
|
|     map -> version-script
|
* commit 5135fb2541876f0af185589890f9e21b98ceb39c
| Author: Thomas Pöchtrager
| Date:   Tue Feb 24 21:49:55 2015 +0100
|
|     an attempt to fix the otool disassembler
|
* commit 219f5f53ea42361ccb2c75bed311f1d57ce68966
| Author: Thomas Pöchtrager
| Date:   Mon Feb 23 21:32:47 2015 +0100
|
|     ar, lipo, otool (etc.) should also be linked with -rpath for libLTO
|
* commit 1efff3733f1cb483b27e18d6d14cd7ccf5571627
| Author: Thomas Pöchtrager
| Date:   Mon Feb 23 21:32:11 2015 +0100
|
|     add support for llvm 3.7
|
* commit 8b6beadd337ac7e5d1d58d438e9afcd5165d1200
| Author: Thomas Pöchtrager
| Date:   Mon Feb 23 21:31:34 2015 +0100
|
|     silence/fix -Wabsolute-value warnings
|
* commit 59d21d2c793c51d205c8b4ab14b9b28e63c72445 (tag: 862-ld64-241.9-2)
| Author: Thomas Pöchtrager
| Date:   Sun Dec 28 18:09:43 2014 +0100
|
|     ios-toolchain: build.sh: ignore 'git clean' return status
|
* commit 3d198530ae4c031e904f29414c7c46ac547d90b7
| Author: Thomas Pöchtrager
| Date:   Sun Dec 28 17:48:45 2014 +0100
|
|     ios-toolchain: take care of IPHONEOS_DEPLOYMENT_TARGET (env)
|
* commit 23658f2f20778374b43dcd80717b4f47845c2297
| Author: Thomas Pöchtrager
| Date:   Sun Dec 28 17:48:28 2014 +0100
|
|     the ios 8.1 sdk has mach_vm_trunc_page and mach_vm_round_page already defined
|
* commit 70b87ceec059f632641b41dfd2d9e63dbd069a0c
| Author: Thomas Pöchtrager
| Date:   Sat Dec 27 12:33:50 2014 +0100
|
|     ios-toolchain: cleanup
|
* commit 9c0f520110f7f57a1060ac66329c55f8f71ecd8c
| Author: Thomas Pöchtrager
| Date:   Sat Dec 27 12:25:26 2014 +0100
|
|     ios-toolchain: use -mlinker-version=241.9 in the 241.9 branch
|
* commit 8b0cbdaf820ee40fcb1e2e209cb6f858ffb8aa90
| Author: Thomas Pöchtrager
| Date:   Sat Dec 27 12:00:19 2014 +0100
|
|     strchr -> strrchr
|
* commit e9f701822aa209cf435c4b26eb4c7ab01001f5cb
| Author: Thomas Pöchtrager
| Date:   Sat Dec 27 11:47:02 2014 +0100
|
|     add scripts / wrapper to build a simple ios toolchain
|
* commit cf456225d3551a8782c5222133455bb9139ecad5
| Author: Thomas Pöchtrager
| Date:   Fri Dec 26 10:55:34 2014 +0100
|
|     define _GNU_SOURCE for strnlen()
|
* commit 211fe3927f5d6c132d72164e898d146fcdf7577e
| Author: sezero <sezero@users.noreply.github.com>
| Date:   Wed Dec 24 12:20:01 2014 +0200
|
|     autogen.sh fixes: run libtoolize 'after' creating the m4 directory. run aclocal with '-I m4' switches.
|
* commit a4f9fd8ad09cafb94bf465ae4e914f086458e5cc
| Author: Thomas Pöchtrager <tpoechtrager@users.noreply.github.com>
| Date:   Wed Dec 24 11:35:37 2014 +0100
|
|     Update README.md
|
* commit 2201b7b4cbc3a3b29aa7d8e7ccf2576f1847a3e6
| Author: Thomas Pöchtrager
| Date:   Fri Nov 21 22:58:16 2014 +0100
|
|     add '-L/usr/pkg/lib' for NetBSD
|
* commit a303cc27ace751059caa27a34e5d9ae5cd0825ac
| Author: Thomas Pöchtrager
| Date:   Fri Nov 21 22:10:18 2014 +0100
|
|     update README
|
2015-07-17 23:25:59 +02:00
Thomas Pöchtrager
d6f4510aec fix for #39 2015-07-05 21:04:15 +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
f5bec454d3 build.sh: take care of symlinked sdks 2015-06-21 20:14:51 +02:00
Thomas Pöchtrager
a78504934d build.sh: add missing 'else' 2015-06-21 19:44:49 +02:00
Thomas Pöchtrager
c1e2c3a6d6 build.sh: ignore directories in tarballs/ (#37)
build.sh, tools.sh: add UNATTENDED option (#37)
xcrun.cpp: make local functions static
2015-06-21 19:35:09 +02:00
Thomas Pöchtrager
bae6ac72cd add darling-dmg packaging method (#33) 2015-05-30 21:01:48 +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
69d275877b an attempt to fix the otool disassembler 2015-02-24 22:16:29 +01:00
Thomas Pöchtrager
133a61d75a osxcross-env is also no longer needed 2015-02-24 21:19:27 +01:00
Thomas Pöchtrager
86b2ab7052 osxcross-env: remove obsolete LD_LIBRARY_PATH 2015-02-23 21:19:34 +01:00
Thomas Pöchtrager
49bc9aa407 ar, lipo, otool (etc.) should also be linked with -rpath for libLTO 2015-02-23 21:15:19 +01:00
Thomas Pöchtrager
736d20921d silence/fix -Wabsolute-value warnings 2015-02-23 21:07:29 +01:00
Thomas Pöchtrager
9264fa6ead work around a recent clang change 2015-02-17 19:51:17 +01:00
Thomas Pöchtrager
873ba3df94 misc freebsd fixes:
add tgmath.h intrinsic header file (required for the 10.10 sdk)
osxcross-macports: pass --ca-certificate=[...]/ca-root-nss.crt to wget
2015-02-08 09:18:49 +01:00
Thomas Pöchtrager
d6e191f24c make cctools / ld64 work properly with glibc < 2.10
https://github.com/tpoechtrager/cctools-port/pull/8
2014-12-26 11:26:43 +01:00
Thomas Pöchtrager
5a217484ec add osxcross-macports - a minimalistic macports packet manager for 16.000+ binary packages 2014-12-24 10:52:24 +01:00
Thomas Pöchtrager
e5d9db7ed0 update cctools to 862 and ld64 to 241.9
port changes:
- misc fixes
- add '-L/usr/pkg/lib' for NetBSD
- update libobjc2 to r37977
- silence / fix libobjc2 warnings
- remove freebsd ifdef in favor of '-isystem /usr/local'
- add installhdrs target (cctools-port/issues/2)
- prefer glibtoolize over libtoolize
- add support for OS X and iOS as host system (cctools-port/issues/1)
- add a workaround for a glibc 2.20 bug
- link with -rpath to ease finding libLTO
- check for __cxa_demangle in -lstdc++
- use std=c++0x instead of -std=gnu++0x
- fix ld64 to compile with libstdc++
- fix automake warnings
- ld64: enable all architectures

This also gets rid of the automake dependency.
2014-11-21 23:06:01 +01:00
Thomas Pöchtrager
0d9ba01d5b add support for the 10.10 SDK (DP1)
get rid of bc dependency
2014-09-13 15:32:42 +02:00
Thomas Pöchtrager
270f6d73f6 add support for new x86_64h architecture (haswell)
add support for multiple -arch flags with gcc (and clang + -oc-use-gcc-libs)
fix an unwind issue with -oc-use-gcc-libs + -mmacosx-version-min <= 10.5
update changelog
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
6c06a15b42 cctools: don't overwrite LD_LIBRARY_PATH 2014-07-05 11:39:36 +02:00
Thomas Pöchtrager
dce760ab01 cctools: check for __cxa_demangle in -lstdc++ 2014-06-20 11:14:06 +02:00
TheAssassin
dc75a88689 Accepting symlinked tarballs in build.sh
This does not require copying or moving the SDK file in there, and the SDK can not be deleted by accident.
2014-05-15 23:55:10 +02:00
Thomas Pöchtrager
523f4cd77c fix compiling ld64 with libc++ 2014-05-10 17:30:13 +02:00
Thomas Pöchtrager
c57030bc98 use -std=c++0x instead of -std=gnu++0x
as -std=gnu++0x seems to break compiling ld64 on some systems
2014-05-10 17:05:58 +02:00
Thomas Pöchtrager
4a685dbe73 cctools 855 + ld64 236.3
also add 'cctools 855 + ld64 134.9' as fallback for systems without
an up-to-date C++ standard library
2014-05-10 16:17:16 +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
f969ed09db fix 'csh' detection 2014-04-06 22:51:39 +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
Thomas Pöchtrager
c0b2cf103d use two space indents 2014-04-06 15:58:15 +02:00
Thomas Pöchtrager
84377413a5 fix guess_sdk_version() (https://github.com/tpoechtrager/osxcross/issues/10) 2014-04-03 10:03:32 +02:00
Thomas Pöchtrager
6c79d88501 add SDK packaging script
libc++ works now out of the box as long 'tools/gen_sdk_package.sh'
is used to create the SDK package
2014-03-28 21:04:32 +01:00
Thomas Pöchtrager
a829f523b8 support NetBSD (https://github.com/tpoechtrager/osxcross/issues/7)
bump version (0.5 -> 0.6)
update CHANGELOG
misc adjustments
2014-03-26 20:39:20 +01:00
Don Bright
792b6aa470 display sdk version 2014-03-26 20:38:46 +01:00
Don Bright
5f159c93a0 make tar call more portable for netbsd (dont use J) 2014-03-26 20:38:46 +01:00
Don Bright
95a5b77f7e fix for netbsd sh 2014-03-26 20:38:46 +01:00
Don Bright
35961a4929 better detection of 10.4 2014-03-26 20:38:46 +01:00
Don Bright
2e97a17b95 update for SuSE, better detection of multiple tarballs 2014-03-26 20:38:46 +01:00
Don Bright
d6430c5332 typo in script 2014-03-26 20:36:11 +01:00
Don Bright
c697511015 automatically find the SDK version, allow SDK_VERSION env var, deal w ubuntu bug 2014-03-26 20:34:46 +01:00
Thomas Pöchtrager
995ad1d4ab fix building GCC on FreeBSD
add missing float.h intrinsic header (FreeBSD)
2014-03-26 20:32:56 +01:00
Thomas Pöchtrager
78d78d4276 Revert "~/.bashrc -> ~/.profile"
This reverts commit 7f6fcf3b085c8cf88cba5a606aaeaa18848ceb0d.
2014-03-26 20:32:56 +01:00
Thomas Pöchtrager
77b27e099f ~/.bashrc -> ~/.profile 2014-03-26 20:32:56 +01:00
Thomas Pöchtrager
3a7c2e6635 build bc on systems where it is not (pre-)installed 2014-03-26 20:32:56 +01:00
Thomas Pöchtrager
1077cf95fd switch to libc++ 3.4 (works fine with clang < 3.4)
get OSX_VERSION_MIN >= 10.9 working (defaults to libc++)
simplify the wrapper scripts a bit
2014-03-26 20:32:56 +01:00
Thomas Pöchtrager
99a8ee449f add a no-op dsymutil shell script to bypass dsymutil invocation errors in a more simple way (fixes https://github.com/tpoechtrager/osxcross/issues/1)
remove the gcc dsymutil patch (no longer needed)
2014-03-26 20:32:55 +01:00
Thomas Pöchtrager
2c38fb673e move duplicate code into a single file
add debug option (OCDEBUG=1 ./<script>)
update README
2014-03-26 20:32:55 +01:00
Thomas Pöchtrager
89d48e1a45 fix LIB_PATH issue 2014-03-26 20:32:55 +01:00
Thomas Pöchtrager
2a4842f3cc add libc++ build script
update README with libc++ build instructions and samples
fix mavericks SDK download link (pointed to 10.8)
build xar only for <=10.5
add -g0 to the clang invocation command to avoid dsymutil from being run (debugging is not supported, but I guess you don't want to debug the resulting binaries anyway if you build them on a non OS X system)
attempt to make the toolchain less path dependent (gcc still breaks though, because of hardcoded paths), but clang and cctools can be moved now
update cctools to 845
add DISABLE_LTO_SUPPORT option (DISABLE_LTO_SUPPORT=1 ./build.sh) to disable linking against libLTO.so
add support for 32 bit systems
add FreeBSD support
update PACKAGE script
2014-03-26 20:32:55 +01:00
Thomas Pöchtrager
65944f3394 help clang to find its own intrinsic headers (this issue appears to be fixed in clang 3.4+)
bump version to 0.5
2014-03-26 20:32:31 +01:00
Thomas Pöchtrager
d957737e0f really show an error message in case the SDK is not found 2014-03-26 20:32:31 +01:00
Thomas Pöchtrager
2c0cb38fbe more portable way to find the llvm lto.h header
should now support llvm 3.2-3.5
2014-03-26 20:32:30 +01:00
Thomas Pöchtrager
962e6acdfc small build script fixes 2014-03-26 20:32:30 +01:00
Thomas Pöchtrager
cbaa387542 small cleanup 2014-03-26 20:32:30 +01:00
Thomas Pöchtrager
d502ab0138 use a nifty preprocessor trick to workaround the __block issue in unistd.h
get rid of the  || exit 1  in build.sh by using  set -e
2014-03-26 20:29:50 +01:00
Thomas Pöchtrager
9c5a089a7f fix cctools path in osxcross-conf 2014-03-26 20:29:50 +01:00
Thomas Pöchtrager
55ae02b117 support building a gcc as well
rename the project to osxcross
bump version to 0.4
2014-03-26 20:29:50 +01:00
Thomas Pöchtrager
3e81644303 remove outdated note 2014-03-26 20:29:50 +01:00
Thomas Pöchtrager
2e957af35c initial commit 2014-03-26 20:28:13 +01:00