John Ericson
169227bfd2
Merge commit '3a59cd87f26cc59c91fb821749b1ec0d64922f87' into mingw32-w64-fix
2017-12-29 14:24:10 -05:00
John Ericson
2365e2ffcd
Merge commit '51948eab9415fde1825dea5c7d31b99b2e1a0fdb' into mingw32-w64-fix
2017-12-29 14:23:05 -05:00
Bojan Nikolic
771bae04e8
gcc: Enable SSP and shared libs in the final stage for MinGW
...
Hardening on by default now that we don't use the cross wrapper. In
turn, hardening requires libssp in particular.
2017-12-29 13:27:02 -05:00
John Ericson
3a59cd87f2
Merge commit '93cd0685c5ac4d8f21d8586d3e5c45cd7394fab9' into gcc-modernize-builder
2017-12-07 01:49:31 -05:00
John Ericson
51948eab94
gcc: Fix after merge
...
- NIX_CC_CROSS is now completely gone!
- NIX_CC is defined reliably, so no manual def needed
- stdenv.ccCross -> stdenv.cc, also removing need for "or" fallback
2017-12-07 01:42:43 -05:00
John Ericson
d96cf0f46c
gcc: Handle CPATH
and LIBRARY_PATH
purely in Nix
2017-12-06 19:12:51 -05:00
John Ericson
d4595b38e9
gcc: Modernize builder.sh for Cross
...
Instead of `NIX_CC` vs `NIX_CC_CROSS` spagetti, unconditionally use
`NIX_BUILD_CC` and `NIX_CC` in a consistent manner.
2017-12-06 19:12:50 -05:00
John Ericson
93cd0685c5
Merge commit '71186e73455a4e06e96a31da34b76f84e545ba1f' into gcc-simplify-flags
2017-12-05 17:09:41 -05:00
John Ericson
c9ca541994
Merge commit '198dceccbe5414a5fd72ca83624c0cc715db1aad' into gcc-simplify-flags
2017-12-05 16:55:11 -05:00
John Ericson
a3e35fbbe1
gcc: Use platformFlags in crossConfigureFlags
...
A nice code deduplication
2017-12-05 14:01:18 -05:00
John Ericson
1fe9798ac2
lib, gcc: No inherit (platform) gcc;
in {host,build,target}Platform
2017-12-05 13:52:20 -05:00
John Ericson
74cbb5796e
gcc: Get rid of crossAttrs.configureFlags
2017-12-04 20:50:59 -05:00
John Ericson
cabfe1885f
gcc: Don't try to enable plugins with host != build
2017-12-04 16:27:18 -05:00
John Ericson
2fdca4db69
gcc: Lock down more tools for cross-builds
...
That is, build != host == target
2017-12-04 16:27:18 -05:00
John Ericson
71186e7345
gcc: Use configurePlatforms
to control --build, --host, and --target
2017-08-23 14:28:59 -04:00
John Ericson
b11889e6a4
gcc: Homogenize syntax in one small spot
...
Less noise in the diff help maintain these behemoths.
2017-08-18 14:03:48 -04:00
Daiderd Jordan
261cbdbe19
gcc6: port darwin changes from 5.x
2017-08-17 21:00:05 +02:00
Eelco Dolstra
07176ed6f1
gcc: 6.3.0 -> 6.4.0
2017-07-04 18:39:18 +02:00
John Ericson
12795a7068
misc: Remove almost all uses of stdenv.{ccCross,binutils}
2017-06-22 17:53:52 -04:00
John Ericson
35ed21d096
gcc*: Replace stdenv.is* with {host,target}Platform.is*
...
Host everywhere would be guaranteed to preserve the old semantics,
but in a few places it doesn't matter in practice, target is used
instead for clarity.
2017-06-06 19:28:16 -04:00
Ross MacLeod
e854685d65
gcc*: Remove cross argument and instead use hostPlatform and targetPlatform
2017-06-06 19:28:16 -04:00
John Ericson
eaa509f33a
stdenv: Rename isGNU
to isHurd
as GNU is a userland
...
Elsewhere, things called GNU indeed includes GNU/Linux or GNU/Hurd, but this
predicate was defined excluding Linux regardless of userland.
2017-05-22 13:55:26 -04:00
John Ericson
20fa6fd871
gcc: When cross compiling, always expect prefixed binutils
...
Previously this was just done on Darwin.
2017-05-17 15:33:05 -04:00
John Ericson
295315cc87
binutilsCross: Remove and use binutils
instead always
...
See previous commit for what was done to `binutils` to make this
possible.
There were some uses of `forcedNativePackages` added. The
combination of overrides with that attribute is highly spooky: it's
often important that if an overridden package comes from it, the
replaced arguments for that package come from it. Long term this
package set and all the spookiness should be gone and irrelevant:
"Move along, nothing to see here!"
No hashes should be changed with this commit
2017-04-25 21:36:19 -04:00
John Ericson
a7068ace35
Rewrite a few stdenv.cross
uses that *should* be targetPlatform
...
The previous commit redefines `stdenv.cross` for the sake of normal
libaries, the most common use-case of that attribute. Some compilers
however relied on the old definition so we have them use
`targetPlatform` instead. This special casing is fine because we
eventually want to remove `stdenv.cross` and use either `hostPlatform`
or `targetPlatform` instead.
2017-04-24 16:31:45 -04:00
Dan Peebles
0cacae6a5f
gcc6: fix for LLVM 4.0
2017-04-06 23:20:35 -04:00
Eelco Dolstra
42574f52b9
Remove references to $NIX_STRIP_DEBUG
...
This was removed in 3ea1c30846
.
2017-02-05 11:08:32 +01:00
Eelco Dolstra
953fe37009
gcc: 6.2.0 -> 6.3.0
2016-12-21 15:48:25 +01:00
Vladimír Čunát
06839f5a40
fix some evaluation problems after 8610a34474
...
/cc #18327 .
2016-09-17 02:26:49 +02:00
Vladimír Čunát
5de2857a54
gcc*: use stdenv.cc.libc instead of stdenv.libc
...
The latter doesn't exist on Linux.
2016-09-16 23:23:33 +02:00
Matthew Bauer
8610a34474
gcc: use special native system headers for darwin
...
Darwin systems need to be able to find CoreFoundation headers as well as
libc headers. Somehow, gcc doesn't accept any "framework" parameters
that would normally be used to include CoreFoundation in this
situation.
HACK: Instead, this adds a derivation that combines the two. The result
works but probably not a good long term solution.
ALTERNATIVES: Maybe sending patches in to GCC to allow
"native-system-framework" configure flag to get this found.
2016-09-15 17:58:09 -05:00
Matthew Bauer
cf004ae56e
gcc: add --with-native-system-header-dir for clang
...
gcc needs to be able find system headers. Without this, gcc fails to build because
/usr/include is not available.
Note: stdenv.libc should be available for all stdenv's, I think.
2016-09-15 17:56:50 -05:00
Matthew Bauer
f2e753a90c
gcc: fix gmp, mpfr includes
...
This should get gcc48, gcc5, and gcc6 working again.
Also: use makeLibraryPath, and makeSearchPathOutput for LIBRARY_PATH and
CPATH. This is a refactor but it also fixes an issue with zlib.
2016-09-15 17:56:50 -05:00
Matthew Bauer
45cd1ea620
gcc: --enable-bootstrap on Darwin
...
This seems to be working now. ISL needs to be disable for it to build
completely though.
2016-09-15 17:54:01 -05:00
Kirill Boltaev
0f37287df5
treewide: explicitly specify gtk version
2016-09-13 21:09:24 +03:00
Tuomas Tynkkynen
0cfb79afac
gcc6: Unify some differences with gcc5
...
In particular, fixes build with the new shuffled outputs.
2016-08-30 23:00:13 +03:00
obadz
3de6e5be50
Merge branch 'master' into staging
...
Conflicts:
pkgs/applications/misc/navit/default.nix
pkgs/applications/networking/mailreaders/alpine/default.nix
pkgs/applications/networking/mailreaders/realpine/default.nix
pkgs/development/compilers/ghc/head.nix
pkgs/development/libraries/openssl/default.nix
pkgs/games/liquidwar/default.nix
pkgs/games/spring/springlobby.nix
pkgs/os-specific/linux/kernel/perf.nix
pkgs/servers/sip/freeswitch/default.nix
pkgs/tools/archivers/cromfs/default.nix
pkgs/tools/graphics/plotutils/default.nix
2016-08-27 23:54:54 +01:00
Robin Gloster
ddcf70482c
gcc6: 6.1.0 -> 6.2.0
2016-08-25 00:00:48 +00:00
obadz
0e8d2725dc
Merge branch 'master' into staging
2016-08-23 18:50:06 +01:00
Tuomas Tynkkynen
984e04d733
treewide: Make explicit that 'dev' output of mpfr is used
2016-08-23 03:52:07 +03:00
Tuomas Tynkkynen
c08364b887
treewide: Make explicit that 'dev' output of gmp is used
2016-08-23 03:52:05 +03:00
Robin Gloster
b7787d932e
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
2016-08-12 09:46:53 +00:00
Alexey Shmalko
a9bc2d530b
gcc: disable libsanitizer for uclibc
...
libsanitizer requires header files which are not present in uclibc.
Also, libsanitizer is disabled with uclibc for buildroot[1] and
openwrt[2].
[1]: https://git.busybox.net/buildroot/commit/?id=554e29e267e6b36a0fd78c82cbad2c82d939eb7f
[2]: 5f372a8ca0
2016-08-03 03:32:30 +03:00
Robin Gloster
5185bc1773
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
2016-07-15 14:41:01 +00:00
Vladimír Čunát
d3e599c9e1
Merge #16355 : gcc: darwin support
2016-06-23 12:16:40 +02:00
Matthew Bauer
f05bb6d23f
gcc: fix darwin building
...
- disable bootstrap builds on Darwin
- remove xcrun calls
- check if patchelf is available before using
- apply darwin patch for gcc4.9
- fixes #16047
- fixes #14812
2016-06-19 23:07:10 -05:00
Robin Gloster
06ed235347
gcc6: disable format hardening flag
2016-06-14 11:45:47 +00:00
Eric Litak
fa4fcaf6b4
darwin output paths
2016-05-31 16:28:05 -07:00
Eric Litak
527f619aae
same changes to gcc6
2016-05-31 16:28:05 -07:00
Peter Simons
8e462995ba
Bring my stdenv.lib.maintainers user name in line with my github nick.
2016-05-16 22:49:55 +02:00