Commit Graph

249 Commits

Author SHA1 Message Date
Eelco Dolstra
acddd261c8 * substituteAll: support arbitrary characters in replacements
(including newlines, backslash, etc.).

svn path=/nixpkgs/trunk/; revision=8882
2007-06-15 11:34:46 +00:00
Eelco Dolstra
210f4950ac * Merge setup-new.sh.
svn path=/nixpkgs/trunk/; revision=8757
2007-05-24 15:29:32 +00:00
Eelco Dolstra
cbc8eee7ac * stdenv: new attribute is64bit.
* stdenv: for convience, provide the library functions in
  pkgs/lib/default.nix through the lib attribute.

svn path=/nixpkgs/trunk/; revision=8740
2007-05-24 13:32:18 +00:00
Eelco Dolstra
9e960a4fb6 * Predicate `isi686'.
svn path=/nixpkgs/trunk/; revision=8721
2007-05-20 20:25:06 +00:00
Eelco Dolstra
a86e3bbf54 * Rebuilt the bootstrap binaries, mostly to fix curl (DNS resolution
in dietlibc was broken).

svn path=/nixpkgs/trunk/; revision=7745
2007-01-22 15:08:16 +00:00
Eelco Dolstra
c240a4774d * ensureDir: allow multiple directories.
* Eval $unpackCmd.

svn path=/nixpkgs/trunk/; revision=7617
2007-01-10 15:44:44 +00:00
Eelco Dolstra
75b6eec2d5 * Second attempt.
svn path=/nixpkgs/trunk/; revision=7521
2006-12-31 19:52:41 +00:00
Eelco Dolstra
5c192229b0 * Urgh.
svn path=/nixpkgs/trunk/; revision=7520
2006-12-31 19:10:40 +00:00
Eelco Dolstra
a26e70c2af * Quick attempt at fixing stdenv-mingw.
svn path=/nixpkgs/trunk/; revision=7519
2006-12-31 19:07:33 +00:00
Eelco Dolstra
1d4d77179c * Always set the prefix.
svn path=/nixpkgs/trunk/; revision=7513
2006-12-28 21:12:44 +00:00
Eelco Dolstra
98e5779a9b * Don't clobber $shell.
svn path=/nixpkgs/trunk/; revision=7512
2006-12-28 11:32:20 +00:00
Eelco Dolstra
bb9f4a2280 * Workaround a bug in older versions of bash.
svn path=/nixpkgs/trunk/; revision=7511
2006-12-28 11:15:12 +00:00
Eelco Dolstra
0eff9a5236 * Fix stdenv-initial.
svn path=/nixpkgs/trunk/; revision=7510
2006-12-28 10:54:39 +00:00
Eelco Dolstra
d15205f8b8 * Set the shell.
svn path=/nixpkgs/trunk/; revision=7504
2006-12-27 18:42:58 +00:00
Eelco Dolstra
138c0ae751 * Merge the new generic builder.
* Removed substitute, it's part of the generic builder now.
* stdenv-initial (Linux): use the real generic builder script.  This
  does require that sed is in the path of the builder of the initial
  stdenv.

svn path=/nixpkgs/trunk/; revision=7498
2006-12-27 18:14:57 +00:00
Eelco Dolstra
7a2c0d1793 * Doh.
svn path=/nixpkgs/trunk/; revision=7496
2006-12-27 17:55:57 +00:00
Eelco Dolstra
2dd4e1b9d3 * Remove dontMakeInstall, it's no longer necessary (just set
installCommand to true or something).

svn path=/nixpkgs/trunk/; revision=7495
2006-12-27 17:48:46 +00:00
Eelco Dolstra
8ab9a58e0d * Split the installPhase into installPhase and fixupPhase. The
fixupPhase strips binaries, runs patchelf, etc.  This is so that
  those things still happen when somebody overrides installPhase.

svn path=/nixpkgs/trunk/; revision=7494
2006-12-27 17:47:09 +00:00
Eelco Dolstra
1d9dcbba22 * Allow the patch flags to be overriden through $patchFlags.
svn path=/nixpkgs/trunk/; revision=7493
2006-12-27 17:33:37 +00:00
Eelco Dolstra
8988c16eea * Pass makeFlags to `make check'.
svn path=/nixpkgs/trunk/; revision=7492
2006-12-27 17:31:55 +00:00
Eelco Dolstra
ed8fff32af * Pass makeFlags to `make install' as well. This is because quite
often the same flags need to be passed to both `make' and `make
  install'.  Added a variable buildFlags for flags that should only be
  passed to `make'.

svn path=/nixpkgs/trunk/; revision=7491
2006-12-27 17:30:40 +00:00
Eelco Dolstra
81025a05df * Variable $installTargets to override the install target in
installPhase.

svn path=/nixpkgs/trunk/; revision=7490
2006-12-27 17:26:43 +00:00
Eelco Dolstra
592cb44e52 * Fix the quadratic performance in substitute().
svn path=/nixpkgs/trunk/; revision=7488
2006-12-27 17:14:00 +00:00
Eelco Dolstra
0a91ca3091 * Allow "make install" to be overriden using $installCommand.
svn path=/nixpkgs/trunk/; revision=7340
2006-12-13 20:08:24 +00:00
Eelco Dolstra
e002f96a56 * TMI.
svn path=/nixpkgs/trunk/; revision=7315
2006-12-11 15:46:54 +00:00
Eelco Dolstra
7dfbf0eba7 * Move the substitution functions into stdenv (not merged yet).
* If the environment variable buildCommand is set, then eval that
  instead of doing the build phases.  This is used by the runCommand
  function in all-packages.nix to allow one-lines like

    foo = runCommand "foo" {} "mkdir $out; echo foo > $out/foo";
    

svn path=/nixpkgs/trunk/; revision=7298
2006-12-10 22:24:42 +00:00
Martin Bravenboer
d7fcf2f810 Added /usr/local/bin to the initial search path to support Massala
svn path=/nixpkgs/trunk/; revision=7011
2006-11-13 10:09:56 +00:00
Eelco Dolstra
9a6683d6a2 * Linux kernel: updated to 2.6.18.1.
* Kernel: accept a list of kernel patches through the kernelPatches
  argument.  The names of the patches are added to the description
  attribute (e.g., "The Linux kernel (with patches:
  skas-2.6.18-v9-pre9)").
* Generic builder (forked in setup-new.sh): support patches that are
  compressed using gzip or bzip2.

svn path=/nixpkgs/trunk/; revision=6913
2006-10-31 11:40:35 +00:00
Eelco Dolstra
9050bc10fe * Latest bootstrap binaries for x86_64.
svn path=/nixpkgs/trunk/; revision=6907
2006-10-30 13:40:18 +00:00
Eelco Dolstra
37bbcde566 * Don't nuke unconditionally.
svn path=/nixpkgs/trunk/; revision=6905
2006-10-30 12:57:30 +00:00
Eelco Dolstra
f0a239989e * __currentSystem is evil.
svn path=/nixpkgs/trunk/; revision=6899
2006-10-29 00:05:17 +00:00
Eelco Dolstra
0c0d30d248 * Fix the URLs / hashes.
svn path=/nixpkgs/trunk/; revision=6891
2006-10-28 13:51:49 +00:00
Eelco Dolstra
bfa469d192 * New (smaller) bootstrap binaries for powerpc.
svn path=/nixpkgs/trunk/; revision=6889
2006-10-28 13:35:22 +00:00
Eelco Dolstra
64f8e95cf8 * Remove references from some GCC header file on powerpc.
svn path=/nixpkgs/trunk/; revision=6888
2006-10-28 13:32:49 +00:00
Eelco Dolstra
3a6754f6bb * gcc-4.1-temp -> gcc-4.1.
* Use real URLs.

svn path=/nixpkgs/trunk/; revision=6884
2006-10-27 23:14:41 +00:00
Eelco Dolstra
c37304db96 * Oops, the bootstrap tools contained an impure gzip/gunzip.
* To prevent this kind of thing, check that all tools are statically
  linked.
* Use findutils 4.2.27, 4.2.28 doesn't build with dietlibc.

svn path=/nixpkgs/trunk/; revision=6881
2006-10-27 22:50:58 +00:00
Eelco Dolstra
de25bee83d * Of course, the latest GNU tar has the same gnulib header file shit
as coreutils.

svn path=/nixpkgs/trunk/; revision=6880
2006-10-27 20:14:19 +00:00
Eelco Dolstra
3ea7d9d272 * Fix static linking in gcc.
* Use the coreutils in dietlibc.
* Add objdump to the binutils static tarball.

svn path=/nixpkgs/trunk/; revision=6879
2006-10-27 20:08:53 +00:00
Eelco Dolstra
01fbf62a2c * nativeGlibc -> nativeLibc (gcc-cross-wrapper is probably broken
right now; should merge gcc-wrapper changes).

svn path=/nixpkgs/trunk/; revision=6876
2006-10-27 13:44:17 +00:00
Eelco Dolstra
0e776c19d2 * Real URLs.
svn path=/nixpkgs/trunk/; revision=6869
2006-10-26 22:55:04 +00:00
Eelco Dolstra
609710f102 * Enable the pure stdenv-linux for powerpc.
svn path=/nixpkgs/trunk/; revision=6867
2006-10-26 22:41:46 +00:00
Eelco Dolstra
0b7e256162 * Hook variables in the generic builder are now executed using eval.
This has a major advantage: you can write hooks directly in Nix
  expressions.  For instance, rather than write a builder like this:

    source $stdenv/setup

    postInstall=postInstall
    postInstall() {
        ln -sf gzip $out/bin/gunzip
        ln -sf gzip $out/bin/zcat
    }

    genericBuild

  (the gzip builder), you can just add this attribute to the
  derivation:

    postInstall = "ln -sf gzip $out/bin/gunzip; ln -sf gzip $out/bin/zcat";

  and so a separate build script becomes unnecessary.  This should
  allow us to get rid of most builders in Nixpkgs.

* Allow configure and make arguments to contain whitespace.
  Previously, you could say, for instance

    configureFlags="CFLAGS=-O0"

  but not

    configureFlags="CFLAGS=-O0 -g"

  since the `-g' would be interpreted as a separate argument to
  configure.  Now you can say

    configureFlagsArray=("CFLAGS=-O0 -g")

  or similarly

    configureFlagsArray=("CFLAGS=-O0 -g" "LDFLAGS=-L/foo -L/bar")

  which does the right thing.  Idem for makeFlags, installFlags,
  checkFlags and distFlags.

  Unfortunately you can't pass arrays to Bash through the environment,
  so you can't put the array above in a Nix expression, e.g.,

    configureFlagsArray = ["CFLAGS=-O0 -g"];

  since it would just be flattened to a since string.  However, you
  can use the inline hooks described above:

    preConfigure = "configureFlagsArray=(\"CFLAGS=-O0 -g\")";


svn path=/nixpkgs/trunk/; revision=6863
2006-10-26 22:20:25 +00:00
Eelco Dolstra
43fb5626d6 * Bootstrap tools for the pure stdenv-linux on powerpc-linux.
svn path=/nixpkgs/trunk/; revision=6860
2006-10-26 20:07:49 +00:00
Eelco Dolstra
554ea561dd * coreutils won't build with dietlibc on ppc.
svn path=/nixpkgs/trunk/; revision=6858
2006-10-26 15:02:16 +00:00
Eelco Dolstra
47d7e73abb * Real URLs.
svn path=/nixpkgs/trunk/; revision=6853
2006-10-25 17:27:32 +00:00
Eelco Dolstra
b831b236ba * Use the pure stdenv on x86_64.
svn path=/nixpkgs/trunk/; revision=6849
2006-10-25 13:27:43 +00:00
Eelco Dolstra
371d2ddbf2 * Back out r6830.
svn path=/nixpkgs/trunk/; revision=6846
2006-10-25 11:06:44 +00:00
Eelco Dolstra
3ba5d075a4 * New binaries.
svn path=/nixpkgs/trunk/; revision=6845
2006-10-25 10:56:26 +00:00
Eelco Dolstra
9c611a19c6 * Glibc no longer containing profiling libraries.
* GCC no longer does a multilib build.

svn path=/nixpkgs/trunk/; revision=6842
2006-10-25 09:51:32 +00:00
Eelco Dolstra
c8b1035c4f * Doh.
svn path=/nixpkgs/trunk/; revision=6839
2006-10-25 07:48:59 +00:00