Commit graph

359 commits

Author SHA1 Message Date
Eelco Dolstra 16f2d8b2d5 * Implement the succeedOnFailure flag by trapping EXIT. This makes
the fail() function unnecessary.
* Flag showBuildStats to print execution times on builder exit.

svn path=/nixpkgs/branches/stdenv-updates/; revision=11688
2008-04-23 07:19:48 +00:00
Eelco Dolstra 4195c1522f * Some variables to make it easier to inject additional phases.
svn path=/nixpkgs/branches/stdenv-updates/; revision=11221
2008-03-20 10:59:47 +00:00
Eelco Dolstra 9bddb8a172 * stripDirs: nest the output.
svn path=/nixpkgs/branches/stdenv-updates/; revision=11220
2008-03-20 10:54:58 +00:00
Eelco Dolstra c0c199dbc7 * Add some missing pre/post hooks.
svn path=/nixpkgs/branches/stdenv-updates/; revision=11179
2008-03-18 11:03:35 +00:00
Eelco Dolstra 68d08cd70d * fixupPhase: don't barf if the output doesn't exist yet.
svn path=/nixpkgs/branches/stdenv-updates/; revision=11177
2008-03-18 10:28:17 +00:00
Eelco Dolstra aaeed176c5 * Oops, don't pass --prefix twice.
svn path=/nixpkgs/branches/stdenv-updates/; revision=11176
2008-03-18 10:26:43 +00:00
Eelco Dolstra 2e92cabb37 * substitute: support patterns starting with a dash.
* Updated the kernel headers.
* ghc: setup hooks are now generated using substituteAll.

svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10838
2008-02-22 18:19:04 +00:00
Eelco Dolstra 3bcc70349b svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10814 2008-02-21 17:26:46 +00:00
Eelco Dolstra 1d49f0daff * Renamed the darwin stdenv to powerpc-darwin, since i686-darwin uses stdenv/nix.
svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10812
2008-02-21 17:25:10 +00:00
Eelco Dolstra a62b2564ba * Merge the makeFlags check.
svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10810
2008-02-21 16:23:47 +00:00
Eelco Dolstra e7570bb9cf * Don't strip all symbols from $out/bin by default, since it makes
stack traces impossible.
* When stripping all symbols on Darwin, don't use the "-s" flag
  since it has a completely different meaning (it takes an argument 
  specifying a file containing a list of symbols).

svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10809
2008-02-21 16:20:51 +00:00
Eelco Dolstra 289a6dd48a * Fix broken URLs.
svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10802
2008-02-21 13:47:11 +00:00
Michael Raskin ed3cf0a497 Fixed setup.sh - non-default Makefile may be passed in makeFlags. OpenFire added, doesn't work yet
svn path=/nixpkgs/branches/stdenv-updates/; revision=10795
2008-02-21 04:48:55 +00:00
Eelco Dolstra e12b421add * Merged most of the stdenv-updates branch. Some stuff didn't
merge cleanly right away (kde-4, kernel stuff) so it should be
  merged later.  But the stdenv stuff is all there.

svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10793
2008-02-20 23:02:41 +00:00
Eelco Dolstra 96aa40524e * Hack hack hack.
svn path=/nixpkgs/branches/stdenv-updates/; revision=10788
2008-02-20 17:22:32 +00:00
Eelco Dolstra 39c3cd4259 * Get rid of all the phase wrapper functions, just do that generically
in genericBuild.  This also means that you can override a phase
  function by redefining it, like

    buildPhase() {
      ... do something ...
    }

  and you still get the log nesting stuff.

* GNUmakefile is also a valid makefile name.

* Evaluate the variables $preHook and $postHook to allow more stdenv
  overrideability.

svn path=/nixpkgs/branches/stdenv-updates/; revision=10786
2008-02-20 17:10:36 +00:00
Eelco Dolstra 0ebff4e1d0 * buildPhase: skip if there is no Makefile (just like configurePhase
is skipped when there is no configure script).  So you don't need to
  set

    buildPhase = "true";

  for derivations that don't have any build action.

* Variable $makefile to allow the makefile to be specified.

svn path=/nixpkgs/branches/stdenv-updates/; revision=10784
2008-02-20 15:16:48 +00:00
Michael Raskin 2a087141cb Ported replace renaming to replace-literal to avoid conflict with MySQL package supplying own tool with name replace.
svn path=/nixpkgs/branches/stdenv-updates/; revision=10704
2008-02-15 11:14:40 +00:00
Eelco Dolstra 89815eb9a0 * gcc-wrapper: Propagate the wrapped gcc, binutils and glibc to the
user environment.  (NIXPKGS-63)

svn path=/nixpkgs/branches/stdenv-updates/; revision=10664
2008-02-13 19:41:37 +00:00
Eelco Dolstra 908d8286ce * Add --disable-dependency-tracking to the configure flags if
possible.  This should speed up builds a bit.  (Suggested by Ludovic
  Courtès.)

svn path=/nixpkgs/branches/stdenv-updates/; revision=10662
2008-02-13 18:27:19 +00:00
Eelco Dolstra 5f45fb3ae9 * substitute() in stdenv: use the replace program instead of awful
sed hackery.
* Some indentation fixes in setup.sh.

svn path=/nixpkgs/branches/stdenv-updates/; revision=10658
2008-02-13 14:23:09 +00:00
Eelco Dolstra fec087c826 * Bootstrap binaries for powerpc-linux.
svn path=/nixpkgs/branches/stdenv-updates/; revision=10283
2008-01-25 01:34:20 +00:00
Eelco Dolstra 4c83147793 * Hack, hack, hack.
svn path=/nixpkgs/branches/stdenv-updates/; revision=10282
2008-01-25 01:28:11 +00:00
Eelco Dolstra 4e01864742 * PowerPC hackery.
svn path=/nixpkgs/branches/stdenv-updates/; revision=10281
2008-01-24 23:49:02 +00:00
Yury G. Kudryashov da57804fff Merged with trunk again
svn path=/nixpkgs/branches/stdenv-updates/; revision=10267
2008-01-23 18:11:03 +00:00
Michael Raskin 776393982c Removed unused setup-sh-defs.nix
svn path=/nixpkgs/trunk/; revision=10254
2008-01-22 22:53:40 +00:00
Eelco Dolstra f516036cbb * Updated bootstrap binaries except for bash which now somehow
segfaults totally randomly.

svn path=/nixpkgs/branches/stdenv-updates/; revision=9840
2007-12-03 17:56:44 +00:00
Eelco Dolstra ff95bc3eea * Use gzip -d / bzip2 -d instead of gunzip / bunzip2.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9839
2007-12-03 17:55:41 +00:00
Eelco Dolstra 31034cb3d1 * Some fixes for rebuilding the bootstrap binaries on x86_64.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9836
2007-12-03 15:40:29 +00:00
Eelco Dolstra 9a89e44870 * Use gzip/bzip2 instead of gunzip/bunzip2 in the bootstrap binaries.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9834
2007-12-03 12:15:35 +00:00
Eelco Dolstra d04b560dc3 * fgrep and egrep aren't shell scripts anymore.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9802
2007-11-26 15:59:07 +00:00
Eelco Dolstra 3237b446b9 svn path=/nixpkgs/branches/stdenv-updates/; revision=9775 2007-11-22 12:39:51 +00:00
Eelco Dolstra 8b3186528e * pcre: don't compile with C++ support when doing a dietlibc build.
* GCC 4.2: restore the ability to build a statically linked compiler,
  needed for the Nixpkgs bootstrap.
* GCC 4.2: use symlinks instead of hard links in $out/bin
  (NIXPKGS-62).

svn path=/nixpkgs/branches/stdenv-updates/; revision=9771
2007-11-21 19:28:54 +00:00
Yury G. Kudryashov 784227b421 Removed setup-new-2.sh and setup-new.sh symlinks
svn path=/nixpkgs/branches/stdenv-updates/; revision=9745
2007-11-17 15:29:48 +00:00
Yury G. Kudryashov b37d00ce1f Now all the files setup-new-2.sh, setup-new.sh and setup.sh are the same file.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9744
2007-11-17 15:29:42 +00:00
Yury G. Kudryashov 5adba2d3f3 Removed setup-new-2.sh and setup-new.sh symlinks
svn path=/nixpkgs/branches/stdenv-updates/; revision=9742
2007-11-17 15:18:56 +00:00
Yury G. Kudryashov dd837dae4e Now all the files setup-new-2.sh, setup-new.sh and setup.sh are the same file.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9741
2007-11-17 15:17:01 +00:00
Yury G. Kudryashov a6797a6f4e Removed setup-new-2.sh and setup-new.sh symlinks
svn path=/nixpkgs/branches/stdenv-updates/; revision=9739
2007-11-17 14:34:56 +00:00
Yury G. Kudryashov f2b2932ee2 Spacing in setup.sh
svn path=/nixpkgs/branches/stdenv-updates/; revision=9738
2007-11-17 14:34:49 +00:00
Yury G. Kudryashov 51a3cde784 Now all the files setup-new-2.sh, setup-new.sh and setup.sh are the same file.
svn path=/nixpkgs/branches/stdenv-updates/; revision=9736
2007-11-17 14:34:27 +00:00
Michael Raskin 43b208bbb9 Fixed synaptics; Added GOCR (not that it is a good OCR); reverted MarcWeber's update to setup-new-2.sh (he has no time to use it in nearest future; later I hope it will be irrelevant)
svn path=/nixpkgs/trunk/; revision=9613
2007-11-09 13:54:02 +00:00
Marc Weber a589bdf7db createShScript proposal added
svn path=/nixpkgs/trunk/; revision=9609
2007-11-08 19:03:23 +00:00
Yury G. Kudryashov 2a79431f99 add_to_var renamed to addToSearchPath
svn path=/nixpkgs/trunk/; revision=9498
2007-10-19 20:26:06 +00:00
Yury G. Kudryashov c4c17a7843 Fixed typo, added function add_to_var
The function for use in setup hooks. The syntax is very simple:

add_to_var varName needDir addDir prefix

If the directory $prefix$needDir exists, directory $prefix$addDir is added to
variable named varName (using PATH_DELIMITER as delimiter). If addDir is "", it
defaults to needDir (this is a most common case).

svn path=/nixpkgs/trunk/; revision=9496
2007-10-19 19:29:36 +00:00
Marc Weber ec3c6e932a Thanks urkud for pointing me to the wrong implementation of PATH_DELIMITER - fixed
svn path=/nixpkgs/trunk/; revision=9352
2007-09-20 21:06:26 +00:00
Yury G. Kudryashov b840189493 Added prefixKey to stdenv/generic/setup-new-2.sh
Now you can write prefixKey="-prefix " and "-prefix ${out}" will be inserted in
configureFlags (instead of "--prefix ${out}").

svn path=/nixpkgs/trunk/; revision=9351
2007-09-20 19:52:38 +00:00
Michael Raskin de45e0e929 svn path=/nixpkgs/trunk/; revision=9347 2007-09-20 18:25:43 +00:00
Marc Weber 98e33c38df removing by accident added -x
svn path=/nixpkgs/trunk/; revision=9321
2007-09-13 10:25:56 +00:00
Marc Weber 78587bf74b PATH_DELIMITER added and some trailing whitespaces removed
svn path=/nixpkgs/trunk/; revision=9320
2007-09-13 09:34:21 +00:00
Yury G. Kudryashov 6fc617391d setup-new-2.sh: rewritten stripping code in more configurable way.
svn path=/nixpkgs/trunk/; revision=9237
2007-09-01 18:40:06 +00:00
Yury G. Kudryashov d215554ba4 Removed duplicated code for moving doc, man and info into share/ subdir.
svn path=/nixpkgs/trunk/; revision=9236
2007-09-01 18:34:16 +00:00
Marc Weber c383f04b8f I don't like cluttering up scripts using many ifs.. Do you like an assertEnvExists function ? I think we might want to use it more than twice in the future.
svn path=/nixpkgs/trunk/; revision=9224
2007-08-31 03:58:40 +00:00
Marc Weber b3d955ae2e installBin proposal
svn path=/nixpkgs/trunk/; revision=9220
2007-08-30 15:50:30 +00:00
Michael Raskin c263b309e1 Added setup-sh-defs, a draft for composing builder from predefined strings, so that substitution change doesn't ruin every package. Not cleaned..
svn path=/nixpkgs/trunk/; revision=9215
2007-08-28 23:28:21 +00:00
Eelco Dolstra 607b0d3e80 * Rewrite all the SourceForge URLs to mirror://sourceforge/.
find . -name "*.nix" | while read fn; do sed 's^http://[a-z]*.dl.sourceforge.net/sourceforge/^mirror://sourceforge/^g' < $fn > $fn.new; mv $fn.new $fn; done

svn path=/nixpkgs/trunk/; revision=9198
2007-08-27 13:01:33 +00:00
Eelco Dolstra a0159dee8e * Reverted r6713, r6711, r4623, r3660, r2237. There rewrote fetchurl
URLs to http://nix.cs.uu.nl/dist/tarballs.  With content-addressable
  mirror support (r9190, NIXPKGS-70) this is no longer necessary:
  fetchurl will try to download from that location automatically.  So
  we can keep the original URLs.

svn path=/nixpkgs/trunk/; revision=9192
2007-08-24 12:32:36 +00:00
Marc Weber f1cf8d1d7a adding purityPhase hasen't been such a good idea - untested and if a small thing changes everything has to be rebuilt..
svn path=/nixpkgs/trunk/; revision=9174
2007-08-20 13:39:59 +00:00
Marc Weber a9f676e098 unpackSource is to be included in phases .. So you can set phases after calling unpackSource manually
cd $rootSource is called at end of unpackPhase

svn path=/nixpkgs/trunk/; revision=9161
2007-08-18 18:42:18 +00:00
Michael Raskin b184b70ee4 Added setup-new-2.sh, mostly based on patch to setup.sh by Yurii Kudryashov (urkud).
svn path=/nixpkgs/trunk/; revision=9154
2007-08-18 14:47:09 +00:00
Yury G. Kudryashov 67d41efde1 Added some parts of kde-4. It doesn't work yet, but I need version control
svn path=/nixpkgs/trunk/; revision=9049
2007-08-05 13:54:42 +00:00
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