1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-12-13 08:05:40 +00:00
Commit graph

264 commits

Author SHA1 Message Date
Eelco Dolstra 320209a618 Merge deterministicStdenv into the default stdenv
This means that (on Linux) strip uses
"--enable-deterministic-archives" and ld uses the
BFD_DETERMINISTIC_OUTPUT flag.
2014-01-07 13:57:42 +01:00
Eelco Dolstra c3d31749fb Remove gcc 4.7
There is really no reason to keep it around, given that it was never
the default in Nixpkgs.
2014-01-07 10:36:15 +01:00
Shea Levy f4ce59cee0 Remove non-kernel-specific klibc derivation
Signed-off-by: Shea Levy <shea@shealevy.com>
2014-01-05 07:38:58 -05:00
Vladimír Čunát 8ba92b8895 Merge master into stdenv-updates
Conflicts (simple):
	pkgs/development/tools/misc/binutils/default.nix
	pkgs/tools/package-management/disnix/default.nix
	pkgs/top-level/all-packages.nix
2013-07-08 10:48:05 +02:00
Eelco Dolstra acba9240cd nixos.org/tarballs -> tarballs.nixos.org
It's currently the same machine, but tarballs.nixos.org should become
an S3/CloudFront site eventually.
2013-06-25 14:12:16 +02:00
Shea Levy 986f361946 linux/bootstrap: Use <nix/fetchurl> to get the static binaries
Since nix-1.4, nix's corepkgs contain a fetchurl suitable for
downloading the bootstrap binaries. Doing this will allow us to have a
nixpkgs with no in-tree binaries without breaking the purity of the
bootstrap (though for now, they are fetched in-tree until the binaries
are added to nixos.org somewhere). As an additional small benefit, the
in-tree binaries do not have to be hashed on every instantiation as they
do now.

The fetchurl in nix-1.2 and 1.3 isn't able to make binaries executable,
so it can't be used for this case. In that case, attempting to build the
bootstrap will show a message asking the user to manually download each
file and add it to the store with nix-store --add (but the hash is
ultimately the same, of course).

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-05-05 11:30:34 -04:00
Vladimír Čunát 637e799ead Merge stdenv-updates-gcc47 into stdenv-updates
Conflicts (simple):
	pkgs/development/libraries/gmp/5.0.5.nix
	pkgs/development/libraries/gmp/5.1.1.nix
	pkgs/top-level/all-packages.nix
2013-03-09 12:01:39 +01:00
Lluís Batlle i Rossell be88539d84 stdenv bootstrap: removing xz override from stdenvLinuxBoot4
Due to xz being override in the last stdenv and also in the previous, the
nixpkgs xz ended up being built by bootstrap-tools, and thus depending on it
through libgcc_so.so.1. That ends up making 'nix' with a runtime
dependency on bootstrap-tools.
2013-01-29 23:39:27 +01:00
Michael Raskin ed2f075930 ARMv7l fails in strange way with ARMv5 bootstrap but works with ARMv6 bootstrap 2013-01-05 23:28:22 +04:00
Michael Raskin 21e57a0d08 Not all parenthesis are extraneous, after all 2013-01-05 22:49:31 +04:00
Michael Raskin bbc494644f ARMv7 seems to need special ARM unpacking procedure, too 2013-01-05 22:14:59 +04:00
Lluís Batlle i Rossell aadf9699cb Merge branch 'stdenv-updates' into stdenv-updates-gcc47 2012-12-31 17:05:51 +01:00
Lluís Batlle i Rossell d16f4bb3ed Merge branch 'pi-stdenv-updates' into stdenv-updates
This adds raspberry pi support. I've almost tested all.

Should fix https://github.com/NixOS/nixpkgs/issues/234
2012-12-31 16:03:16 +00:00
Lluís Batlle i Rossell 8067f14699 Fixing the gcc47 build in stdenv
gcc 4.7 wants an explicit reference to the system include directory,
and that's guessed through 'stdenv ? glibc'.
2012-12-31 10:13:55 +01:00
Lluís Batlle i Rossell d8b0834973 unpack-bootstrap-tools: Removing the patch of libstdc++
Although patching it made some programs run (configure tests), some others
crashed with segfault. So I don't think there is any win patching it. The
proper way to solve the bootstrap in the raspberry pi is, as far as I've been
testing, use glibc 2.17 libs in bootstrap-tools with the same ld.so name as the
bootstrapped glibc.

This is a problem inherent in our way to bootstrap, that first replaces
the glibc of a given gcc+glibc (bootstrap-tools) with gcc-wrapper tricks, and
then builds a new gcc. A nicer way would be to build a gcc without glibc,
then the glibc, then the final gcc, as we do with cross-tools.

Some comments about this problem in
https://github.com/NixOS/nixpkgs/issues/234#issuecomment-11764352
2012-12-30 13:53:48 +00:00
Lluís Batlle i Rossell cfdc532102 Updating bootstrap tools to ones with glibc 2.17
This solves the problem of the change of name in ld.so between
glibc 2.13 and 2.17 (at least for armhf). Some comments about it in
https://github.com/NixOS/nixpkgs/issues/234#issuecomment-11764352

As there says, without this, gmp (after glibc built) tests crashed
- segfault.
2012-12-30 13:50:31 +00:00
Michael Raskin df65a79bb3 Export shell packages from stdenvLinux
Now that we have a way to alter /bin/sh in chroots on non-NixOS Linux
platforms, it may be useful to have access to stdenv.shell package and to
static bash contained in bootstrap tools. So make them accessible via stdenv
attribute set.
2012-12-30 15:29:02 +04:00
Lluís Batlle i Rossell 0ba8b50e83 Fixing again about libstdc++.
I also move the 'echo patching' lines down, so they are printed
only for files really patched.
2012-12-29 23:46:00 +00:00
Lluís Batlle i Rossell 52ac6f96aa Fix on prev commit: the bootstrap tools don't have libmudflap
Out of glibc libs, only libstdc++ requires ld.so.
2012-12-29 23:31:48 +00:00
Lluís Batlle i Rossell f050675458 unpack bootstrap tools arm: fix more rpaths
libstdc++ and libmudflapth link to the dynamic loader; if the
bootstrap uses another dynamic loader name, and the rpath of these
libs isn't changed, they will fail to load.
2012-12-29 23:14:25 +00:00
Lluís Batlle i Rossell f2133155d8 armv6l: new bootstrap-tools
Trying again to get a hardfp compiler.
2012-12-29 07:47:13 +00:00
Lluís Batlle i Rossell d7fb4db241 armv6l: Updating bootstrap tools to build for harfp 2012-12-28 20:20:18 +00:00
Lluís Batlle i Rossell 2b19eb189d Adapting make-bootstrap-tools-crosspi.nix to crossDrv 2012-12-28 21:22:13 +01:00
Lluís Batlle i Rossell 719ba63004 Merge branch 'stdenv-updates' into pi-stdenv-updates
Conflicts:
	pkgs/development/compilers/gcc/4.6/default.nix
	pkgs/development/compilers/gcc/4.7/default.nix

The 4.7 had some weird parameters added in crossAttrs; I've removed
them, but I don't understand where they come from.
2012-12-28 20:14:01 +00:00
Lluís Batlle i Rossell 33d3cf2d1c Fixes in make-bootstrap-tools-crosspi.nix
It doesn't reference <nixpkgs> anymore. And I fixed the indentation.
2012-12-28 16:39:54 +00:00
Eelco Dolstra f4ed8a3b91 Remove trailing whitespace 2012-12-28 16:41:56 +01:00
Eelco Dolstra cf8daf6312 Add an option ‘stdenv.userHook’ to set a global stdenv setup hook
This allows various applications.  It allows users to set global
optimisation flags, e.g.

  stdenv.userHook = ''NIX_CFLAGS_COMPILE+=" -funroll-loops"'';

But the impetus is as an alternative to issue #229, allowing impure
stdenv setup for people who want to use distcc:

  stdenv.userHook = "source /my/impure/setup-script.sh";

This is probably a bad idea, but at least now it's a bad idea in
people's configuration and not in Nixpkgs. :-)
2012-12-28 16:36:09 +01:00
Eelco Dolstra 6fd4f63530 Revert "Merge pull request #229 from viric/niximpure2-stdenv-updates"
This reverts commit e04b17bfba, reversing
changes made to 1af2ada7d4.
2012-12-28 15:46:45 +01:00
Lluís Batlle i Rossell ee2f05d683 Removing unneeded changes in stdenvLinux, for the pi.
I had those changes from the time when I wanted to bootstrap
its stdenvLinux from armv5tel bootstrap-tools. But that
never worked.
2012-12-27 15:19:23 +00:00
Lluís Batlle i Rossell c41881842b Merge branch 'stdenv-updates' into pi-stdenv-updates 2012-12-27 15:10:55 +00:00
Lluís Batlle i Rossell 120499c03a Setting a public URL for the pi bootstrap tools 2012-12-26 22:42:57 +00:00
Lluís Batlle i Rossell 5258c8a0c6 Going with armv6l-linux bootstrap-tools.
I had lost this change in some branch.
2012-12-26 22:01:41 +00:00
Lluís Batlle i Rossell 764ebc29ab Adding the armv6l bootstrap; I forgot that file in previous commits. 2012-12-26 22:01:36 +00:00
Lluís Batlle i Rossell 50ae899f62 Removing a glibc outdated mention in stdenvLinux 2012-12-26 22:01:31 +00:00
Lluís Batlle i Rossell 4c8bca317b Improving the bootstrap tools (missing libs) 2012-12-26 22:01:08 +00:00
Lluís Batlle i Rossell eeb9720b92 Fixing the bootstrap-tools-crosspi for gcc47 2012-12-26 22:00:58 +00:00
Lluís Batlle i Rossell f16193bd99 Setting gcc47 for the cross build tools 2012-12-26 22:00:39 +00:00
Lluís Batlle i Rossell 5b975f3c90 Adding an attempt to crossbuild bootstrap tools for the pi.
Based on the cross/make-bootstrap-tools.nix I had for the sheevaplug
in my nixos.org svn configuration directory.
2012-12-26 22:00:24 +00:00
root a30086c8d5 Disabling ppl and cloog on gcc for raspberrypi. Shorter stdenv builds. 2012-12-26 21:59:58 +00:00
root 1b29d29c76 First movement to get the raspberrypi stdenv building. 2012-12-26 21:59:54 +00:00
Lluís Batlle i Rossell b190e6cd93 Fixing problems in the previous commit. It didn't work. 2012-12-26 22:20:43 +01:00
Lluís Batlle i Rossell 635880a17a 2nd approach at getting a check for /niximpure in stdenv-updates 2012-12-26 21:38:58 +01:00
Lluís Batlle i Rossell 9b973e02e1 The loongson2f bootstrap files were already at nixos.org.
I make the nix expression point to them.
2012-10-25 23:22:41 +02:00
Lluís Batlle i Rossell 2ac4ad0c9c Setting the loongson2f bootstrap tools in a public place.
It'd be nice having this in nixos.org though.
2012-10-25 23:16:32 +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 94c7bec49d * Call all the stdenvs "stdenv" (rather than e.g. "stdenv-linux")
so that "nix-env -i stdenv" does the expected.

svn path=/nixpkgs/branches/stdenv-updates/; revision=31742
2012-01-20 16:47:54 +00:00
Eelco Dolstra 14aab94aef * Oops.
svn path=/nixpkgs/branches/stdenv-updates/; revision=31734
2012-01-20 10:55:45 +00:00
Eelco Dolstra ee45e160b1 * Prepend the "prehook" rather than sourcing it.
* Don't call xargs with the -r flag in the Darwin bootstrap.

svn path=/nixpkgs/branches/stdenv-updates/; revision=31703
2012-01-19 15:56:17 +00:00
Eelco Dolstra 0d71e75222 * Get rid of params1-5, they're obsolete.
svn path=/nixpkgs/branches/stdenv-updates/; revision=31700
2012-01-19 15:29:20 +00:00
Eelco Dolstra 0e6fa321bb * Don't use the "replace-literal" command in stdenv; instead use
bash's pattern replacement feature.  "replace-literal" is an
  uncommon command so it was a headache during the bootstrap.

svn path=/nixpkgs/branches/stdenv-updates/; revision=31681
2012-01-19 13:47:26 +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 cfde88976b * Streamline the stdenv bootstrap and resulting closure by removing
some redundant builds (e.g., GMP was built three times).
* Updated GMP to 5.0.2.
* Updated PPL to 0.11.2.
* Remove ad hoc flags to build GCC's dependencies statically.
  Instead, use the ‘makeStaticLibraries’ stdenv adapter.
* Build GMP with C++ support by default.

svn path=/nixpkgs/branches/stdenv-updates/; revision=30891
2011-12-14 14:31:56 +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 e2e7a6f1ce Add XZ to stdenv.
svn path=/nixpkgs/branches/stdenv-updates/; revision=29847
2011-10-14 21:56:11 +00:00
Lluís Batlle i Rossell bff99fe8b5 Making gcc 4.6 that of stdenv.
svn path=/nixpkgs/branches/stdenv-updates/; revision=28958
2011-09-01 14:28:13 +00:00
Shea Levy 4d70ba6cc9 Merge from trunk up through r28790
svn path=/nixpkgs/branches/stdenv-updates/; revision=28792
2011-08-24 19:16:43 +00:00
Shea Levy c892af0a0d Add a comment wondering why our static cpio is configured with creation and passthrough capabilities.
I may test to see if stdenv can be built without these features (I see no reason why not)

svn path=/nixpkgs/trunk/; revision=26698
2011-04-05 15:26:01 +00:00
Shea Levy 55f5360c65 The busybox cpio does not support '-V', so using '-v'
svn path=/nixpkgs/trunk/; revision=26696
2011-04-05 15:05:06 +00:00
Eelco Dolstra 66a2615eea * Fix indentation.
svn path=/nixpkgs/branches/modular-python/; revision=26680
2011-04-04 13:47:04 +00:00
Lluís Batlle i Rossell c1620ef552 Fixing a stdenv problem... 'binutils' where linked with zlib from
bootstrap-tools, because zlib was there and binutils were not having an
explicit buildInput for zlib. Due to that, we ended up with stdenv
(gcc-wrapper) depending on bootstrap-tools as runtime dependency.


svn path=/nixpkgs/branches/stdenv-updates/; revision=24790
2010-11-21 14:29:20 +00:00
Lluís Batlle i Rossell 0eb331fdc9 Updating the reference to the i686-linux bootstrap-tools, so it takes the
newest I uploaded yesterday. These have gcc 4.5.1, that fulfills the glibc
2.12.1 requirement of having a compiler equal or greater to gcc 4.4 to build
proper x86 32-bit code (http://sourceware.org/bugzilla/show_bug.cgi?id=12123)


svn path=/nixpkgs/branches/stdenv-updates/; revision=24523
2010-10-29 12:41:50 +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 0fa35eee66 I still had an error in the stdenvLinux bootstrap; for the previous commit, I
had a little svn mess in the working directory that ended up in a not working
stdenvLinux.

This time I even chose better names for the attributes, so they match better
the comments.


svn path=/nixpkgs/branches/stdenv-updates/; revision=23428
2010-08-25 19:15:16 +00:00
Lluís Batlle i Rossell 0bfa3b030a Finally I wrote well building binutils before glibc in stdenvLinux.
I had done an attempt recently, unsuccesful, which ended in a recent revert.
This change works.
I even updated the comments in the file.


svn path=/nixpkgs/branches/stdenv-updates/; revision=23425
2010-08-25 13:22:48 +00:00
Lluís Batlle i Rossell e7c47f424f The uclibc used in bootstrap-tools needs some options to allow bzip2 to build
with it.


svn path=/nixpkgs/branches/stdenv-updates/; revision=23414
2010-08-24 22:29:58 +00:00
Lluís Batlle i Rossell 643eb3435e Moving back my attempt to build binutils before glibc in stdenvLinux.
What I did results in segfaults in built binaries.

svn merge -c -23370 ^/nixpkgs/branches/stdenv-updates


svn path=/nixpkgs/branches/stdenv-updates/; revision=23376
2010-08-23 19:59:06 +00:00
Lluís Batlle i Rossell d2bcf1340c Adding building 'binutils' before building the 'glibc' in stdenv-linux.
This should allow keeping the i686-linux boostrap-tools.
I updated some days ago the x86_64-linux bootstrap-tools, but that update is
not needed anymore. We can revert that boostrap-tools update if anyone wants.
Pro:
- new gcc building gcc and glibc.
Contra:
- maybe some old systems (patched red had kernels come to mind) break with that update?


svn path=/nixpkgs/branches/stdenv-updates/; revision=23370
2010-08-23 18:05:19 +00:00
Lluís Batlle i Rossell dc19818cc7 Propagating the 'platform' stdenv attribute properly on stdenvLinux,
so it can be used in places like the linuxHeaders expression.

svn path=/nixpkgs/branches/stdenv-updates/; revision=23343
2010-08-21 21:08:57 +00:00
Lluís Batlle i Rossell 221317ae7b Setting new bootstrap-tools for x86_64.
Allowing 'curl' build without some dependencies, if it is told not to build
with them.

Updating the make-bootstrap-tools for the latest gcc/glibc, removing the
dependency on klibc, and updating unpack-boostrap-tools for the latest
boostrap-tools to work.


svn path=/nixpkgs/branches/stdenv-updates/; revision=23305
2010-08-21 12:50:49 +00:00
Lluís Batlle i Rossell b724fa3d44 Adding support for the /lib32 (there was /lib and /lib64 only), for the n32 ABI in mips I'm
making the longsoon2f system for.

svn path=/nixpkgs/branches/stdenv-updates/; revision=23044
2010-08-08 18:53:00 +00:00
Lluís Batlle i Rossell 46082f25f9 Updating from trunk
svn path=/nixpkgs/branches/stdenv-updates/; revision=23027
2010-08-07 20:14:04 +00:00
Eelco Dolstra a1e834e85a * Get rid of the ugly `useFromStdenv' hack in all-packages.nix.
Instead, use the generic package override mechanism to use packages
  from earlier bootstrap phases.
* Don't rely on the existence of attributes such as
  `stdenv.coreutils'.

svn path=/nixpkgs/trunk/; revision=22991
2010-08-06 10:34:34 +00:00
Lluís Batlle i Rossell e0a11f532b Trying to bootstrap gcc 4.5 with ppl, so it does not depend on libstdc++ from the boostrap-tools.
svn path=/nixpkgs/branches/stdenv-updates/; revision=22947
2010-08-04 12:36:35 +00:00
Lluís Batlle i Rossell 9724fb271b Fixing the unpack bootstrap tools script so it works not only for mips.
svn path=/nixpkgs/branches/stdenv-updates/; revision=22855
2010-08-01 22:00:14 +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 937578d5ef Some first changes to get some evaluation working on the fuloong2f
svn path=/nixpkgs/branches/stdenv-updates/; revision=22840
2010-08-01 20:57:13 +00:00
Lluís Batlle i Rossell d30ede1a13 Reverting r22258. I got confused; we don't need a new gcc build in stdenvLinux,
but an up to date ppl package (because the current does not build with such a
new gmp)


svn path=/nixpkgs/branches/stdenv-updates/; revision=22267
2010-06-14 21:40:11 +00:00
Lluís Batlle i Rossell 0feaada94a Adding a new gcc in the middle of the linux stdenv build, so we can have a
final stdenv gcc with ppl.


svn path=/nixpkgs/branches/stdenv-updates/; revision=22258
2010-06-14 14:02:14 +00:00
Yury G. Kudryashov 796ffd9f71 Move "fetchurl restricted" code to requireFile.
This reverts r21474 and r21467.
Also migrate wtk (r21472) to new API.

svn path=/nixpkgs/trunk/; revision=21575
2010-05-03 09:13:17 +00:00
Yury G. Kudryashov 404c314412 Add support for restricted downloads
svn path=/nixpkgs/trunk/; revision=21467
2010-04-30 20:40:42 +00:00
Eelco Dolstra 231b016142 * During the bootstrap, build only 1 instance of Perl instead of 3.
svn path=/nixpkgs/branches/stdenv-updates/; revision=19536
2010-01-19 11:25:33 +00:00
Lluís Batlle i Rossell 60a5f44759 Updating the url for the latest armv5tel linux bootstrap-tools.
svn path=/nixpkgs/branches/stdenv-updates/; revision=18844
2009-12-08 19:34:25 +00:00
Lluís Batlle i Rossell a2b2e6542f New bootstrap-tools for armv5tel, with binutils and gcc-4.4. Without these binutils,
we can't build easily with them gcc-4.4 natively, because of a bug in the ld of the
previous bootstrap-tools.
I updated the unpack script to include the new gcc-4.4 libraries *ppl*.so in patchelfing.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18835
2009-12-08 10:03:20 +00:00
Lluís Batlle i Rossell ba5c242c82 Trying to make "make-bootstrap-tools" include the needed gcc 4.4 dependencies
(dynamic libraries of ppl and cloogppl) into the package.
We need newer binutils in the bootstrap-tools for the armv5tel in order to
be able to build gcc 4.4 from them.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18747
2009-12-01 21:52:08 +00:00
Lluís Batlle i Rossell 6089b48c03 Updating the url to the armv5tel-linux bootstrap files, once niksnut
updated the svn checkout published in http://nixos.org/tarballs/stdenv-linux/


svn path=/nixpkgs/branches/stdenv-updates/; revision=18700
2009-11-29 21:30:46 +00:00
Lluís Batlle i Rossell 641101c7fd Again attempting to add gunzip to the bootstrap-tools to allow the ppq
installation.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18690
2009-11-28 19:21:33 +00:00
Lluís Batlle i Rossell 5c0bb27a86 Adding gunzip to the bootstrap-tools
(required to build ppl with the bootstrap tools, when boostrapping gcc)


svn path=/nixpkgs/branches/stdenv-updates/; revision=18689
2009-11-28 15:38:48 +00:00
Lluís Batlle i Rossell 7ade207f6b - Removed all *NoCross expressions I dupilcated in nixpkgs, while maintaining
the cross compilation functionality.
- I renamed some expected stdenv.mkDerivation parameter attributes so we can
  keep this branch properly updated from trunk. We agreed with Nicolas Pierron
  doing a massive renaming, so all current buildInputs become hostInputs (input
  as build for the host machine, in autotools terminology) , and
  then buildInputs would mean "input as for the build machine".
  By now, the specific "input as for the build machine" is specified through
  buildNativeInputs. We should fix this in the merge to trunk.
- I made the generic stdenv understand the buildNativeInputs, otherwise if
  we start changing nixpkgs expressions so they distinguish the current
  buildInputs into buildInputs and buildNativeInputs, we could break even more
  nixpkgs for other platforms.
- I changed the default result of mkDerivation so it becomes the derivation for
  to be run in the build machine. This allows, without any special rewriting,
  "fetchurl" derivations to be always results for the build machine to use
  them.
- The change above implies that, for anyone wanting to cross-compile, has to
  build the hostDrv of the wanted derivation. For example, after this commit,
  the usual test of "nix-build -A bison.hostDrv arm.nix" works. I described
  the contents of this arm.nix in r18398.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18471
2009-11-19 19:03:34 +00:00
Lluís Batlle i Rossell 0c631f6181 Trying to move all stdenv cross-compiling details out of the stdenv expression,
into a stdenv adapater.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18397
2009-11-17 21:14:57 +00:00
Lluís Batlle i Rossell 2c7fa189fb Making the definition of the cross compiling target an attribute set.
svn path=/nixpkgs/branches/stdenv-updates/; revision=18378
2009-11-16 23:21:13 +00:00
Lluís Batlle i Rossell d06dce4e42 Fixing some conflict on the variable 'cross'.
svn path=/nixpkgs/branches/stdenv-updates/; revision=18357
2009-11-15 19:07:21 +00:00
Lluís Batlle i Rossell 307cbd7b3b First attempt for the full stdenvCross. I think that it should work. The
toolchain for arm built.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18355
2009-11-15 16:48:36 +00:00
Lluís Batlle i Rossell 9b977f5c60 Fixing many things related to the cross compilation in stdenvCross.
It still does not work, but I think I already get glibc cross compiled.
Next: gcc and g++, and set some setup script hooks on stdenvCross.

It took quite enough hours for this commit.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18351
2009-11-15 05:28:35 +00:00
Lluís Batlle i Rossell 2aba922d30 My first attempt at getting cross compilers in nixpkgs.
My idea is to provide special stdenv expressions that will contain in the path
additional cross compilers. As most expressions for programs accept a stdenv parameter, 
we could substitute this parameter with the special stdenv, which will have a
generic builder that attempts the usual "--target=..." and can additionally
have an env variable like "cross" with the target architecture set.
So, finally we could have additional expressions like this:

bashRealArm = makeOverridable (import ../shells/bash) {
    inherit fetchurl bison;
    stdenv = stdenvCross "armv5tel-unknown-linux-gnueabi";
};

Meanwhile it does not work - I still cannot get the cross-gcc to build.

I think it does not fill the previous expressions with a lot of noise, so I
think it may be a good path to follow.

I only touched some files of the current stdenv: gcc-4.3, kernel headers
2.6.28, glibc 2.9, ...

I tried to use the gcc-cross-wrapper, that may be very outdated. Maybe I will
update it, or update the gcc-wrapper expression to make it fit the cross tools,
but meanwhile I even cannot build gcc, so I have not tested the wrapper.

This new idea on cross compiling is not similar to that of the
nixpkgs/branches/cross-compilation, which mostly added bare new expressions for
anything to be cross compiled, if I understood it correctly.

I cared not to break anything of the usual stdenv in all this work.


svn path=/nixpkgs/branches/stdenv-updates/; revision=18343
2009-11-14 08:11:30 +00:00
Lluís Batlle i Rossell 9c79d69710 curl.bz2 should be executable, to keep the same stdenv working as it worked in stdenv-updates
svn path=/nixpkgs/branches/stdenv-updates2/; revision=18276
2009-11-08 00:47:46 +00:00
Lluís Batlle i Rossell b78e001b52 Adding the binary files from stdenv that did not came with the recent 'diff | patch'
I did to get the stdenv-updates changes.


svn path=/nixpkgs/branches/stdenv-updates2/; revision=18275
2009-11-08 00:45:09 +00:00
Lluís Batlle i Rossell 4b27d28701 Porting changes from stdenv-updates into this branch.
This comes from:
svn diff  ^/nixpkgs/trunk/@18255 ^/nixpkgs/branches/stdenv-updates/ > diff
patch -p0 < diff
and then adding into svn all files new from the patch.

trunk@18255 comes from the last time I updated stdenv-updates from trunk.


svn path=/nixpkgs/stdenv-updates2/; revision=18272
2009-11-08 00:32:12 +00:00
Lluís Batlle i Rossell d4aedd92cc I revert my changes to get nixpkgs working on armv5tel-linux.
I thought I didn't change stdenv, but I did. This will go soon into the stdenv
branch then.
Reverse-merging r16467 through r16465.


svn path=/nixpkgs/trunk/; revision=16468
2009-07-26 22:47:33 +00:00