Commit graph

182 commits

Author SHA1 Message Date
ambrop7@gmail.com 7eeb94e8dc Add patch for GCC bug 58800. 2014-04-20 12:40:32 +02:00
Vladimír Čunát 23d38a3e22 gcc44: disable parallel build
Maybe 4.4 is no longer needed? #699
2014-04-02 19:07:58 +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 eb4e04c24f gcc-4.6: unmaintain
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-02-03 18:14:52 -05: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
Ricardo M. Correia bf3476c7d2 gcc: Fix build error on gcc 4.7
Specifically, we are trying to fix the following error seen on Hydra:

../../gcc-4.7.3/gcc/gengtype-lex.c:1:21: fatal error: bconfig.h: No such file or directory

The patch is taken from gcc's SVN revision 193691.
2014-01-14 01:33:34 +01:00
Eelco Dolstra 033374d601 gcc: Fix building 4.5 and 4.6 2014-01-13 20:53:06 +01:00
Eelco Dolstra c3d31749fb Remove gcc 4.7
There is really no reason to keep it around, given that it was never
the default in Nixpkgs.
2014-01-07 10:36:15 +01:00
Eelco Dolstra f1efeb4b3c Get rid of tabs 2014-01-07 10:28:07 +01:00
Eelco Dolstra bdf34e9059 gcc: Don't use attrByPath 2014-01-07 10:27:45 +01:00
Vladimír Čunát f78534ca0f gcc-4.7: fix the parallel-bconfig patch
I'm sorry I forgot to test the 4.8 patch against 4.7. Now it's ported.
2014-01-04 12:37:17 +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
Vladimír Čunát cb639302df Merge glibc-2.18 branch into stdenv-updates
It's to separate from other changes coming from master.

Conflicts:
	pkgs/development/libraries/glibc/2.18/common.nix (taking both changes)
	pkgs/development/libraries/ncurses/5_4.nix (deleted)
2013-12-28 18:51:23 +01:00
Eelco Dolstra 04c364d181 gnat: Attempt to fix random build failures
Sometimes the build failes with:

  In file included from ../../gcc-4.4.6/gcc/ada/seh_init.c:44:
  ../../gcc-4.4.6/gcc/system.h:418: error: conflicting types for 'strsignal'
  /nix/store/6h129q168ahnl2nzw6azr239cba884ng-glibc-2.18/include/string.h:560: note: previous declaration of 'strsignal' was here

and sometimes it doesn't.  Hopefully disabling parallel builds fixes
this.

http://hydra.nixos.org/build/7179481
2013-12-18 15:41:24 +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 c32bf83301 Merge remote-tracking branch 'origin/master' into stdenv-updates.
Conflicts:
	pkgs/development/interpreters/perl/5.16/default.nix
	pkgs/tools/networking/curl/default.nix
	pkgs/top-level/all-packages.nix
	pkgs/top-level/release-python.nix
	pkgs/top-level/release-small.nix
	pkgs/top-level/release.nix
2013-12-04 18:33:52 +01:00
Eelco Dolstra 77dc219127 gcc: Support FreeBSD 2013-11-06 10:41:02 +01:00
Eelco Dolstra da426c7df5 Fix some meta.platforms attributes to build more stuff on Darwin 2013-11-05 10:46:59 +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 0d7118814b Merge branch 'origin/master' into stdenv. 2013-08-17 10:00:16 +02:00
Ludovic Courtès 2e937c437a unmaintain several packages 2013-08-16 23:45:01 +02:00
Vladimír Čunát 73183e5c70 gcc44: minor update 4.4.6 -> .7 2013-06-30 22:28:17 +02:00
Vladimír Čunát 38477f5b0b gcc43: minor update 4.3.4 -> .6 2013-06-30 18:48:06 +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 4914e63a89 Merge changes from branch 'master' into stdenv-updates.
Conflicts:
	pkgs/development/libraries/icu/default.nix
	pkgs/tools/misc/coreutils/default.nix
2013-04-19 11:48:11 +02:00
Vladimír Čunát b6e3834ce0 gcc47: minor update to 4.7.3
Tested buildability on x86_64-linux + stdenv-updates.
2013-04-12 03:07:31 +02:00
Lluís Batlle i Rossell 9ce7b29393 gcc-wrapper: avoiding one glibc rebuild, for gcc.crossDrv
In fact 'glibc.crossDrv' didn't work. I'm not sure it should work; I think it
isn't required for much.
2013-04-10 18:26:42 +02:00
Vladimír Čunát 4c62d0d144 gcc42: fix build via a patch from arch 2013-04-10 14:46:50 +02:00
Peter Simons 642b07f988 gcc: add version 4.8.0 2013-04-04 14:27:44 +02:00
Peter Simons 64f600a010 Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-04-01 13:39:57 +02:00
Lluís Batlle i Rossell c7307122bf gcc47: Making the arm patch only for arm.
I don't know how, but it seems to break mips (noticed by ludo):
http://hydra.nixos.org/build/4530024
2013-03-29 21:56:01 +01:00
Lluís Batlle i Rossell 7405ddee2f gcc47: fixing the arm eabi hf build
Picking an upstream gcc patch.
2013-03-29 18:34:40 +01:00
Peter Simons 22fb1ad99e Merge remote-tracking branch 'origin/master' into stdenv-updates. 2013-03-21 09:23:54 +01:00
Vladimír Čunát 8acaea6d57 gcc33: fix build on i686 2013-03-16 21:08:57 +01:00
Vladimír Čunát 198d4fbe41 gcc33: fix build by --disable-multilib 2013-03-16 20:59:46 +01:00
Vladimír Čunát dd25120e8e gcc34: fix build on i686 2013-03-16 20:40:04 +01:00
Danny Wilson 15e865ac09 GCC 4.7.2 + updated libraries compiles on Illumos/SmartOS!
- Add solaris native ld support to GCC build wrapper
- Add solaris ld wrapper that fixes -L argument order
2013-02-28 20:04:02 +01:00
Danny Wilson bcaea92a12 Attempt at getting GCC 4.7 compiled on Illumos...
No success yet :-(
2013-02-28 20:04:01 +01:00
Shea Levy f081cacda7 gcc: Don't symlink lib and lib64 when building multilib 2013-02-16 18:54:47 -05:00
Eelco Dolstra 2aa6f262cb Merge remote-tracking branch 'origin/master' into stdenv-updates 2013-02-15 13:36:34 +01:00
Shea Levy 86feda1106 Add multilib gcc-4.6.
libquadmath seems to require that the bootstrap gcc be multilib too.
2013-02-08 14:27:42 -05:00
Eelco Dolstra 5f638a4e53 gcc-4.4: Fix build
http://hydra.nixos.org/build/3896514
2013-01-29 11:44:08 +01:00
Eelco Dolstra d2b76e68d0 gcc-4.1: Remove
No longer used and doesn't build.
2013-01-28 17:19:03 +01:00
Eelco Dolstra cb07844c9d gcc-2.95: Remove
Hasn't built in a long time.
2013-01-28 17:19:03 +01:00
Eelco Dolstra 5f6de267f0 gcc-4.0: Remove 2013-01-28 17:19:03 +01:00
Eelco Dolstra 6eb71ff01c gcc-4.3: Apply siginfo_t fix
Borrowed from Gentoo.
2013-01-28 17:19:02 +01:00
Lluís Batlle i Rossell 2402bb2613 gcc: Moving the arch=loongson2f to the current platform approach 2012-12-31 09:38:32 +00:00
Lluís Batlle i Rossell ba7cde0156 Porting the platform gcc flags support to gcc 4.7 2012-12-31 09:32:11 +00:00
Lluís Batlle i Rossell 97d81bde0c Adding platform gcc information for raspberrypi, and the gcc support.
Without it, gcc builds for softfloat, and the glibc doesn't have support for
softfloat (it ends up requiring some gnu-soft.h file). We'll have to test if
this fixes the build of gcc or not, though.
2012-12-30 21:55:02 +00:00
Lluís Batlle i Rossell 67aa9243f0 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.7/default.nix

Trivial.
2012-12-28 23:30:53 +01:00
Lluís Batlle i Rossell b58780c43d Merge remote-tracking branch 'eelco/master' into stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.7/default.nix

Trivial solution.
2012-12-28 23:28:16 +01:00
Lluís Batlle i Rossell 87ec7b49b1 gcc47: Fixing the gcc.float cross parameters 2012-12-28 21:38:57 +01:00
Lluís Batlle i Rossell 719ba63004 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.6/default.nix
	pkgs/development/compilers/gcc/4.7/default.nix

The 4.7 had some weird parameters added in crossAttrs; I've removed
them, but I don't understand where they come from.
2012-12-28 20:14:01 +00:00
Lluís Batlle i Rossell f2f50c42d2 gcc47: adding --with-float option to gcc builder
Meant for cross-building. I need that for the raspberrypi
bootstrap-tools. Before this, its bootstrap-tools gcc built
for softfloat by default.
2012-12-28 21:12:57 +01:00
Lluís Batlle i Rossell fde74242bf gcc47: Adding gcc mode, cross-building.
It's useful to build toolchains for armv7-m, to set thumb mode. It doesn't
support arm mode. chaoflow needed it.
2012-12-28 20:21:23 +01:00
Eelco Dolstra 88b11196c1 Clean up redundant "if condition then true else false" 2012-12-28 19:57:47 +01:00
Eelco Dolstra 84779a6f7d Remove unnecessary parentheses around if conditions
Pet peeve...
2012-12-28 19:54:15 +01:00
Eelco Dolstra ab3eeabfed Rename buildNativeInputs -> nativeBuildInputs
Likewise for propagatedBuildNativeInputs, etc.  "buildNativeInputs"
sounds like an imperative rather than a noun phrase.
2012-12-28 19:20:09 +01:00
Eelco Dolstra 5be0a9acd7 Rename hostDrv -> crossDrv, buildDrv -> nativeDrv
This is for consistency with terminology in stdenv (and the terms
"hostDrv" and "buildDrv" are not very intuitive, even if they're
consistent with GNU terminology).
2012-12-28 19:08:19 +01:00
Lluís Batlle i Rossell 636303797f gcc47: moving the bootstrap logic into nix
It was in the builder.sh. Similar to the previous patch
to gcc46.
2012-12-27 15:08:17 +00:00
Lluís Batlle i Rossell f94f53a54e gcc46: moving the bootstrap logic into nix
It was in the builder.sh.
2012-12-27 15:08:16 +00:00
Lluís Batlle i Rossell d05b33653e gcc47: moving the bootstrap logic into nix
It was in the builder.sh. Similar to the previous patch
to gcc46.
2012-12-27 14:57:32 +00:00
Lluís Batlle i Rossell e9365882c1 gcc46: moving the bootstrap logic into nix
It was in the builder.sh.
2012-12-27 14:54:44 +00:00
Lluís Batlle i Rossell 96b0de4c33 gcc4.7: making the cross-built gcc respect withAbi, withArch, ... 2012-12-26 22:01:51 +00:00
Lluís Batlle i Rossell 6c9002639d I forgot to undo a gcc46 unneeded change. 2012-12-26 22:01:17 +00:00
Lluís Batlle i Rossell 164a84f8f4 Restoring the gcc 4.6 builder. No need to change it. 2012-12-26 22:01:13 +00:00
Lluís Batlle i Rossell a29b4228e9 Typo in 4.7 builder.sh 2012-12-26 22:00:53 +00:00
Lluís Batlle i Rossell 52ee2b99ee gcc47: fix on configureFlags, for cross-built gcc 2012-12-26 22:00:48 +00:00
Lluís Batlle i Rossell 43fac48f15 gcc47: trying to fix cross-building a gcc 2012-12-26 22:00:44 +00:00
Lluís Batlle i Rossell 651734b619 gcc/gcc-cross-wrapper: making gcc47 work with uclibc
It wants pthreads, and libpthreads wants libdl, and this can
only be found with -rpath-link when cross building.
2012-12-26 22:00:33 +00:00
Lluís Batlle i Rossell 2194b98565 Removing any cross-building kind of native build for the pi. 2012-12-26 22:00:29 +00:00
Lluís Batlle i Rossell fc51895afe Get gccs understand 'fpu' 2012-12-26 22:00:20 +00:00
Lluís Batlle i Rossell 9fdd9d51bd Setting some kind of cross-compiler situation, for armv6l gnueabihf. 2012-12-26 22:00:15 +00:00
Lluís Batlle i Rossell b520b4aeee Fixing my bash scripting of the previous commit 2012-12-26 22:00:11 +00:00
Lluís Batlle i Rossell 43fc5ae7cf Trying to fix the gcc builder; I added pi flags in the wrong if/else branch. 2012-12-26 22:00:07 +00:00
root 32c061146d Making gcc use some extra flags to build the proper hardfp gcc.
This commit breaks non-raspberrypi; just testing.
2012-12-26 22:00:02 +00:00
root 1b29d29c76 First movement to get the raspberrypi stdenv building. 2012-12-26 21:59:54 +00:00
Lluís Batlle i Rossell 1af2ada7d4 Fixing the patch in my prev commit
I thought the gcc patch from upstream would apply straight. False,
push-happy.
2012-12-26 19:29:55 +01:00
Lluís Batlle i Rossell 69f52a7916 gcc46: extending the gcc 4.6.3 patch about siginfo to other archs
I took the gcc commit as reference.
2012-12-26 19:18:29 +01:00
Eelco Dolstra 5e256ccc88 Merge remote-tracking branch 'origin/master' into stdenv-updates 2012-12-04 17:12:35 +01:00
Eelco Dolstra 72684fb42f Remove support for the obsolete powerpc-darwin and i686-darwin platforms 2012-11-29 14:10:49 +01:00
Eelco Dolstra 5553546c21 Remove a bunch of unreferenced files
Plus a small number of obsolete packages (like old versions of qemu).
2012-11-29 13:43:37 +01:00
Ludovic Courtès 1ac274784b gcc 4.7: don't pass `--with-native-system-header-dir' when cross-compiling 2012-11-29 10:58:41 +01:00
Ludovic Courtès cd30b83fd8 gcc 4.7: when cross-building for GNU, patch gnu.h', not i386/gnu.h' 2012-11-29 10:58:41 +01:00
Ludovic Courtès 2aea62bd07 gcc 4.7: when cross-building for GNU, patch gnu-user.h', not gnu.h' 2012-11-29 10:07:21 +01:00
Peter Simons f67d5a9a39 Merge branch 'master' into stdenv-updates.
Conflicts have been resolved in:

        pkgs/tools/misc/file/default.nix
        pkgs/top-level/all-packages.nix
        pkgs/top-level/python-packages.nix
2012-11-21 16:20:36 +01:00
Ludovic Courtès eb08033e06 gcc 4.7: remove attempt to modify non-existent file 2012-11-17 20:54:29 +01:00
Ludovic Courtès ebe07c644f gcc 4.7: remove now useless GNU/Hurd-related patch 2012-11-15 09:03:43 +01:00
Lluís Batlle i Rossell 77e983a7d4 ghdl: building the standard libs with -O2
That leads to faster simulations.
2012-11-13 15:16:32 +01:00
Eelco Dolstra e4a11b4d92 gcc: Get rid of lib64 2012-10-16 14:34:27 -04:00
Lluís Batlle i Rossell 612ed601f2 gcc47: updating to 4.7.2 2012-09-24 15:24:01 +02:00