Commit graph

60 commits

Author SHA1 Message Date
Franz Pletz
aff1f4ab94 Use general hardening flag toggle lists
The following parameters are now available:

  * hardeningDisable
    To disable specific hardening flags
  * hardeningEnable
    To enable specific hardening flags

Only the cc-wrapper supports this right now, but these may be reused by
other wrappers, builders or setup hooks.

cc-wrapper supports the following flags:

  * fortify
  * stackprotector
  * pie (disabled by default)
  * pic
  * strictoverflow
  * format
  * relro
  * bindnow
2016-03-05 18:55:26 +01:00
Robin Gloster
09a5af76b5 gcc48: turn off format hardening 2016-02-07 22:24:47 +00:00
Danny Wilson
6a2b723a8b Fix build of gccgo-wrapper on Illumos.
When compiling GCC with NIX_ENFORCE_PURITY,
linking libgcc fails because crti.o and friends
aren't part of the nix store.
2015-11-16 17:20:12 +01:00
Danny Wilson
fdb534f06e GCC 4.8 compiles on Illumos.
- Disable profiled bootstrap.
- Add illumos meta platform.
2015-11-16 17:20:11 +01:00
William A. Kennington III
76674a3c07 gcc: 4.8.4 -> 4.8.5 2015-07-08 16:17:25 -07:00
William A. Kennington III
7eae48871f Merge branch 'master.upstream' into staging.upstream 2015-07-01 13:38:17 -07:00
Shea Levy
145768bf9b Unmaintain a bunch of packages 2015-07-01 08:11:05 -04:00
Eelco Dolstra
110b671c13 gcc: Put info in a separate output 2015-05-13 18:17:25 +02:00
Eelco Dolstra
7745c733eb gcc: Remove duplicate files 2015-05-12 15:05:01 +02:00
Jan Malakhovski
29133753c8 gcc 4.8: add x11Support option so that it would stop evaluating gtk by default 2015-03-29 23:31:37 +00:00
Vladimír Čunát
a0bf07827b mpc: also rename the attribute to libmpc
Attrnames and package names should be as close as possible to avoid confusion.
I took care not to confuse the two mpc things during the mass-replace,
so hopefully I suceeded (tarball still builds).
2015-01-17 09:55:32 +01:00
Shea Levy
16fe4be790 Add isGNU attribute to gccs 2015-01-14 20:26:57 -08:00
Ludovic Courtès
41b53577a8 unmaintain a bunch of packages 2015-01-13 22:33:49 +01:00
Vladimír Čunát
becf038336 Merge branch 'staging' 2014-12-26 22:41:19 +01:00
John Wiegley
28b6fb61e6 Change occurrences of gcc to the more general cc
This is done for the sake of Yosemite, which does not have gcc, and yet
this change is also compatible with Linux.
2014-12-26 11:06:21 -06:00
Vladimír Čunát
47a9d03541 gcc: maintenance update 4.8.3 -> 4.8.4 2014-12-24 23:27:23 +01:00
Eelco Dolstra
a0f3faf34e Merge remote-tracking branch 'origin/glibc-2.20' into staging 2014-11-16 22:17:36 +01:00
Vladimír Čunát
457850397a gcc_multi: prevent overwritten libs after 51f1b4ec48 2014-11-13 22:30:32 +01:00
Eelco Dolstra
73b75f6157 gcc: Fix bug causing Glibc miscompilation
http://hydra.nixos.org/build/16564205
2014-11-03 13:27:53 +01:00
Vladimír Čunát
06fea81c6e Merge recent master into staging
Hydra: ?compare=1150594
2014-09-06 16:52:45 +02:00
Ricardo M. Correia
e552fbf521 gcc/gcj: Update antlr dep to 4.4
Version 3.1.3 is no longer available for download.
2014-09-03 14:04:52 +02:00
Gergely Risko
dd3f3bdcc2 GCC >= 4.8 doesn't depend on ppl 2014-08-29 11:45:22 +02:00
Eelco Dolstra
a0c60b76ec gcc: Revive the no-sys-dirs patch
For now, we don't NATIVE_SYSTEM_HEADER_DIR because it breaks the
build. However, it points to Glibc in the Nix store (not /usr/include)
so it's kind of okay.
2014-08-18 17:20:37 +02:00
Gergely Risko
f199e115d2 Enable parallel building for GCC.
Even if using profiledbootstrap.  This was unsafe before 4.8, and
then the documentation was not fixed on time.

The documentation got fixed here:
  c763997f34

But the actual code was already fixed here:
  5d2fca09d5

So this is safe both for GCC 4.8 and GCC 4.9.
2014-08-13 23:21:33 +02:00
Peter Simons
2d326e5032 Merge remote-tracking branch 'origin/master' into staging.
Conflicts:
	pkgs/desktops/e18/enlightenment.nix
2014-08-04 16:51:47 +02:00
Mateusz Kowalczyk
7a45996233 Turn some license strings into lib.licenses values 2014-07-28 11:31:14 +02:00
Eelco Dolstra
ac8775dd96 $xcodePath -> $SDKROOT
SDKROOT is standard. In particular, this fixes the cmake build on
Mac OS X 10.9.
2014-07-24 21:53:46 +02:00
Eelco Dolstra
402688b752 gcc: Fix multilib builds
http://hydra.nixos.org/build/12578050
2014-07-22 13:36:00 +02:00
Eelco Dolstra
0fd9db3cfb gcc-4.8: Get rid of lib64
Having a separate lib64 is bad because it requires special-casing in
lots of places.

Previously done in e4a11b4d92, which
apparently got lost going from 4.6 to 4.8.
2014-07-01 14:27:57 +02:00
Eelco Dolstra
89f8af55f1 Darwin: Use xcrun to get the path to the SDK
Recent versions of Xcode don't install headers in /usr/include but
in a directory like

  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include

So use that instead, falling back to /usr/include in case of an older
version of Xcode.
2014-07-01 11:01:36 +02:00
Eelco Dolstra
55e8e0ef9b gcc: Slight builder cleanup 2014-06-30 17:31:02 +02:00
Eelco Dolstra
7fe89be146 gcc: Fix purity
Somewhere the no-sys-dirs.patch got disabled, so gcc was looking in
/usr/local/include and /usr/lib. Since I can't fix the patch easily,
I've borrowed the --sysroot trick from clang-wrapper. This causes
builtin paths to be prefixed with /var/empty
(e.g. /var/empty/usr/lib), which don't exist.
2014-06-30 16:43:02 +02:00
Vladimír Čunát
5a98b9f514 Merge recent master into p/stdenv
Merged just before the pypi update, as it seems to cause problems on Hydra.
2014-06-09 19:07:31 +02:00
John Wiegley
0369769bd9 gcc-4.8: build Objective-C/C++ support on darwin 2014-05-31 19:39:09 +00:00
Vladimír Čunát
872860e6de Merge #1187 into p/stdenv
Tested building firefox, kdelibs, evince on x86_64-linux.
2014-05-29 22:16:07 +02:00
Vladimír Čunát
610370f844 gcc: bugfix update 4.8.2 -> .3
It's supposed to fix over 140 problems from upstream bugzilla.
https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=4.8.3

A previously separate patch got included in the release.

I tested that stdenv still builds.
2014-05-23 00:25:36 +02:00
Lluís Batlle i Rossell
b194050ee1 Fixing the cross gcc building.
gcc 4.8 added libatomic, and it has to be disabled in case of
gccCrossStageStatic, as it requires libc.
2014-05-19 10:26:54 +02:00
Ricardo M. Correia
06725e95eb gcc: Add support for grsecurity 2014-05-15 13:25:47 +02:00
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