Commit graph

120 commits

Author SHA1 Message Date
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
Lluís Batlle i Rossell 40405d03ac Trying to add the fuloong2f for bootstrap-files. It bootstraps fine
(boostrap-files cross-built)

svn path=/nixpkgs/branches/stdenv-updates/; revision=22849
2010-08-01 21:22:51 +00:00
Lluís Batlle i Rossell bd9c968158 Removing any rest of the trunk's stdenv2, that has a fix in ld-wrapper to make
it properly put the rpath for directly passed .so files, and additionally it
works much faster than the old ld-wrapper.


svn path=/nixpkgs/branches/stdenv-updates/; revision=21978
2010-05-25 20:51:01 +00:00