diff options
author | Petr Rockai <me@mornfall.net> | 2012-07-13 20:58:39 +0200 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2012-07-23 20:33:04 +0200 |
commit | ce77a5ceec8d4f241bec049a3af9d9626b74b6dc (patch) | |
tree | b9c87184f9645352f7333dd704d5c409018f2fc2 /pkgs/build-support/release | |
parent | 1eb5450bd4a60ac302f86d7609311c1c096b187f (diff) | |
download | nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.tar nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.tar.gz nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.tar.bz2 nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.tar.lz nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.tar.xz nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.tar.zst nixpkgs-ce77a5ceec8d4f241bec049a3af9d9626b74b6dc.zip |
Factor out repeated scriptlets from build-support/release/*.nix.
Diffstat (limited to 'pkgs/build-support/release')
-rw-r--r-- | pkgs/build-support/release/ant-build.nix | 9 | ||||
-rw-r--r-- | pkgs/build-support/release/binary-tarball.nix | 7 | ||||
-rw-r--r-- | pkgs/build-support/release/debian-build.nix | 15 | ||||
-rw-r--r-- | pkgs/build-support/release/functions.sh | 14 | ||||
-rw-r--r-- | pkgs/build-support/release/nix-build.nix | 8 | ||||
-rw-r--r-- | pkgs/build-support/release/rpm-build.nix | 14 |
6 files changed, 27 insertions, 40 deletions
diff --git a/pkgs/build-support/release/ant-build.nix b/pkgs/build-support/release/ant-build.nix index fe15f93a8fe..696f179a2ed 100644 --- a/pkgs/build-support/release/ant-build.nix +++ b/pkgs/build-support/release/ant-build.nix @@ -100,15 +100,10 @@ stdenv.mkDerivation ( postHook = '' mkdir -p $out/nix-support echo "$system" > $out/nix-support/system + . ${./functions.sh} - # If `src' is the result of a call to `makeSourceTarball', then it - # has a subdirectory containing the actual tarball(s). If there are - # multiple tarballs, just pick the first one. origSrc=$src - if test -d $src/tarballs; then - src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1) - fi - + src=$(findTarballs $src | head -1) ''; } ) diff --git a/pkgs/build-support/release/binary-tarball.nix b/pkgs/build-support/release/binary-tarball.nix index 6901c9f5555..93331707cee 100644 --- a/pkgs/build-support/release/binary-tarball.nix +++ b/pkgs/build-support/release/binary-tarball.nix @@ -36,13 +36,8 @@ stdenv.mkDerivation ( mkdir -p $out/nix-support echo "$system" > $out/nix-support/system - # If `src' is the result of a call to `makeSourceTarball', then it - # has a subdirectory containing the actual tarball(s). If there are - # multiple tarballs, just pick the first one. origSrc=$src - if test -d $src/tarballs; then - src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1) - fi + src=$(findTarballs $src | head -1) if test -e $origSrc/nix-support/hydra-release-name; then releaseName=$(cat $origSrc/nix-support/hydra-release-name) diff --git a/pkgs/build-support/release/debian-build.nix b/pkgs/build-support/release/debian-build.nix index 0095a2ff881..feb15267f59 100644 --- a/pkgs/build-support/release/debian-build.nix +++ b/pkgs/build-support/release/debian-build.nix @@ -30,17 +30,10 @@ vmTools.runInLinuxImage (stdenv.mkDerivation ( # !!! cut&paste from rpm-build.nix postHook = '' - mkdir -p $out/nix-support - cat "$diskImage"/nix-support/full-name > $out/nix-support/full-name - - # If `src' is the result of a call to `makeSourceTarball', then it - # has a subdirectory containing the actual tarball(s). If there are - # multiple tarballs, just pick the first one. - echo $src - if test -d $src/tarballs; then - src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1) - fi - ''; # */ + . ${./functions.sh} + propagateImageName + src=$(findTarballs $src | head -1) # Find a tarball. + ''; installExtraDebsPhase = '' for i in $extraDebs; do diff --git a/pkgs/build-support/release/functions.sh b/pkgs/build-support/release/functions.sh new file mode 100644 index 00000000000..9f2d03519c8 --- /dev/null +++ b/pkgs/build-support/release/functions.sh @@ -0,0 +1,14 @@ +findTarballs() { + local suffix + test -d "$1/tarballs/" && { + for suffix in tar.gz tgz tar.bz2 tbz2 tar.xz tar.lzma; do + ls $1/tarballs/*.$suffix 2> /dev/null + done | sort + } + echo "$1" +} + +propagateImageName() { + ensureDir $out/nix-support + cat "$diskImage"/nix-support/full-name > $out/nix-support/full-name +} diff --git a/pkgs/build-support/release/nix-build.nix b/pkgs/build-support/release/nix-build.nix index 8abbca97875..336563ae285 100644 --- a/pkgs/build-support/release/nix-build.nix +++ b/pkgs/build-support/release/nix-build.nix @@ -58,13 +58,9 @@ stdenv.mkDerivation ( name = name + (if src ? version then "-" + src.version else ""); postHook = '' - # If `src' is the result of a call to `makeSourceTarball', then it - # has a subdirectory containing the actual tarball(s). If there are - # multiple tarballs, just pick the first one. + . ${./functions.sh} origSrc=$src - if test -d $src/tarballs; then - src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz $src/tarballs/*.tar.xz | sort | head -1) - fi + src=$(findTarballs $src | head -1) # Set GCC flags for coverage analysis, if desired. if test -n "${toString doCoverageAnalysis}"; then diff --git a/pkgs/build-support/release/rpm-build.nix b/pkgs/build-support/release/rpm-build.nix index 5eace575366..708b62302d5 100644 --- a/pkgs/build-support/release/rpm-build.nix +++ b/pkgs/build-support/release/rpm-build.nix @@ -14,16 +14,10 @@ vmTools.buildRPM ( name = name + "-" + diskImage.name + (if src ? version then "-" + src.version else ""); preBuild = '' - mkdir -p $out/nix-support - cat "$diskImage"/nix-support/full-name > $out/nix-support/full-name - - # If `src' is the result of a call to `makeSourceTarball', then it - # has a subdirectory containing the actual tarball(s). If there are - # multiple tarballs, just pick the first one. - if test -d $src/tarballs; then - src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1) - fi - ''; # */ + . ${./functions.sh} + propagateImageName + src=$(findTarballs $src | head -1) # Pick the first tarball. + ''; postInstall = '' declare -a rpms rpmNames |