diff --git a/pkgs/development/interpreters/perl-5.10/builder.sh b/pkgs/development/interpreters/perl-5.10/builder.sh
index c52288313dc..b8fac0d42c3 100644
--- a/pkgs/development/interpreters/perl-5.10/builder.sh
+++ b/pkgs/development/interpreters/perl-5.10/builder.sh
@@ -1,12 +1,13 @@
 source $stdenv/setup
 
+configureFlags="$configureFlags -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3"
+
 if test "$NIX_ENFORCE_PURITY" = "1"; then
     GLIBC=$(cat $NIX_GCC/nix-support/orig-libc)
-    extraflags="-Dlocincpth=$GLIBC/include -Dloclibpth=$GLIBC/lib"
+    configureFlags="$configureFlags -Dlocincpth=$GLIBC/include -Dloclibpth=$GLIBC/lib"
 fi
 
 configureScript=./Configure
-configureFlags="-de -Dcc=gcc -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3 -Uinstallusrbinperl $extraflags"
 dontAddPrefix=1
 
 preBuild() {
@@ -14,9 +15,4 @@ preBuild() {
     substituteInPlace lib/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'"
 }
 
-postInstall() {
-    ensureDir "$out/nix-support"
-    cp $setupHook $out/nix-support/setup-hook
-}
-
 genericBuild
diff --git a/pkgs/development/interpreters/perl-5.10/default.nix b/pkgs/development/interpreters/perl-5.10/default.nix
index cb479c97be2..8240617eb75 100644
--- a/pkgs/development/interpreters/perl-5.10/default.nix
+++ b/pkgs/development/interpreters/perl-5.10/default.nix
@@ -4,6 +4,7 @@ stdenv.mkDerivation {
   name = "perl-5.10.0";
 
   builder = ./builder.sh;
+  
   src = fetchurl {
     url = mirror://cpan/src/perl-5.10.0.tar.gz;
     sha256 = "0bivbz15x02m02gqs6hs77cgjr2msfrhnvp5xqk359jg6w6llill";
@@ -19,5 +20,10 @@ stdenv.mkDerivation {
     ./no-sys-dirs.patch
   ];
 
+  configureFlags = ''
+    -de -Dcc=gcc -Uinstallusrbinperl -Duseshrplib
+    -Dprefix=''${out} -Dman1dir=''${out}/share/man/man1 -Dman3dir=''${out}/share/man/man3
+  '';
+
   setupHook = ./setup-hook.sh;
 }