1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-12-17 02:14:36 +00:00
Commit graph

43 commits

Author SHA1 Message Date
Symphorien Gibol d68dee04b7 gcc: fix cross compilation to musl32 2021-02-12 21:11:16 +01:00
John Ericson 5fc5e83808
Merge pull request #111345 from r-burns/ppc64-big-endian
Enable PPC64 (big-endian)
2021-01-30 16:26:06 -05:00
Ryan Burns 5530a3adbe gcc: fix powerpc64-linux
Long-double-128 is a hardware feature independent of endianness
2021-01-30 12:34:30 -08:00
Ben Siraphob 3bbad8b041 treewide: remove inherited stdenv.lib 2021-01-27 12:44:43 +07:00
John Ericson 12881a7aa7
Merge pull request #110544 from Ericson2314/no-platform
top-level, lib: Remove platform attribute of platforms
2021-01-23 16:32:36 -05:00
John Ericson 9c213398b3 lib: Clean up how linux and gcc config is specified
Second attempt of 8929989614589ee3acd070a6409b2b9700c92d65; see that
commit for details.

This reverts commit 0bc275e634.
2021-01-23 10:01:28 -05:00
Ben Siraphob acc5f7b18a pkgs/development/compilers: stdenv.lib -> lib 2021-01-23 08:57:37 +07:00
Jonathan Ringer 0bc275e634
Revert "lib: Clean up how linux and gcc config is specified"
This is a stdenv-rebuild, and should not be merged
into master

This reverts commit 8929989614.
2021-01-22 14:07:06 -08:00
John Ericson 8929989614 lib: Clean up how linux and gcc config is specified
The `platform` field is pointless nesting: it's just stuff that happens
to be defined together, and that should be an implementation detail.

This instead makes `linux-kernel` and `gcc` top level fields in platform
configs. They join `rustc` there [all are optional], which was put there
and not in `platform` in anticipation of a change like this.

`linux-kernel.arch` in particular also becomes `linuxArch`, to match the
other `*Arch`es.

The next step after is this to combine the *specific* machines from
`lib.systems.platforms` with `lib.systems.examples`, keeping just the
"multiplatform" ones for defaulting.
2021-01-21 22:44:09 -05:00
Kira Bruneau f0c6e40948 gcc10: fix MinGW build & use local copy of mcfgthread patches 2021-01-03 23:04:37 -05:00
luc65r f6fceb321b Remove trailing whitespaces and fix indentation 2020-12-28 08:43:32 +01:00
luc65r b1b3ca7907 gcc: make -fcommon default on gcc10 2020-12-28 08:43:31 +01:00
Andreas Fuchs 41e34e76d8 gcc: Only use strip -x if building libgccjit on darwin
It's not necessary to use strip -x otherwise, so let's just use it for
the JIT library.
2020-08-29 23:10:38 -04:00
Andreas Fuchs 038e86ffbb gcc: Fix building libgccjit on darwin, using strip -x
The default `strip` invocation tries to strip global symbols from the
library, and refuses because those are indirect symbol table
references.
2020-08-25 08:12:35 -04:00
Jörg Thalheim 9f5d38e751
Merge pull request #82921 from Calvin-L/fix-gcc-on-catalina
Fix GCC compilation on MacOS 10.15
2020-07-23 11:30:23 +01:00
Frederik Rietdijk dc33419285 Merge master into staging-next 2020-06-08 12:06:12 +02:00
Moritz Angermann f2a33e4486
Update configure-flags.nix 2020-06-08 12:43:58 +08:00
Moritz Angermann 58ffaee5d7
Update configure-flags.nix 2020-06-08 12:40:38 +08:00
Michael Bishop e27e475f0d
rust: fix rust cross-compile
reasoning:
sjlj (short jump long jump) exception handling makes no sense on x86_64, it's forcably slowing programs down as it produces a constant overhead. On x86_64 we have SEH (Structured Exception Handling) and we should use that. On i686, we do not have SEH, and have to use sjlj with dwarf2. Hence it's now conditional on x86_32
2020-06-05 23:34:38 -03:00
Frederik Rietdijk 03de4c02fb Merge staging-next into staging 2020-05-28 22:05:36 +02:00
Frederik Rietdijk e27e3ae169 Merge master into staging-next 2020-05-28 22:03:48 +02:00
Tobias Mayer 2be2b5328c
gcc: optimize cross-compiled libraries
`libstdc++` and a few other libraries are comiled with the options
set in `EXTRA_TARGET_FLAGS`. Normally, this is filled form
`EXTRA_FLAGS` inside of `builder.sh`, from which it inherits its
optimization option. For cross compilers `EXTRA_TARGET_FLAGS` is
set by a dedicated function that does not specify any optimization,
leading to sub-par runtime performance of many C++ programs.
2020-05-27 10:07:01 +02:00
Frederik Rietdijk d578248611 Merge staging-next into staging 2020-05-24 10:10:06 +02:00
Frederik Rietdijk c778596f56 Merge master into staging-next 2020-05-24 10:03:22 +02:00
Stefan Frijters fc9b93d2fc gdc: init at 9.3.0 2020-05-19 23:06:52 +02:00
John Ericson 1ac5398589 *-wrapper; Switch from infixSalt to suffixSalt
I hate the thing too even though I made it, and rather just get rid of
it. But we can't do that yet. In the meantime, this brings us more
inline with autoconf and will make it slightly easier for me to write a
pkg-config wrapper, which we need.
2020-05-12 00:44:44 -04:00
Matthew Bauer fe1955588a gcc: add langJit option for gcclangjit
This option can be used to set the “jit” language which enable the
libgccjit functionality. Also adds a “libgccjit” attr which is gcc
built with just jit enabled.
2020-05-06 23:12:17 -05:00
Lars Jellema 8e79583510 gnat: init at 9.3.0 2020-04-20 14:41:22 +02:00
Calvin Loncaric 3a79681eb4
GCC: fix compilation on MacOS 10.15
MacOS 10.15 now includes "aligned_alloc".  Disagreement between the
headers and the binaries about whether aligned_alloc exists leads to
a compilation failure (see #73319 and the detailed comment in this
commit).
2020-03-18 21:15:43 -07:00
Robin Gloster e9c27ed5f9
treewide: configureFlags is a flat list 2019-12-31 01:34:39 +01:00
Matthew Bauer 93fd7d8888
Merge pull request #73291 from obsidiansystems/fix-gcj
GCC 6: Fix java support
2019-11-12 11:10:34 -05:00
John Ericson 903bdf1709 GCC 6: Fix java support
Major version upper bound was one too low.
2019-11-12 09:56:43 -05:00
John Ericson 16f0fe7fe3 Merge remote-tracking branch 'upstream/master' into mingw-mcfthreads 2019-11-11 20:48:14 -05:00
John Ericson 04cb05d20c gcc: Build MinGW stage two with threading library
Currently this is set up to be mcfgthreads, but it could be something
else instead.
2019-11-11 11:02:38 -05:00
John Ericson 999ef20129 mingw-w64 libc: Multiple outputs and parallel builds
Also deduplicate more of the GCC derivations.
2019-11-11 00:25:24 -05:00
John Ericson 62e154ff8d Merge remote-tracking branch 'upstream/master' into gcc-dedup-configure-flags 2019-11-10 16:12:25 -05:00
John Ericson 5c5ca018c8 gcc: Deduplicate configureFlags
Thanks again to @bgamari who in 1c1207220f
did the cleanup to make this possible. It's been a long time coming!
2019-11-10 15:58:35 -05:00
John Ericson f666c61d20 gcc: Deduplicate preConfigure 2019-11-10 15:15:04 -05:00
volth 5d87bc2650 fix bootstrap when platform.gcc.arch=="skylake" 2019-04-21 16:37:49 +00: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
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 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