Commit Graph

613 Commits

Author SHA1 Message Date
Will Dietz
5b46a7c240 gcc7: make building w/LTO support optional, don't use in bootstrap tools 2019-11-03 14:52:44 +01:00
Vladimír Čunát
6c567ed797
Merge branch 'staging-next' into staging 2019-09-22 10:06:45 +02:00
Matthew Bauer
7b58739e2c gcc: fix mising avr limits.h
Fixes #69172
2019-09-20 22:37:00 -04:00
Matthew Bauer
9bdfcf2218 gcc: use gcc8 on darwin 2019-09-17 21:03:08 -04:00
Frederik Rietdijk
e68505e735 Merge remote-tracking branch 'upstream/gcc8' into staging-next 2019-09-06 23:25:18 +02:00
Jan Tojnar
72e7d569a7
tree-wide: s/GTK+/GTK/g
GTK was renamed.
2019-09-06 02:54:53 +02:00
xbreak
549cbc0f48 gcc: 9.1.0 -> 9.2.0
gcc 9.2.0 is a bug-fix release.
2019-08-18 15:39:54 +00:00
Dmitry Kalinkin
bf1818dd5d
gcc48, gfortran48: add myself as maintainer
cc #61130
2019-05-08 19:12:55 -04:00
Will Dietz
5964b3a2e2
gcc9: drop gomp patch (musl)
https://github.com/NixOS/nixpkgs/pull/60860#issuecomment-489495120
2019-05-08 09:20:19 +02:00
Eelco Dolstra
f7d3fb876a
Merge pull request #60860 from vcunat/p/gcc9
gcc9: init at 9.1.0 (released today)
2019-05-07 23:58:47 +02:00
Vladimír Čunát
18d975aff2
gcc9: init at 9.1.0 (released today)
It's just a trivial copy of whole gcc8 stuff,
only with changed version string and hash.
2019-05-03 12:34:40 +02:00
Matthew Bauer
87944c3125
Merge pull request #56744 from matthewbauer/macos-10-12
Update macOS to 10.12
2019-04-26 22:20:03 -04:00
Matthew Bauer
da38a49a24 treewide: mark bad packages
Some old stuff is known not to work.
2019-04-26 21:55:11 -04:00
Matthew Bauer
84d00355e8 Merge remote-tracking branch 'NixOS/master' into staging 2019-04-23 22:00:42 -04:00
Daniel Schaefer
bac4d95aa2 treewide: Change URLs to HTTPS
Lots of URLs were HTTP redirect to HTTPS. Changed those and checked them
if there's actual content. Inspired by
https://github.com/NixOS/nixpkgs/issues/60004
2019-04-22 10:19:54 +02:00
volth
5d87bc2650 fix bootstrap when platform.gcc.arch=="skylake" 2019-04-21 16:37:49 +00:00
Vladimír Čunát
2771375d6e
Merge branch 'master' into staging-next
Hydra nixpkgs: ?compare=1512490
2019-04-02 20:56:53 +02:00
John Ericson
4ccb74011f Merge commit '18aa59b0f26fc707e7313f8467e67159e61600c2' from master into staging
There was one conflict in the NixOS manual; I checked that it still
built after resolving it.
2019-04-01 00:40:03 -04:00
arcnmx
05b0411c57 gcc: fix gcc8 for cross-compiled targets
Adds EXTRA_TARGET_FLAGS missing from 412093994b.

Fixes #58164
2019-03-25 17:57:30 -07:00
Matthew Bauer
aab8c7ba43 netbsd: add cross target 2019-02-26 15:55:47 -05:00
Will Dietz
663bfb120d gcc: 8.2.0 -> 8.3.0
https://gcc.gnu.org/ml/gcc/2019-02/msg00121.html
2019-02-22 15:38:39 -06:00
Alyssa Ross
21d991b1fd
Merge pull request #54578 from alyssais/gcj-darwin
gcj: fix build on Darwin
2019-02-08 16:54:35 +00:00
Vladimír Čunát
5effa4e0f9
Merge branch 'master' into staging-next
Comments on conflicts:
- llvm: d6f401e1 vs. 469ecc70 - docs for 6 and 7 say the default is
  to build all targets, so we should be fine
- some pypi hashes: they were equivalent, just base16 vs. base32
2019-02-01 09:22:29 +01:00
Alyssa Ross
b9b83748f3
gcj: fix build on Darwin
Partially addresses https://github.com/NixOS/nixpkgs/issues/29715.
2019-01-30 18:19:17 +00:00
Matthew Bauer
f9ed5e0089 libstdcxx: don’t set stdlib automatically
We don’t need to set -stdlib=libstdc++. This only works on Clang so it
is not good to set it globally. In addition, Clang knows to use
libstdc++ on Linux by default if no stdlib is set:

324f918438/lib/Driver/ToolChains/Linux.cpp (L456)

It’s a good policy to just leave off stdlib for now.

Fixes #29877.
2019-01-26 01:55:57 -05:00
Daniel Goertzen
1c10efc912 add generic x86_32 support (#52634)
* add generic x86_32 support

- Add support for i386-i586.
- Add `isx86_32` predicate that can replace most uses of `isi686`.
- `isi686` is reinterpreted to mean "exactly i686 arch, and not say i585 or i386".
- This branch was used to build working i586 kernel running on i586 hardware.

* revert `isi[345]86`, remove dead code

- Remove changes to dead code in `doubles.nix` and `for-meta.nix`.
- Remove `isi[345]86` predicates since other cpu families don't have specific model predicates.

* remove i386-linux since linux not supported on that cpu
2019-01-06 12:57:36 -06:00
Lengyel Balazs
f4a53ff3bc treewide/xorg: replace *proto with xorgproto 2019-01-04 14:38:57 +01:00
Will Dietz
ee25d916ee gcc: 7.3 -> 7.4
https://gcc.gnu.org/gcc-7/changes.html
2018-12-29 13:55:20 -06:00
Jörg Thalheim
1b146a8c6f
treewide: remove paxutils from stdenv
More then one year ago we removed grsecurity kernels from nixpkgs:
https://github.com/NixOS/nixpkgs/pull/25277

This removes now also paxutils from stdenv.
2018-12-22 12:55:05 +01:00
c0bw3b
0498ccd076 Treewide: use HTTPS on GNU domains
HTTP -> HTTPS for :
- http://gnu.org/
- http://www.gnu.org/
- http://elpa.gnu.org/
- http://lists.gnu.org/
- http://gcc.gnu.org/
- http://ftp.gnu.org/ (except in fetchurl mirrors)
- http://bugs.gnu.org/
2018-12-02 15:51:59 +01:00
Matthew Bauer
76c956be5c treewide: disable pie in more places
Some packages don’t work correctly with pie. Here I disable it for:

- busybox
- linux kernel
- kexectools

I also get rid of the Musl conditional for disabling pie in GCC and
Binutils. Some day we might want to enable PIE without Musl and it
will be useful to have the *just* work with our compiler and linkers.
2018-11-13 07:03:31 -06:00
Frederik Rietdijk
53d00c3351 Merge master into staging-next 2018-11-10 11:08:54 +01:00
Matthew Bauer
2e2afa1943 gcc/binutils: disable pie hardening
These don’t like having -fPIE set for them. We should disable
hardening all the time, but in the interest of not changing hashes,
this only disables it for Musl (where it is now the default).

(cherry picked from commit a3a6884649354a660326acd68c1bd08ffd2dcfa2)
2018-11-09 13:55:35 -06:00
Will Dietz
0c1b8e8770
Merge pull request #49455 from dtzWill/update/gcc-6.5
gcc6: 6.4.0 -> 6.5.0
2018-11-02 04:00:30 -05:00
Frederik Rietdijk
1d196d99be Merge staging-next into staging 2018-10-30 20:35:15 +01:00
Will Dietz
00a51a9669 gcc6: don't apply patches included in update to 6.5 2018-10-30 07:48:07 -05:00
Will Dietz
d2e78403a8 gcc6: 6.4.0 -> 6.5.0
http://lists.gnu.org/archive/html/info-gnu/2018-10/msg00003.html
2018-10-30 07:43:01 -05:00
Matthew Bauer
412093994b gcc: support avr
- respect libc’s incdir and libdir
- make non-unix systems single threaded
- set LIMITS_H_TEST to false for avr
- misc updates to support new libc’s
- use multilib with avr

For threads we want to use:
- posix on unix systems
- win32 on windows
- single on everything else

For avr:
- add library directories for avrlibc
- to disable relro and bind
- avr5 should have precedence over avr3 - otherwise gcc uses the wrong one
2018-10-29 14:34:09 -05:00
Michael Raskin
4a854344b7
Merge pull request #48721 from oxij/tree/mass-rebuild-complicated-cleanups
treewide: mass rebuild complicated cleanups
2018-10-29 19:17:28 +00:00
Jan Malakhovski
eae890db12 gcc-*: homogenize and cleanup expressions with a mass rebuild 2018-10-21 18:26:37 +00:00
John Ericson
c701d6cb21 Merge remote-tracking branch 'upstream/master' into staging 2018-09-25 14:20:27 -04:00
Will Dietz
fecd326399 gcc{5,6,7,8}: share libgomp patch, propagate musl config flags 2018-09-25 00:08:17 -05:00
Will Dietz
e845be1756 gcc: fix libgomp to not use initial-exec
Only apply w/musl since while it's wrong everywhere it apparently
hasn't broken things entirely w/glibc so keep things as they were.

Patch regenerated from original so that it applies
which isn't saying much since it's simple :).

Source:

https://patchwork.ozlabs.org/patch/154298/

IRC chat on #musl with Rich and others endorses this,
at least at the conceptual level of no shared library
should be using initial-exec TLS.

Fixes various uses of libgomp that previously crashed (before 1.1.20)
or encounter errors (post-1.1.20), such as pythonPackages.cython .
2018-09-25 00:04:33 -05:00
Will Dietz
3ec0d14140 gcc7: more options for musl 2018-09-25 00:04:32 -05:00
Jan Malakhovski
e0b5919197 gcc-*: homogenize and cleanup expressions without a rebuild
Looks scary but it is a noop.
2018-09-23 20:56:19 +00:00
Jan Malakhovski
1abf1971cd gcc7: cleanup with a mass rebuild 2018-09-23 17:30:32 +00:00
John Ericson
b14db1b0ba gcc-*: Clean up crossStageStatic logic
54282b9610 tread carefuly to avoid a mass
rebuild. This embraces the mass rebuild to clean things up.
2018-09-23 17:30:32 +00:00
John Ericson
2091133e78 gcc: Clarify Disabling libmpx in cross stage static
This isn't a MUSL thing, but just needed for cross compilation to x86.
No one had tried this when all cross compilation was to linux + glibc,
hence why no one noticed this until recently.
2018-09-18 16:27:04 -04:00
John Ericson
0828e2d8c3 treewide: Remove usage of remaining redundant platform compatability stuff
Want to get this out of here for 18.09, so it can be deprecated
thereafter.
2018-08-30 17:20:32 -04:00
Jörg Thalheim
9efffe0135 hurd: cleanup unmaintained target
This has been not touched in 6 years. Let's remove it to cause less
problems when adding new cross-compiling infrastructure.
This also simplify gcc significantly.
2018-08-28 22:18:02 +01:00
CrystalGamma
72d161f548 [RFC] ppc64le enablement (#45340)
* ppc64le enablement

* gcc, glibc: properly handle __float128

* lib/systems, stdenv: syntax cleanup

* gcc7: remove ugly hack

* gcc: add/update __float128 flags

* stdenv: add another pair of quotes for consistency

* gcc: move __float128 flag for ppc64le-glibc into common/platform-flags.nix
2018-08-21 15:31:34 -04:00
viric
5c77b9cddb
Merge pull request #43982 from viric/viric_clean
Take me (viric) out of most maintenance
2018-07-29 00:17:08 +02:00
Will Dietz
993937d09e gcc8: 8.1 -> 8.2
https://gcc.gnu.org/gcc-8/changes.html
2018-07-27 08:53:42 -05:00
Lluís Batlle i Rossell
66d7126255 Take me (viric) out of most maintenance
Since years I'm not maintaining anything of the list below other
than some updates when I needed them for some reason. Other people
is doing that maintenance on my behalf so I better take me out but
for very few packages. Finally!
2018-07-22 21:50:19 +02:00
volth
52f53c69ce pkgs/*: remove unreferenced function arguments 2018-07-21 02:48:04 +00:00
volth
87f5930c3f [bot]: remove unreferenced code 2018-07-20 18:48:37 +00:00
Daiderd Jordan
222524b5e6
gfortran: fix darwin build on hydra
All the warnings about unused -isystem arguments causes the build log to
exceed the hydra limit.
2018-06-24 15:02:49 +02:00
Vladimír Čunát
392e6de7d0
Merge branch 'master' into staging 2018-05-20 13:20:53 +02:00
Matthew Justin Bauer
2c7c9cbbac
gcc5: delete unused patch 2018-05-19 12:06:16 -05:00
Robert Schütz
90c0100139 Merge branch 'master' into staging 2018-05-19 11:12:19 +02:00
Matthew Justin Bauer
bd078c1a31
gcc5: remove patch
The patch fails to apply & may not be necessary any more. Trying to remove it for now just to see.

Hydra log: https://hydra.nixos.org/build/72726891/nixlog/1

Also see #33722

/cc @copumpkin
2018-05-18 17:03:35 -05:00
Tuomas Tynkkynen
6b6a575748 Merge remote-tracking branch 'upstream/master' into staging
Conflicts:
	pkgs/tools/networking/telnet/default.nix
	pkgs/top-level/aliases.nix
2018-05-16 03:09:33 +03:00
Bastian Köcher
780592ca6e gcc7: Enable arm erratum 843419 on aarch64
This fix is required for the raspherry pi 3 with glibc 2.27,
otherwise the kernel panics in initrd with:
```
<<< NixOS Stage 1 >>>

loading module dm_mod...
running udev...
kbd_mode: KDSKBMODE: Inappropriate ioctl for device
Gstarting device mapper and LVM...
[    1.969164] Kernel panic - not syncing: Attempted to kill init!
exitcode=0x0000000b
[    1.969164]
[    1.978476] CPU: 0 PID: 1 Comm: init Not tainted 4.16.8 #1-NixOS
[    1.984580] Hardware name: Raspberry Pi 3 Model B (DT)
[    1.989801] Call trace:
[    1.992301]  dump_backtrace+0x0/0x1c8
[    1.996025]  show_stack+0x24/0x30
[    1.999396]  dump_stack+0x9c/0xc0
[    2.002766]  panic+0x124/0x294
[    2.005872]  complete_and_exit+0x0/0x30
[    2.009771]  do_group_exit+0x40/0xa8
[    2.013406]  get_signal+0x280/0x5b0
[    2.016954]  do_signal+0x88/0x240
[    2.020325]  do_notify_resume+0xd8/0x130
[    2.024311]  work_pending+0x8/0x10
[    2.027774] SMP: stopping secondary CPUs
[    2.031763] Kernel Offset: disabled
[    2.035308] CPU features: 0x0802004
[    2.038850] Memory Limit: none
[    2.041963] ---[ end Kernel panic - not syncing: Attempted to kill
init! exitcode=0x0000000b
[    2.041963]
[    2.865264] random: crng init done
```
Suse has done the same to circumvent crashes with hostname resolving in
glibc 2.27 on aarch64.
2018-05-16 03:04:29 +03:00
Patrick Hilhorst
61411e57ec
Merge remote-tracking branch 'upstream/master' into gcc8 2018-05-15 21:37:03 +02:00
Patrick Hilhorst
87fd200b9a
gcc8: mark as broken on darwin 2018-05-14 21:28:17 +02:00
John Ericson
01a525b84e Merge remote-tracking branch 'upstream/master' into staging 2018-05-14 13:31:20 -04:00
John Ericson
bf7d1bae20 Merge remote-tracking branch 'upstream/master' into gcc-hurd-condition 2018-05-14 13:15:06 -04:00
John Ericson
3a9654bfe2 gcc: Simplify this old Hurd condition
Steps towards getting rid of crossConfig.
2018-05-14 13:13:11 -04:00
John Ericson
d00cc1242f
Merge pull request #40040 from obsidiansystems/gnu-config-arm
gnu-config: Update, allowing hacks to be removed
2018-05-14 11:20:09 -04:00
John Ericson
f2b575bd7b Merge remote-tracking branch 'upstream/master' into gnu-config-arm 2018-05-14 10:58:15 -04:00
John Ericson
f472dd7652 Revert "Revert "gcc, binutils: Get rid of 32-bit ARM configure flag exception""
And there's more reverts too. The previous commmit
d838afbc9376bdadb8c690eb00b425f3eeccdf2d to gnu-config finally solves
it!

This reverts commit 3ed545ab31.
2018-05-14 10:55:32 -04:00
John Ericson
2c5d915200 Merge commit '92b7a814f26ee1d37e989431c18518c67285a332' into staging 2018-05-13 01:02:09 -04:00
John Ericson
92b7a814f2 Merge branch 'fix-gcc-with-float' 2018-05-12 15:21:30 -04:00
John Ericson
f2004e6287 lib: Fix float handling for Aarch32
Forgot to adjust default so abi with explicit float attr would be used.
2018-05-12 15:18:31 -04:00
John Ericson
ee4b56edd3 Merge remote-tracking branch 'upstream/master' into staging 2018-05-11 14:36:08 -04:00
John Ericson
f18ddabee7 Merge remote-tracking branch 'upstream/master' into lib-float 2018-05-10 18:13:00 -04:00
John Ericson
1fe81a4bcd lib: Clean up float/fpu options
ARM ABIs now have a float field. This is used as a fallback to lessen
our use of `platform.gcc.float`. I didn't know what the MIPs convention
is so I kept using `platform.gcc.float` in that case.
2018-05-10 18:02:00 -04:00
John Ericson
c9f6a82b61 gcc: Factor out "platform flags" 2018-05-10 18:00:57 -04:00
John Ericson
1d90ea9194
Merge pull request #40294 from obsidiansystems/no-crossAttrs
misc packages: Fewer crossAttrs
2018-05-10 14:38:58 -04:00
John Ericson
c42118bb82 gcc: Get rid of crossAttrs
Only a little bit was left
2018-05-10 14:19:38 -04:00
Matthew Bauer
6748534d83 Merge remote-tracking branch 'upstream/master' into staging 2018-05-08 09:36:00 -05:00
John Ericson
4f7cdd35d5
Merge pull request #40139 from obsidiansystems/modular-setup-hooks
treewide: Modular setup hooks
2018-05-07 15:32:10 -04:00
John Ericson
2110c0bd30 treewide: Use pkgs/build-support/roles.bash to remove copy pasta
Also fix some setup hooks that unnecessarily used environment hooks,
which revolted in the same variable being modified too many times.
2018-05-07 15:10:37 -04:00
Jörg Thalheim
1537dca7fc
Merge pull request #39914 from nlewo/pr-retpoline
gcc49: backport retpoline support
2018-05-04 19:14:35 +01:00
John Ericson
88d18d2e04
Merge pull request #39947 from obsidiansystems/libcxx-cross
lib{std,}c++: Fix setup hooks for cross
2018-05-03 18:20:13 -04:00
John Ericson
39df5831ca lib{std,}c++: Fix setup hooks for cross 2018-05-03 17:55:03 -04:00
Patrick Hilhorst
0a4622cfe9 gcc-snapshot: Removed java as a target language 2018-05-03 19:48:00 +02:00
Patrick Hilhorst
719810d474 gcc7: Removed X11 components, since they were only used by langJava
See also:

51ac1d8df0
https://github.com/NixOS/nixpkgs/pull/39866#discussion_r185813776
2018-05-03 16:43:51 +02:00
Patrick Hilhorst
51ac1d8df0 gcc8: Removed X11 components, since they were only used by langJava 2018-05-03 16:30:32 +02:00
Antoine Eiche
5b6129f69c gcc49: remove darwin support 2018-05-03 15:12:01 +02:00
Patrick Hilhorst
3641b35bae gcc7: Removed java as a target language 2018-05-03 15:11:41 +02:00
Patrick Hilhorst
d21ff87160 gcc8: Removed java as a target language 2018-05-03 13:07:19 +02:00
Antoine Eiche
ada2fc088c gcc49: backport retpoline support
To mitigate Spectre Variant 2, GCC needs to have retpoline
support (-mindirect-branch and -mfunction-return arguments on amd64
and i386).

Patches were pulled from H.J. Lu's backport branch to
4.9 (hjl/indirect/gcc-4_9-branch), available at
https://github.com/hjl-tools/gcc/tree/hjl/indirect/gcc-4_9-branch/master. Upstream
GCC does not apply patches to anything older than the
gcc-6-branch. H.J. Lu is the author of the upstream retpoline commits
as well.

Several Linux distributions already backported these patches to GCC 4
branches and some old kernels (3.13 for instance) have been recompiled
with these GCC patches. These kernels only allow to load kernel
modules that are compiled with the retpoline support.

References:
- Ubuntu bug: https://bugs.launchpad.net/ubuntu/+source/gcc-4.8/+bug/1749261
- Ubuntu package: https://launchpad.net/ubuntu/+source/gcc-4.8/4.8.4-2ubuntu1~14.04.4

Fixes #38394
2018-05-03 11:35:49 +02:00
Matthew Justin Bauer
eeb016e8f0
Merge branch 'staging' into fix-ncurses-darwin-extensions 2018-05-02 15:40:38 -05:00
Patrick Hilhorst
5794d94136 gcc8: made the remove-selftests patch more robust, removed old hash 2018-05-02 22:31:58 +02:00
Patrick Hilhorst
c7a6b36658 gcc8: removed commented gcc7 hash 2018-05-02 20:53:13 +02:00
Patrick Hilhorst
d0708a30c4 gcc8: removed merged patches
Log:
```
patching sources
applying patch /nix/store/6m27y27zvzsjn1ir4y8mm9nc9xnh2sgx-riscv-no-relax.patch
patching file gcc/config/riscv/riscv.c
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file gcc/config/riscv/riscv.c.rej
patching file gcc/config/riscv/riscv.opt
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file gcc/config/riscv/riscv.opt.rej
patching file gcc/doc/invoke.texi
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
```
2018-05-02 20:51:01 +02:00
Patrick Hilhorst
728eb27618 gcc8: added myself as maintainer 2018-05-02 18:52:50 +02:00
Patrick Hilhorst
659363fb40 gcc8: init at 8.1.0 2018-05-02 18:34:28 +02:00
John Ericson
591d8c7a19
Merge pull request #39458 from oxij/stdenv/beautifications
stdenv: better names for cc and bintools
2018-04-26 11:41:18 -04:00