···0001######################################################################
2# Hook handling.
3···784}
785786787-# The fixup phase performs generic, package-independent, Nix-related
788-# stuff, like running patchelf and setting the
789-# propagated-build-inputs. It should rarely be overriden.
790fixupPhase() {
791- runHook preFixup
000792793- # Make sure everything is writable so "strip" et al. work.
794- if [ -e "$prefix" ]; then chmod -R u+w "$prefix"; fi
795796 # Put man/doc/info under $out/share.
797 forceShare=${forceShare:=man doc info}
···812 done;
813 fi
81400000000000000000000000000000000815 if [ -z "$dontGzipMan" ]; then
816 echo "gzipping man pages"
817 GLOBIGNORE=.:..:*.gz:*.bz2
818- for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do
819 if [ -f "$f" -a ! -L "$f" ]; then
820 if gzip -c -n "$f" > "$f".gz; then
821 rm "$f"
···824 fi
825 fi
826 done
827- for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do
828 if [ -L "$f" -a -f `readlink -f "$f"`.gz ]; then
829 ln -sf `readlink "$f"`.gz "$f".gz && rm "$f"
830 fi
···852 if [ -z "$dontPatchShebangs" ]; then
853 patchShebangs "$prefix"
854 fi
855-856- if [ -n "$propagatedBuildInputs" ]; then
857- mkdir -p "$out/nix-support"
858- echo "$propagatedBuildInputs" > "$out/nix-support/propagated-build-inputs"
859- fi
860-861- if [ -n "$propagatedNativeBuildInputs" ]; then
862- mkdir -p "$out/nix-support"
863- echo "$propagatedNativeBuildInputs" > "$out/nix-support/propagated-native-build-inputs"
864- fi
865-866- if [ -n "$propagatedUserEnvPkgs" ]; then
867- mkdir -p "$out/nix-support"
868- echo "$propagatedUserEnvPkgs" > "$out/nix-support/propagated-user-env-packages"
869- fi
870-871- if [ -n "$setupHook" ]; then
872- mkdir -p "$out/nix-support"
873- substituteAll "$setupHook" "$out/nix-support/setup-hook"
874- fi
875-876- runHook postFixup
877}
878879
···1+: ${outputs:=out}
2+3+4######################################################################
5# Hook handling.
6···787}
788789790+# The fixup phase performs generic, package-independent stuff, like
791+# stripping binaries, running patchelf and setting
792+# propagated-build-inputs.
793fixupPhase() {
794+ # Make sure everything is writable so "strip" et al. work.
795+ for output in $outputs; do
796+ if [ -e "$output" ]; then chmod -R u+w "$output"; fi
797+ done
798799+ runHook preFixup
0800801 # Put man/doc/info under $out/share.
802 forceShare=${forceShare:=man doc info}
···817 done;
818 fi
819820+ # Apply fixup to each output.
821+ local output
822+ for output in $outputs; do
823+ prefix=${!output} runHook fixupOutput
824+ done
825+826+ if [ -n "$propagatedBuildInputs" ]; then
827+ mkdir -p "$out/nix-support"
828+ echo "$propagatedBuildInputs" > "$out/nix-support/propagated-build-inputs"
829+ fi
830+831+ if [ -n "$propagatedNativeBuildInputs" ]; then
832+ mkdir -p "$out/nix-support"
833+ echo "$propagatedNativeBuildInputs" > "$out/nix-support/propagated-native-build-inputs"
834+ fi
835+836+ if [ -n "$propagatedUserEnvPkgs" ]; then
837+ mkdir -p "$out/nix-support"
838+ echo "$propagatedUserEnvPkgs" > "$out/nix-support/propagated-user-env-packages"
839+ fi
840+841+ if [ -n "$setupHook" ]; then
842+ mkdir -p "$out/nix-support"
843+ substituteAll "$setupHook" "$out/nix-support/setup-hook"
844+ fi
845+846+ runHook postFixup
847+}
848+849+850+addHook fixupOutput _defaultFixupOutput
851+_defaultFixupOutput() {
852 if [ -z "$dontGzipMan" ]; then
853 echo "gzipping man pages"
854 GLOBIGNORE=.:..:*.gz:*.bz2
855+ for f in "$prefix"/share/man/*/* "$prefix"/share/man/*/*/*; do
856 if [ -f "$f" -a ! -L "$f" ]; then
857 if gzip -c -n "$f" > "$f".gz; then
858 rm "$f"
···861 fi
862 fi
863 done
864+ for f in "$prefix"/share/man/*/* "$prefix"/share/man/*/*/*; do
865 if [ -L "$f" -a -f `readlink -f "$f"`.gz ]; then
866 ln -sf `readlink "$f"`.gz "$f".gz && rm "$f"
867 fi
···889 if [ -z "$dontPatchShebangs" ]; then
890 patchShebangs "$prefix"
891 fi
0000000000000000000000892}
893894