summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMarc Weber <marco-oweber@gmx.de>2007-08-18 18:42:18 +0000
committerMarc Weber <marco-oweber@gmx.de>2007-08-18 18:42:18 +0000
commita9f676e09832e2f96bfe814ba74df591e1438310 (patch)
tree09145dd651e0b95409db86df972537792ed3f0fa /pkgs
parente6c5500d42e1f075a459ca25664f99a6308cebaa (diff)
downloadnixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.tar
nixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.tar.gz
nixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.tar.bz2
nixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.tar.lz
nixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.tar.xz
nixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.tar.zst
nixpkgs-a9f676e09832e2f96bfe814ba74df591e1438310.zip
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
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/stdenv/generic/setup-new-2.sh22
1 files changed, 19 insertions, 3 deletions
diff --git a/pkgs/stdenv/generic/setup-new-2.sh b/pkgs/stdenv/generic/setup-new-2.sh
index 90bf997eb9f..de635aee95b 100644
--- a/pkgs/stdenv/generic/setup-new-2.sh
+++ b/pkgs/stdenv/generic/setup-new-2.sh
@@ -489,11 +489,13 @@ unpackW() {
 
 
 unpackPhase() {
+    sourceRoot=. # don't change to user dir homeless shelter if custom unpackSource does'nt set sourceRoot
     header "unpacking sources"
     startLog "unpack"
     unpackW
     stopLog
     stopNest
+    cd $sourceRoot
 }
 
 
@@ -523,6 +525,23 @@ patchW() {
     done
 }
 
+purifyPhase() {
+  # copied and modified from acroread and ghcboot
+  # to be called in postUnpack
+
+  fullPath=
+  for i in \$buildInputs; do
+      fullPath=\$fullPath\${fullPath:+:}\$i/lib
+  done
+
+  dirs=${dirsToPurify:-.}
+  for dir in $dirs; do
+    find $dir -type f -perm +100 \\
+    -exec patchelf --interpreter \"\$(cat \$NIX_GCC/nix-support/dynamic-linker)\" \\
+    --set-rpath \$fullPath {};
+  done
+}
+
 
 patchPhase() {
     if test -z "$patchPhase" -a -z "$patches"; then return; fi
@@ -834,9 +853,6 @@ genericBuild() {
         return
     fi
 
-    unpackPhase
-    cd $sourceRoot
-
     if test -z "$phases"; then
         phases="patchPhase configurePhase buildPhase checkPhase \
             installPhase fixupPhase distPhase";