Commit Graph

156 Commits

Author SHA1 Message Date
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
Lluís Batlle i Rossell
532fc4a05d Adding armv5tel to the 'if' checks in stdenv, gcc-wrapper and kernel headers
svn path=/nixpkgs/trunk/; revision=16466
2009-07-26 21:48:10 +00:00
Lluís Batlle i Rossell
dcf0a95a72 Updating to allow ld-linux.so.? interpreters, instead of always .so.2
svn path=/nixpkgs/trunk/; revision=16465
2009-07-26 21:48:00 +00:00
Eelco Dolstra
cdf4cf5c23 * Sync with the trunk.
svn path=/nixpkgs/branches/stdenv-updates/; revision=16094
2009-06-30 11:42:15 +00:00
Eelco Dolstra
a830968c53 * New bootstrap binaries (from r16022 in the trunk). Don't set
LD_LIBRARY_PATH since it breaks /bin/sh on non-NixOS platforms (and
  reverted the previous "fix" in r15470).

svn path=/nixpkgs/branches/stdenv-updates/; revision=16029
2009-06-22 19:49:42 +00:00
Eelco Dolstra
ef83c754f6 * Updated the function that builds the bootstrap binaries.
* Use patchelf 0.5 and use the --force-rpath flag.  This removes the
  need for setting LD_LIBRARY_PATH and so should fix bootstrapping
  Nixpkgs on non-NixOS platforms.

svn path=/nixpkgs/trunk/; revision=16022
2009-06-22 14:28:07 +00:00
Eelco Dolstra
89b8ab2d78 * Work around /bin/sh being broken by an LD_LIBRARY_PATH that contains
another Glibc.

svn path=/nixpkgs/branches/stdenv-updates/; revision=15470
2009-05-06 13:49:12 +00:00
Eelco Dolstra
671d53dd35 * Allow the user to install stdenv (nix-env -i stdenv) and get all the
packages in the stdenv as propagated user environment packages.

svn path=/nixpkgs/branches/stdenv-updates/; revision=15300
2009-04-25 14:08:29 +00:00
Eelco Dolstra
f5ef461217 svn path=/nixpkgs/branches/stdenv-updates/; revision=14979 2009-04-09 15:25:29 +00:00