Commit Graph

53 Commits

Author SHA1 Message Date
Thomas Pöchtrager
0d26a10ad8 osxcross-macports: Add --i386 option (#62) 2016-01-11 20:38:17 +01:00
Thomas Pöchtrager
8bb70733d2 osxcross-macports: Let the user choose between 4 mirrors 2016-01-11 20:37:30 +01:00
Thomas Pöchtrager
a4e9a2aea8 Update cctools to 877.5 and ld64 to 253.3
This finally adds support for Xcode 7 / El Capitan.

With this commit I am also removing ld64-134.9 support.
I kept ld64-134.9 for users with an old C++ standard library.
A decent C++ standard library with C++11 support is now mandatory.
2015-10-24 17:50:27 +02:00
Thomas Pöchtrager
4ea0c29d0c Fix for #47 2015-09-19 23:04:53 +02:00
Thomas Pöchtrager
54e13441a9 gen_sdk_package_p7zip.sh: Add support for Xcode betas 2015-09-19 23:00:06 +02:00
Thomas Pöchtrager
08414886fb Add llvm-dsymutil build script + re-add 7e9f85
This finally makes proper debugging possible
2015-08-31 21:02:38 +02:00
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
1c6e42e2f2 cleanup 2015-07-20 21:13:36 +02:00
Thomas Pöchtrager
39b6994d97 minor fixes 2015-07-19 23:19:31 +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
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
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
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
226435ef4e (really) fix p7zip 'share' directory permissions 2015-06-21 14:24:57 +02:00
Thomas Pöchtrager
3e46f6cc32 add 'osxcross-man' - man page tool 2015-06-21 14:07:19 +02:00
Thomas Pöchtrager
4450f62e1a add p7zip sdk packaging method (closes #33) 2015-06-21 14:01:49 +02:00
Thomas Pöchtrager
bae6ac72cd add darling-dmg packaging method (#33) 2015-05-30 21:01:48 +02: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
ba16479659 osxcross-macports: improve resolving package dependencies 2014-12-26 11:17:38 +01:00
Thomas Pöchtrager
07f8c01f91 fix 'osxcross-macports upgrade' 2014-12-24 14:06:30 +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
e7407e84ab fix for https://github.com/tpoechtrager/osxcross/issues/25 2014-11-25 21:19:13 +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
746a6a42dd build_clang.sh should not depend on a finished build.sh run 2014-11-11 22:54:03 +01:00
Thomas Pöchtrager
e8443ae7d3 add a clang build script 2014-11-10 20:43:14 +01:00
Steeve Morin
bc0a42a045 First Xcode detection when it's already installed
`XCODEDIR` isn't properly detected when using installed Xcode
2014-11-04 02:48:53 +01:00
Thomas Pöchtrager
e7b643d9bd adjustments to allow extracting the sdk on linux (xcode 4.2 only) 2014-09-27 14:35:42 +02: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
867345ed8f use gcc to compile gcc (there was a weird '-mmacosx-version-min=' issue during gcc compilation with earlier versions) 2014-07-17 22:43:29 +02:00
TheAssassin
f8b828176d Fixing Debian dependencies.
Adding standard Linux command line tools:
 - bzip2
 - gzip
 - xz-utils
 - sed
 - cpio
The tools are usually already installed, though they are usually not installed in e.g. a debootstrapped environment or a minimal installation by default.
2014-05-15 21:23:45 +02:00
TheAssassin
61b5788652 Fixing dependency installation command for Debian based systems.
- Combining installation of requirements.
 - Fixing name of 'llvm-dev'.
 - Removing unnecessary dependency 'build-essential'.
2014-05-12 20:12:37 +02:00
TheAssassin
46231a35cf Fixing shebang on dependency installation script.
The script assumes bash isn't installed which means it shouldn't be run with it.
2014-05-12 20:12:14 +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
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
Thomas Pöchtrager
c0b2cf103d use two space indents 2014-04-06 15:58:15 +02:00
Thomas Pöchtrager
22262b617f fix debian deps 2014-04-03 09:41:29 +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
cac11aae40 mageia dependencies list 2014-03-26 20:38:46 +01:00
Don Bright
b49fa5f337 mageia dependencies 2014-03-26 20:38:46 +01:00
Don Bright
752c8a4ab5 netbsd dependencies 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
457ea8b240 fedora needs libstdc++-static 2014-03-26 20:37:36 +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
Don Bright
4829d49f39 freebsd auto-get dependencies 2014-03-26 20:34:46 +01:00
Don Bright
60d74c1a40 freebsd autoget dependencies 2014-03-26 20:34:45 +01:00