Commit graph

21 commits

Author SHA1 Message Date
aszlig
625d7b9043
Merge pull request #1928 from 'cross-win-osx'.
This includes a lot of fixes for cross-building to Windows and Mac OS X
and could possibly fix things even for non-cross-builds, like for
example OpenSSL on Windows.

The main reason for merging this in 14.04 already is that we already
have runInWindowsVM in master and it doesn't work until we actually
cross-build Cygwin's setup binary as the upstream version is a fast
moving target which gets _overwritten_ on every new release.

Conflicts:
	pkgs/top-level/all-packages.nix
2014-04-21 10:00:35 +02:00
Shea Levy
88e531d8dc Fix gcc bug 58800.
See #2330 for details, except I needed to remove the Changelog change from the patch
2014-04-20 09:46:21 -04:00
Shea Levy
2364bd807d Revert "Merge branch 'gcc-fix' of git://github.com/ambrop72/nixpkgs"
The patch doesn't apply

This reverts commit 094eea8f6a, reversing
changes made to 552d66cd9e.
2014-04-20 09:36:15 -04:00
ambrop7@gmail.com
7eeb94e8dc Add patch for GCC bug 58800. 2014-04-20 12:40:32 +02:00
aszlig
23b43c6a9b
gcc-4.8: Use --with-as/ld for MinGW-w64 as well.
On MinGW, we're passing these programs to the configure script, but this
obviously won't work for non-autoconf-based projects.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-03-12 10:55:51 +01:00
aszlig
c7bac81c66
Merge 'mingw-w64' and 'darwin' into cross-win-osx.
Both branches have quite a lot in common, so it's time for a merge and
do the cleanups with respect to both implementations and also generalize
both implementations as much as possible.

This also closes #1876.

Conflicts:
	pkgs/development/interpreters/lua-5/5.2.nix
	pkgs/development/libraries/SDL/default.nix
	pkgs/development/libraries/glew/default.nix
	pkgs/top-level/all-packages.nix
2014-03-12 10:16:51 +01:00
aszlig
a9ef42f33c
gcc-4.8: Add ObjC and ObjC++ support for Darwin.
Cross-compiling stuff against Mac OS X's CoreFoundation won't work
without ObjC support, and we don't want to compile commandline utilities
only, right?

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-03-12 10:00:45 +01:00
aszlig
9a0a85827c
gcc-4.8: Hook in cross-darwin libc and binutils.
Let's finally hook everything into the existing cross-building
infrastructure. We're using --with-sysroot instead of --with-headers
here, because the XCode SDK contains references to /usr/lib.

I've tried to patch those references, but unfortunately (at least with
install_name_tool) it isn't possible to change those refernces in stub
dylibs.

So after bugging @tpoechtrager with annoying questions (thanks again), I
think my initial approach (patching the SDK itself and/or regenerating
the dylib stubs) was way to complicated so I ended up with this
implementation.

Also, I've added a condition to binutilsCross to use cctools if the libc
is set to libSystem. This might need some cleanups someday, mainly to
figure out how to properly bridge cctools and binutils.

So, as an example on how to cross-compile GNU Hello to Darwin, you can
use something like this:

(import <nixpkgs> {
  crossSystem = {
    config = "x86_64-apple-darwin13";
    arch = "x86_64";
    libc = "libSystem";
    platform = {};
  };
}).hello.crossDrv

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-03-12 10:00:44 +01:00
aszlig
e64b342fa8
Use mingw-w64 for 32bit Windows builds as well.
Mingw(32) is rather poorly maintaned and has quite a lot of bugs. And
because our Windows cross builds were also poorly maintained and most of
the cross-tests were broken as well, I'm just taking this step and try
to switch to mingw-w64 for everything "cross Windows".

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-03-03 22:38:48 +01:00
Lluís Batlle i Rossell
627c82b991 gcc 4.8: no need for the arm eabi patch. 2014-02-04 10:18:27 +01:00
Shea Levy
d18bc25b95 Rename linuxManualConfig to buildLinux
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-21 20:05:55 -05:00
Shea Levy
6bdafbad9b Build static libs with gcc
This was the behavior pre stdenv-updates and is needed by some users

Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-21 16:11:29 -05:00
Eelco Dolstra
f5773e1f02 gcc-4.8: Enable Darwin and FreeBSD 2014-01-21 14:23:27 +01:00
Vladimír Čunát
0a58b512cb Merge master into stdenv-updates
Conflicts (simple):
	pkgs/development/compilers/gcc/4.8/default.nix
	pkgs/development/compilers/llvm/default.nix
	pkgs/development/libraries/gmp/5.1.1.nix
	pkgs/development/libraries/gmp/5.1.3.nix
	pkgs/development/libraries/gmp/5.1.x.nix
	pkgs/top-level/all-packages.nix
2014-01-18 14:46:20 +01:00
Peter Simons
67e3917864 gfortran-4.8: re-enable parallel building
86802e68ff added a patch that fixes the
race condition with bconfig.h.
2014-01-14 13:36:25 +01:00
Eelco Dolstra
bdf34e9059 gcc: Don't use attrByPath 2014-01-07 10:27:45 +01:00
Vladimír Čunát
86802e68ff gcc-4.{7,8}: hacky fix for parallel builds
The hash of stdenv is unchanged, as we use profiled compiler,
which has parallel builds disabled (conditional patch).
2014-01-03 10:42:46 +01:00
Peter Simons
3e052e242f gfortran48: disable parallel make to avoid apparent race condition
See <http://hydra.nixos.org/build/7125754> as an example of a failed build.
2013-12-17 12:18:07 +01:00
Peter Simons
3ec00b51f8 gcc: update to 4.8.x branch to 4.8.2 2013-10-19 15:10:27 +02:00
Peter Simons
d4bcbbaba6 gcc: update from 4.8.0 to 4.8.1 2013-06-01 12:41:34 +02:00
Peter Simons
642b07f988 gcc: add version 4.8.0 2013-04-04 14:27:44 +02:00