about summary refs log tree commit diff
path: root/pkgs/tools/archivers/gnutar/builder.sh
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2004-03-19 16:53:04 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2004-03-19 16:53:04 +0000
commit5941f66f0e76cadbda30b3240ba00b30ea365ac7 (patch)
tree35ecc8fde93aa1dd9b5705fe5302cae77ead3860 /pkgs/tools/archivers/gnutar/builder.sh
parent0fd59fd7a41a47478f241b4a27c39d39f42914b9 (diff)
* The stdenv setup script now defines a generic builder that allows
  builders for typical Autoconf-style to be much shorten, e.g.,

    . $stdenv/setup
    genericBuild

  The generic builder does lots of stuff automatically:

  - Unpacks source archives specified by $src or $srcs (it knows about
    gzip, bzip2, tar, zip, and unpacked source trees).
  - Determines the source tree.
  - Applies patches specified by $patches.
  - Fixes libtool not to search for libraries in /lib etc.
  - Runs `configure'.
  - Runs `make'.
  - Runs `make install'.
  - Strips debug information from static libraries.
  - Writes nested log information (in the format accepted by
    `log2xml').

  There are also lots of hooks and variables to customise the generic
  builder.  See `stdenv/generic/docs.txt'.

* Adapted the base packages (i.e., the ones used by stdenv) to use the
  generic builder.

* We now use `curl' instead of `wget' to download files in `fetchurl'.

* Neither `curl' nor `wget' are part of stdenv.  We shouldn't
  encourage people to download stuff in builders (impure!).

* Updated some packages.

* `buildinputs' is now `buildInputs' (but the old name also works).

* `findInputs' in the setup script now prevents inputs from being
  processed multiple times (which could happen, e.g., if an input was
  a propagated input of several other inputs; this caused the size
  variables like $PATH to blow up exponentially in the worst case).

* Patched GNU Make to write nested log information in the format
  accepted by `log2xml'.  Also, prior to writing the build command,
  Make now writes a line `building X' to indicate what is being
  built.  This is unfortunately often obscured by the gigantic tool
  invocations in many Makefiles.  The actual build commands are marked
  `unimportant' so that they don't clutter pages generated by
  `log2html'.


svn path=/nixpkgs/trunk/; revision=845
Diffstat (limited to 'pkgs/tools/archivers/gnutar/builder.sh')
-rwxr-xr-xpkgs/tools/archivers/gnutar/builder.sh12
1 files changed, 3 insertions, 9 deletions
diff --git a/pkgs/tools/archivers/gnutar/builder.sh b/pkgs/tools/archivers/gnutar/builder.sh
index f79d158b86a52..a73f5a6d5b8dc 100755
--- a/pkgs/tools/archivers/gnutar/builder.sh
+++ b/pkgs/tools/archivers/gnutar/builder.sh
@@ -1,9 +1,3 @@
-#! /bin/sh
-
-. $stdenv/setup || exit 1
-
-tar xvfz $src || exit 1
-cd tar-* || exit 1
-./configure --prefix=$out || exit 1
-make || exit 1
-make install || exit 1
+#! /bin/sh -e
+. $stdenv/setup
+genericBuild