Commit Graph

130 Commits

Author SHA1 Message Date
Eelco Dolstra
f1166e0bbb * Through the magic of functional programming, let stdenv export a
function to regenerate itself with a different setup script.  This
  is useful for experimenting with changes to the setup script in
  specific packages without triggering a rebuild of everything.

* stdenv/generic/setup-latest.sh is a branch of setup.sh containing
  pending changes that will be merged into setup.sh eventually.

* setup-latest.sh: don't use tar's "z" and "j" flags.  Rather, call
  gzip and bunzip2 directly.

svn path=/nixpkgs/trunk/; revision=6066
2006-08-07 13:31:18 +00:00
Martin Bravenboer
835f452e70 * Allow packages to enabled shared libraries on cygwin.
(ideally, this should be the other way around, but I have no idea how
many packages will break if we enable shared libraries by default)


svn path=/nixpkgs/trunk/; revision=5923
2006-07-24 21:20:49 +00:00
Eelco Dolstra
4c68a103e8 * Pass along realCurl.
svn path=/nixpkgs/trunk/; revision=5830
2006-07-20 15:21:36 +00:00
Eelco Dolstra
3defd9a3d3 * On Darwin, use Apple's gcc fork.
svn path=/nixpkgs/trunk/; revision=5715
2006-07-14 22:34:24 +00:00
Eelco Dolstra
bf7ca59eaa * Doh!
svn path=/nixpkgs/trunk/; revision=5708
2006-07-14 13:34:39 +00:00
Eelco Dolstra
dd325103df * Better stdenv for Darwin: uses gcc, coreutils etc. built in Nix, but
external binutils (i.e., Apple's cctools in /usr/bin).

svn path=/nixpkgs/trunk/; revision=5706
2006-07-14 11:59:38 +00:00
Eelco Dolstra
10d67f5c7a * Reviving stdenvNix.
svn path=/nixpkgs/trunk/; revision=5702
2006-07-14 09:28:09 +00:00
Eelco Dolstra
b2f6e204a2 * Remove redundant files, move path.nix around a bit.
svn path=/nixpkgs/trunk/; revision=5701
2006-07-14 08:35:59 +00:00
Eelco Dolstra
02e13f0eb4 * Regularize the treatment of the "gcc" attributes in
all-packages.nix.  All "gcc*" attributes are wrapped GCC instances
  now.

svn path=/nixpkgs/trunk/; revision=5671
2006-07-10 15:42:19 +00:00
Martin Bravenboer
bb9f6fbc59 Support i686-darwin
svn path=/nixpkgs/trunk/; revision=5597
2006-07-05 16:33:41 +00:00
Eelco Dolstra
d9d8a1dd57 * Disable dynamic linking on Cygwin until we figure out how to deal
with the lack of an RPATH.

svn path=/nixpkgs/trunk/; revision=5362
2006-06-01 09:41:31 +00:00
Eelco Dolstra
c067e6afa2 * Fix stdenv-nix.
svn path=/nixpkgs/trunk/; revision=5358
2006-05-31 15:08:25 +00:00
Eelco Dolstra
4a00c41986 * Fix stdenv-native.
svn path=/nixpkgs/trunk/; revision=5354
2006-05-31 12:18:01 +00:00
Eelco Dolstra
c4ea3e8d77 * Filter out the meta attribute, again.
svn path=/nixpkgs/trunk/; revision=5093
2006-03-24 16:07:42 +00:00
Eelco Dolstra
bb28c87406 * Filter out the meta attribute.
svn path=/nixpkgs/trunk/; revision=5091
2006-03-24 14:20:31 +00:00
Eelco Dolstra
baec8f5b38 * stdenv.mkDerivation now takes an optional attribute "meta" that
contains arbitrary information about a package, like this:

  meta = {
    homepage = "http://gcc.gnu.org/";
    license = "GPL/LGPL";
    description = "GNU Compiler Collection, 4.0.x";
  };

  The "meta" attribute is not passed to the actual derivation
  operation, so it's not a dependency --- changes to "meta" attributes
  don't trigger a recompilation.

  Now we have to standardise some useful attributes ;-)

svn path=/nixpkgs/branches/usability/; revision=5024
2006-03-10 16:12:46 +00:00
Eelco Dolstra
03aef934d1 * Fix "infinite recursion" errors on FreeBSD and Darwin.
svn path=/nixpkgs/branches/usability/; revision=4997
2006-03-08 15:34:05 +00:00
Eelco Dolstra
07bc3fbf00 * Push packages from the final stdenv bootstrapping phase to
all-packages.  That is, an attribute like "bash" in all-packages.nix
  should evaluate to the "bash" used to build stdenv, it shouldn't
  build a new one.

  Hm, this would be a lot cleaner if we had lazy_rec ;-)

svn path=/nixpkgs/branches/usability/; revision=4775
2006-02-09 17:04:18 +00:00
Eelco Dolstra
29c64c6c67 * Move top-level/stdenvs.nix to the stdenv/ directory.
svn path=/nixpkgs/branches/usability/; revision=4774
2006-02-09 15:55:20 +00:00
Eelco Dolstra
ffe91d36c3 * Merge all-packages.nix into all-packages-generic.nix.
svn path=/nixpkgs/branches/usability/; revision=4765
2006-02-08 17:37:45 +00:00
Armijn Hemel
7bd6a3599b use newer curl. This fixes a few security bugs and this static version of curl
has been built using Nix itself. I've tested this, it works.

svn path=/nixpkgs/trunk/; revision=4451
2005-12-28 02:02:56 +00:00
Armijn Hemel
62c3e9e7a1 add the statically linked curl-7.15.1 here.
Now, switching the curl to this version did not trigger a massive rebuild on
my system, which puzzles me. Maybe it is because no checksum is recorded?
Am I doing something wrong?

svn path=/nixpkgs/trunk/; revision=4434
2005-12-25 01:36:49 +00:00
Eelco Dolstra
82e678362f * "." -> "source".
svn path=/nixpkgs/trunk/; revision=4335
2005-12-05 14:11:09 +00:00
Eelco Dolstra
552de99c19 * Update a bunch of base packages.
svn path=/nixpkgs/trunk/; revision=4065
2005-10-11 14:29:30 +00:00
Eelco Dolstra
49220563df * Purity fixes, courtesy of NixOS :-)
svn path=/nixpkgs/trunk/; revision=3675
2005-08-24 09:21:37 +00:00
Eelco Dolstra
454707da23 * catamaran.labs.cs.uu.nl -> nix.cs.uu.nl.
svn path=/nixpkgs/trunk/; revision=3660
2005-08-22 08:39:27 +00:00
Eelco Dolstra
6f8e9bc2f6 * Make the grep call optional.
svn path=/nixpkgs/trunk/; revision=3330
2005-07-13 09:07:54 +00:00
Eelco Dolstra
5b15f75a13 * mkDerivation: accept an argument `realBuilder' (stupid name) to
override the default builder (i.e., bash).  For example,

    stdenv.mkDerivation {
      realBuilder = perl ~ "bin/perl";
      args = [ "-w" ./builder.pl ];
    }

svn path=/nixpkgs/trunk/; revision=3219
2005-06-20 15:03:52 +00:00
Eelco Dolstra
0a2f531aea * Don't patch symlinked shared libraries.
svn path=/nixpkgs/trunk/; revision=3195
2005-06-17 13:46:04 +00:00
Eelco Dolstra
32d7a746a2 * Move ensureDir() up, otherwise calls to fail() might fail.
svn path=/nixpkgs/trunk/; revision=3192
2005-06-17 11:42:53 +00:00
Eelco Dolstra
a3407f79dd * Alias make to gmake on FreeBSD.
svn path=/nixpkgs/trunk/; revision=3049
2005-05-16 01:21:53 +00:00
Eelco Dolstra
0217d8b204 * Add a simple standard environment for FreeBSD.
* Use the system Perl on all non-i686-linux platforms.
* Don't build Python support in libxml2 on most platforms.

svn path=/nixpkgs/trunk/; revision=3019
2005-05-10 12:59:28 +00:00
Eelco Dolstra
edbfa75d01 * Use /bin/bash, not /bin/sh, since we really do need bash.
svn path=/nixpkgs/trunk/; revision=3018
2005-05-10 09:22:14 +00:00
Eelco Dolstra
6b8a8c92da * Fix regexp to match base-32 hashes.
svn path=/nixpkgs/trunk/; revision=2375
2005-03-10 17:32:09 +00:00
Eelco Dolstra
12c0a6351d * Use --strip-debug', not --strip-all', so that we can at least get
proper backtraces.  Otherwise debugging of Nix binaries is very
  hard.

svn path=/nixpkgs/trunk/; revision=2292
2005-02-23 22:01:54 +00:00
Eelco Dolstra
5b6b8d3e3e * Use the latest patchelf. This fixes broken gconv modules (e.g.,
$glibc/lib/gconv/ISO-2022-JP.so has an RPATH of `$ORIGIN' so that it
  can find glibc/lib/gconv/libJIS.so; `$ORIGIN' should not be filtered
  out of the RPATH).

svn path=/nixpkgs/trunk/; revision=2290
2005-02-23 14:15:33 +00:00
Eelco Dolstra
afc8ae625f * Make it possible to override the log writer (from its default,
`tee').  Useful in the build farm where we want to write logs
  through `bzip2'.

svn path=/nixpkgs/trunk/; revision=2270
2005-02-22 15:03:24 +00:00
Eelco Dolstra
2e0380b7a0 * Use the generic substituter in the generation of stdenv and gcc-wrapper.
svn path=/nixpkgs/trunk/; revision=2269
2005-02-22 14:32:56 +00:00
Eelco Dolstra
290fba0cb6 * Remove unused stuff.
svn path=/nixpkgs/trunk/; revision=2268
2005-02-22 09:57:36 +00:00
Eelco Dolstra
399d23373e * Split downloading and unpacking.
* Add an MD5 hash for the downloaded files.
* Rename some files.

svn path=/nixpkgs/trunk/; revision=2267
2005-02-22 09:55:03 +00:00
Eelco Dolstra
31ff064352 * Use bzip instead of gzip for downloaded archives.
* Combine most of the archives together into one file (static.bz2).
* Don't depend on Subversion directories, but single files only.
  Otherwise any Subversion operation may cause a rebuild because
  something in .svn changes.  It would be nice if .svn directories
  were filtered out when copying things to the store.
* Glibc tarball: removed all .so files, /bin and /sbin, etc., and put
  linux-headers in the Glibc tarball.

svn path=/nixpkgs/trunk/; revision=2265
2005-02-22 07:59:15 +00:00
Eelco Dolstra
63bd7cdb79 * Rename stdenv-nix-linux-static to stdenv-linux.
svn path=/nixpkgs/trunk/; revision=2264
2005-02-21 20:54:34 +00:00
Eelco Dolstra
3e02536184 * Move the stdenv-linux bootstrap from stdenvs.nix to the
nix-linux-static directory.
* Get rid of the old nix-linux.
* Commented the bootstrap process.

svn path=/nixpkgs/trunk/; revision=2263
2005-02-21 20:42:07 +00:00
Eelco Dolstra
5f3c1f22ce * Forgotten.
svn path=/nixpkgs/trunk/; revision=2262
2005-02-21 20:40:51 +00:00
Eelco Dolstra
ecd2596677 * Do the generic sed thing for Glibc.
* Remove debug stuff from ld-wrapper.

svn path=/nixpkgs/trunk/; revision=2261
2005-02-21 17:57:53 +00:00
Eelco Dolstra
e6744d0f89 * Merge diff between trunk/pkgs@1646 and branches/nixos-pkgs@2256;
this contains mostly Armijn's pure stdenv-linux.

* After unpacking the statically linked GCC, patch all store paths to
  /nix/store/ffffffffffffffffffffffffffffffff.  Ugly hack to prevent
  undeclared references but it works.

* We don't need Glib's dynamic libraries in the first bootstrap stage;
  delete them.  Actually the downloaded Glibc binary is only needed
  for building Glibc, since GCC needs a C compiler to build some
  programs in `configure'.  So static linking is fine for that.  Maybe
  it would be better to patch `configure' so that we don't need a
  pre-built Glibc at all.

* Set the svn:executable property on `cp' and `patchelf'.

* In Glibc, revert to LinuxThreads.  Maybe NPTL will work, but TLS
  support is a problem.

* Delete most Glibc patches; they're no longer needed since the branch
  updated it to 20050110.
  
* Some cleanups.

svn path=/nixpkgs/trunk/; revision=2258
2005-02-21 16:03:34 +00:00
Armijn Hemel
0e6b2045ea we actually *do* have patchelf available and we want to use it to patch
our freshly built glibc, otherwise we get weird blah errors

svn path=/nixpkgs/branches/nixos-pkgs/; revision=2021
2005-01-14 11:45:16 +00:00
Armijn Hemel
bb7c8d72ed move patchelf in a directory, so it can play nice along with things
like initialPath

svn path=/nixpkgs/branches/nixos-pkgs/; revision=2020
2005-01-14 11:41:26 +00:00
Armijn Hemel
aa150ce949 don't forget stuff
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1871
2004-12-15 16:07:21 +00:00
Armijn Hemel
e656dad03f remove all other occurences of old glibc path
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1839
2004-12-06 19:20:15 +00:00