Commit graph

208 commits

Author SHA1 Message Date
Eelco Dolstra 0617704deb * Step 2. Too bad we can't replace files atomically in SVN!
svn path=/nixpkgs/trunk/; revision=6315
2006-08-29 18:07:52 +00:00
Eelco Dolstra 5df13f87f4 * Step 1...
svn path=/nixpkgs/trunk/; revision=6314
2006-08-29 18:07:33 +00:00
Armijn Hemel c2f5345172 add attribute isLinux. Nice for packages we only want to build on linux, but on different platforms (currently i686-linux and powerpc-linux)
svn path=/nixpkgs/trunk/; revision=6306
2006-08-29 13:45:21 +00:00
Eelco Dolstra 9b3c21b9a4 * Well-typedness.
svn path=/nixpkgs/trunk/; revision=6296
2006-08-28 21:23:36 +00:00
Martin Bravenboer 5634042fa9 M stdenv/mingw/pkgs/default.nix
A    stdenv/mingw/pkgs/pkgconfig-builder.sh

Bootstrap pkg-config: support the setup hook.

M    stdenv/mingw/fix-builder.sh

Fix the "system" variable.


svn path=/nixpkgs/trunk/; revision=6267
2006-08-27 12:52:06 +00:00
Martin Bravenboer 1838237d25 More variables to fix
svn path=/nixpkgs/trunk/; revision=6266
2006-08-27 11:27:25 +00:00
Martin Bravenboer a2dd4f8905 More variables to fix
svn path=/nixpkgs/trunk/; revision=6265
2006-08-27 03:56:58 +00:00
Martin Bravenboer 4b5fd3990a Fix in install of curl
svn path=/nixpkgs/trunk/; revision=6258
2006-08-27 00:28:53 +00:00
Martin Bravenboer 961b20c1b7 Added pre release of stratego libraries, fixed support for configureFlags in MinGW, add binary pkg-config distribution for bootstrapping. Optionally use pkgconfig from the stdenv (again, for bootstrapping)
svn path=/nixpkgs/trunk/; revision=6253
2006-08-26 20:11:31 +00:00
Martin Bravenboer f0129a3f44 Fixes to support the new stdenvType
svn path=/nixpkgs/trunk/; revision=6242
2006-08-25 20:58:02 +00:00
Eelco Dolstra a177a9ac7c * When calling all-packages.nix, pass system explicitly and don't rely
on __currentSystem being "i686-linux", because we might not be on
  "i686-linux".

svn path=/nixpkgs/trunk/; revision=6218
2006-08-23 16:18:02 +00:00
Eelco Dolstra ca6ae0b53d * Support different kinds of stdenvs on a particular system (like
"i686-cygwin") by adding an argument "stdenvType" to specify which
  stdenv to use (like "i686-mingw").

svn path=/nixpkgs/trunk/; revision=6213
2006-08-23 15:58:54 +00:00
Martin Bravenboer 97202ee3b7 Patch for aterm library on mingw (see meta-devel-list)
Moved all the shell fixes to fix-builder.sh, which is now always invoked.

Added aterm to the list of packages provided by mingw.nix

svn path=/nixpkgs/trunk/; revision=6152
2006-08-17 15:33:49 +00:00
Martin Bravenboer 77a5272922 Added a fix-builder to fix most of the builder scripts automatically. Basic packages, such as zlib and getopt now build.
svn path=/nixpkgs/trunk/; revision=6143
2006-08-17 01:49:53 +00:00
Martin Bravenboer 18d81e23fe Cleanup of various echo and debug messages. Added top-level mingw.nix for use with nix-env, because many asserts are broken all-packages.nix does not work with mingw stdenv.
svn path=/nixpkgs/trunk/; revision=6142
2006-08-17 01:25:46 +00:00
Martin Bravenboer bda8fc5621 Dropped gcc-wrapper
svn path=/nixpkgs/trunk/; revision=6141
2006-08-17 00:55:03 +00:00
Martin Bravenboer 688fff92de Major work on the mingw stdenv. Basics now works.
- clone of fetchurl that invokes a given chmod to workaround problems
with inappropriate file permissions (executable files are not allowed
by Nix)

- cygpath tool to determine the full windows path of a cygwin
tool. This tool is used to give fetchurl the windows path to chmod.

- native curl.exe

- gcc-wrapper no longer used

- all-packages.nix: allows stdenv to specify fetchurl.


svn path=/nixpkgs/trunk/; revision=6140
2006-08-17 00:54:32 +00:00
Martin Bravenboer 44f6c2ef74 Build the mingw w32api from source for the mingw stdenv
svn path=/nixpkgs/trunk/; revision=6137
2006-08-16 19:13:43 +00:00
Martin Bravenboer d1f3a668a0 Victory: mingw stdenv with mingw-runtime from source
svn path=/nixpkgs/trunk/; revision=6136
2006-08-16 18:35:39 +00:00
Martin Bravenboer 890ce7f266 Cleanup
svn path=/nixpkgs/trunk/; revision=6135
2006-08-16 15:48:20 +00:00
Martin Bravenboer 38de63873c Another initial MinGW environment, having some more basic tools. This will allow us to compile some packages for the stdenv from source.
svn path=/nixpkgs/trunk/; revision=6134
2006-08-16 15:43:34 +00:00
Martin Bravenboer 4957325c31 Use gcc wrapper
svn path=/nixpkgs/trunk/; revision=6133
2006-08-16 15:03:13 +00:00
Martin Bravenboer 5f88a929cc Added mingw gcc
svn path=/nixpkgs/trunk/; revision=6132
2006-08-16 14:35:43 +00:00
Martin Bravenboer 884b6f9a0d Added make
svn path=/nixpkgs/trunk/; revision=6131
2006-08-16 14:15:00 +00:00
Martin Bravenboer 5992b95b64 Basic stdenv for mingw. No compiler yet and setup needs more fixing.
svn path=/nixpkgs/trunk/; revision=6124
2006-08-15 21:25:14 +00:00
Martin Bravenboer 42187add34 Various mingw fixes
svn path=/nixpkgs/trunk/; revision=6123
2006-08-15 16:26:21 +00:00
Martin Bravenboer 56315425c9 Initial work on MinGW/MSYS standard environment
svn path=/nixpkgs/trunk/; revision=6122
2006-08-15 14:46:41 +00:00
Eelco Dolstra bf1e734f85 * Don't use the subpath operator (~) anymore, it's subsumed by normal
concatenation (+).

svn path=/nixpkgs/trunk/; revision=6080
2006-08-09 15:05:30 +00:00
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
Armijn Hemel 505a857e55 don't match a trailing slash
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1838
2004-12-06 19:00:06 +00:00
Armijn Hemel 30fd5fd0d1 don't forget passing sed to our script
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1837
2004-12-06 18:50:27 +00:00
Armijn Hemel fd3077a984 replace old glibc reference with $out
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1836
2004-12-06 18:30:52 +00:00
Armijn Hemel 068fd44898 right path to chmod
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1834
2004-12-06 17:00:22 +00:00
Armijn Hemel fddd91238a first make all patchable files writable before patching, then change them back (yes, I've checked it, none of the files are writeable, so that all should go well :) )
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1833
2004-12-06 16:49:55 +00:00
Armijn Hemel 771534ece7 svn path=/nixpkgs/branches/nixos-pkgs/; revision=1831 2004-12-01 18:56:46 +00:00
Armijn Hemel 98ce16d2ba addd sutff
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1830
2004-12-01 18:56:22 +00:00
Armijn Hemel ff61b869e4 we also require patchelf (this is sooooo ugly)
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1829
2004-12-01 16:10:18 +00:00
Armijn Hemel 63b86ec696 more fixes
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1828
2004-12-01 16:09:21 +00:00
Armijn Hemel 3782c94ebb typo fix
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1827
2004-12-01 16:07:32 +00:00
Armijn Hemel 222cedd14b let's patch all our glibc thingies!!
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1826
2004-12-01 15:39:39 +00:00
Armijn Hemel fbce69c4ac we need patchelf
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1824
2004-12-01 14:42:38 +00:00
Armijn Hemel d1d2e2d5c2 replace all occurances of curl 7.12.0 with 7.12.2
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1812
2004-11-29 14:40:28 +00:00
Armijn Hemel 1e3c657031 our 7.12.0 was not resolving (thank you glibc!), replaced with statically linked (with uclibc) 7.12.2
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1811
2004-11-29 14:36:29 +00:00
Armijn Hemel a30b6755ad inherit the extra2 parameter
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1731
2004-11-09 13:39:04 +00:00
Armijn Hemel 53577663f5 add (refactored) static stuff
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1679
2004-11-04 12:20:54 +00:00
Armijn Hemel a8fa64c3da commit some stuff
svn path=/nixpkgs/branches/nixos-pkgs/; revision=1678
2004-11-04 12:19:32 +00:00
Armijn Hemel 342c818833 oops, don't forget binutils
svn path=/nixpkgs/trunk/; revision=1587
2004-10-19 15:49:15 +00:00
Armijn Hemel 69ef6a1d5e add quotes for tarball variable
svn path=/nixpkgs/trunk/; revision=1586
2004-10-19 15:32:53 +00:00
Armijn Hemel 97ef0bce9a also add a statically linked gcc
svn path=/nixpkgs/trunk/; revision=1585
2004-10-19 15:17:29 +00:00
Armijn Hemel 41a9a00c9b commit a whole bunch of statically linked packages. In the builder we add gzip to the PATH, because tar expects it to be there. This *should* be enough to bootstrap a whole new environment inside UML, give or take one or two packages I might have forgotten :)
svn path=/nixpkgs/trunk/; revision=1584
2004-10-19 15:16:14 +00:00
Armijn Hemel 99b011dc30 don't make bzip2 an initial package, but download it instead. After all, we've got gzip :)
svn path=/nixpkgs/trunk/; revision=1583
2004-10-19 15:10:38 +00:00