Commit graph

122 commits

Author SHA1 Message Date
Shea Levy 3e1fdb7a35 gcc-wrapper is used for clang too 2015-01-05 14:39:22 -05: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
Eelco Dolstra 2c65f3fa66 Fix stdenv-native 2014-10-11 23:10:27 +02:00
Eelco Dolstra 79d0d7b437 Unify gcc-wrapper and clang-wrapper 2014-10-11 22:26:39 +02:00
Eelco Dolstra 0d67d13527 gcc-wrapper: Style fix 2014-10-11 22:26:39 +02:00
Eelco Dolstra 02122ccfd0 gcc-wrapper: Style fix 2014-10-11 22:26:39 +02:00
Eelco Dolstra ffbdcbfe29 gcc-wrapper: Wrap ld.gold
This ensures that gcc's ‘-fuse-ld=gold’ flag works.
2014-10-10 14:55:17 +02:00
Eelco Dolstra 3e0a348728 gcc-wrapper: Get rid of builder.sh + cleanup 2014-10-10 14:55:08 +02:00
Eelco Dolstra 66dedaa6ee gcc-wrapper: Remove NIX_GCC_NEEDS_GREP
This is not needed on any currently supported platform.
2014-09-23 19:43:38 +02:00
Eelco Dolstra 552b105206 gcc-wrapper: Use a real date
Analogous to the fake timestamp in the Linux kernel build.
2014-09-15 09:26:41 +02:00
Gergely Risko e766f0b0d0 Fix __DATE__ and __TIME__ purification in gcc-wrapper 2014-09-14 22:33:48 +02:00
Alexander Kjeldaas aa119e1106 gcc-wrapper: make __DATE__/__TIME__ deterministic
...when NIX_ENFORCE_PURITY=1.

@vcunat corrected the date according to docs.
https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html
In order to handle the spaces well, the extraAfter array had to be
quoted more properly and appended by +=.
2014-09-13 15:32:34 +02:00
Vladimír Čunát 82797f98f2 Merge branch 'staging' into modular-stdenv
Conflicts:
	pkgs/development/interpreters/perl/5.10/setup-hook.sh
	pkgs/development/interpreters/perl/5.8/setup-hook.sh
	pkgs/stdenv/linux/default.nix
2014-09-08 18:24:58 +02:00
Eelco Dolstra 715943a6fb ld-wrapper: Put back the --sysroot filter
We still need this because some clang-based packages depend on
it. (The sysroot filtering was originally done by clang-wrapper's
ld-wrapper, but we merged the ld-wrappers in
a4f9b9c8b5ec9ef106671ffdf93e0059835d0ec1.)

http://hydra.nixos.org/build/13906922
2014-09-02 13:18:03 +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
Eelco Dolstra e3f7dbbac8 Cleanup: Use += to append to envHooks 2014-08-09 12:47:05 +02:00
Eelco Dolstra 15103e5e5f stdenv: Remove the special handling of gcc
Now gcc is just another build input, making it possible in the future
to have a stdenv that doesn't depend on a C compiler. This is very
useful on NixOS, since it would allow trivial builders like
writeTextFile to work without pulling in the C compiler.
2014-08-09 12:44:50 +02:00
Eelco Dolstra 289895fe2c Fix SNAFU using $NIX_LDFLAGS_AFTER 2014-07-02 14:55:44 +02:00
Eelco Dolstra 0d8014f6fc Darwin: Search for libraries in $sdk/usr/lib
This required adding a new environment variable NIX_LDFLAGS_AFTER
that ensures that the -L.../usr/lib flag happens last.
2014-07-01 15:56:09 +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 1ed628acb2 gcc-wrapper: don't fail when cpp doesn't exist
This is fixup for 1d3917bb #1820. Gnatboot doesn't have cpp.
2014-04-02 19:07:58 +02:00
Vladimír Čunát de11c288c1 gcc-wrapper: preferLocalBuild, as it does little work
This is re-revert of e31523a369.
2014-04-02 19:05:57 +02:00
Bjørn Forsman 25f0b7cb50 gcc-{,cross-}wrapper: add 'cpp' wrapper (close #1820)
The gcc-wrapper doesn't wrap 'cpp'. This breaks some software (such as
Buildroot) because the 'cpp' they get come from the non-wrapped gcc
package which doesn't know about any standard include paths.

gcc-cross-wrapper is untested.
2014-04-02 19:05:57 +02:00
Vladimír Čunát e31523a369 preferLocalBuild: revert a stdenv change 2014-02-10 23:33:49 +01:00
Vladimír Čunát 161d029d7d preferLocalBuild: set to true for wrappers and fetchers 2014-02-10 21:04:17 +01:00
Eelco Dolstra 7703f04b75 Add a stdenv adapter ‘useGoldLinker’ to force use of Gold 2014-02-05 19:18:33 +01:00
Eelco Dolstra 51713fbbfc gcc-wrapper: Use -isystem instead of -I
This mostly matters for "gcc -MMD", which distinguishes between user
and system header files.
2014-01-10 13:29:29 +01: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
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
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
Lluís Batlle i Rossell eb0422e4c1 Merge branch 'stdenv-updates' into pi-stdenv-updates 2012-12-29 14:18:43 +00:00
Lluís Batlle i Rossell 29fdf278ce Enabling support of ld-linux-armhf.so.3 ld.so, in ARM
I use wildcards.
2012-12-29 14:14:53 +00:00
Lluís Batlle i Rossell b8c0279b9f Unifying buildergo.sh and builder.sh into one. 2012-12-29 15:11:32 +01:00
Eelco Dolstra 84779a6f7d Remove unnecessary parentheses around if conditions
Pet peeve...
2012-12-28 19:54:15 +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
Peter Simons d5677fe6c7 stdenv-updates: merge updates from 'master' branch 2012-09-11 16:48:41 +02:00
Lluís Batlle i Rossell a375ffa53f Adding gccgo for gcc4.7.
I tested hello world, and it works.
2012-08-03 19:49:53 +02:00
Peter Simons 94fe7bed1d Extend compiler wrapper scripts to allow compilation of "/dev/null" input.
This feature sounds crazy, but it is used in some configure scripts (e.g. xbmc).
This patch causes an almost complete rebuild of Nixpkgs.

Patch submitted by Jan Malakhovski <oxij@oxij.org>.
2012-07-02 17:15:21 +02:00
Nicolas Pierron 82b308bf11 Add armv7l support.
svn path=/nixpkgs/trunk/; revision=33798
2012-04-15 23:41:25 +00:00
Yury G. Kudryashov 5b132f6e96 svn merge ^/nixpkgs/trunk
Conflicts: cups, all-packages.nix (gcc45_debug)

svn path=/nixpkgs/branches/stdenv-updates/; revision=31863
2012-01-26 15:27:03 +00:00
Lluís Batlle i Rossell 4a1c721c01 Changing every reference from mips64-linux to mips64el-linux. That's
what the new nix thinks the fuloong is.

Anyone having the old nix should use a nixpkgs previous to this change to build
the new nix. And then, with the new nix, he can use any newer nixpkgs revision.

svn path=/nixpkgs/trunk/; revision=31751
2012-01-21 00:34:51 +00:00
Eelco Dolstra c556a6ea46 * "ensureDir" -> "mkdir -p". "ensureDir" is a rather pointless
function, so obsolete it.

svn path=/nixpkgs/branches/stdenv-updates/; revision=31644
2012-01-18 20:16:00 +00:00
Eelco Dolstra 3ea1c30846 * Remove the NIX_STRIP_DEBUG flag. It was undocumented and confusing
in its interaction with the ‘dontStrip’ attribute.

svn path=/nixpkgs/branches/stdenv-updates/; revision=30848
2011-12-12 14:02:12 +00:00
Ludovic Courtès a208b2f85f Fix typo.
svn path=/nixpkgs/trunk/; revision=27429
2011-06-12 22:35:20 +00:00
Ludovic Courtès 65f50c7aab Specify the dynamic linker name for cross-compilation to GNU/Hurd.
svn path=/nixpkgs/trunk/; revision=27428
2011-06-12 22:32:44 +00:00
Lluís Batlle i Rossell e930a7385b Fix about the order of -rpath and -L in the ld-wrapper
svn path=/nixpkgs/branches/stdenv-updates/; revision=25128
2010-12-14 15:22:25 +00:00
Lluís Batlle i Rossell 195a90d7ce Fixing a bug in the ld-wrapper, where the dynamic-linker path was taken as a
path worth a "-rpath" entry.

This put a problem in the bootstrap, where we built 'zlib' and wanted to link programs with it, and while they got linked well, at runtime the boostrap-tools zlib came first on rpath becaue
the ld call was done with "-dynamic-linker ..." before "-lz".

I saw this trouble on the fuloong, where the zlib in boostrap-tools is not
runtime compatible with that binutils are linked to.

svn path=/nixpkgs/branches/stdenv-updates/; revision=25107
2010-12-13 22:46:21 +00:00
Lluís Batlle i Rossell 43930b36d9 I had changed the gcc-wrapper shell attribute, for it to be a specific kind of
derivation instead of a string, but this did not cover all use cases we had.
Instead of updating the use cases, I made the wrapper accept also a string.

We saw this problem trying to build gcc43_multi.


svn path=/nixpkgs/branches/stdenv-updates/; revision=25029
2010-12-07 15:18:05 +00:00
Lluís Batlle i Rossell 1b62c9c061 I made changes to achieve a working cross-built gcc wrapper. Now,
"gcc45.hostDrv" works in the host system, together with libc, binutils, dynamic
linker, ...


svn path=/nixpkgs/branches/stdenv-updates/; revision=24971
2010-12-04 21:45:37 +00:00
Lluís Batlle i Rossell 641f956581 Setting any stdenv.system references for the loongson2f system to 'mips64-linux'.
(my git-svn info:)
Merge branch 'mips64' into stdenv-updates

Conflicts:
	pkgs/applications/networking/browsers/firefox/3.6.nix
	pkgs/top-level/all-packages.nix

svn path=/nixpkgs/branches/stdenv-updates/; revision=23588
2010-09-01 09:50:12 +00:00