summary refs log tree commit diff
path: root/pkgs/build-support/fetchsvn
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/build-support/fetchsvn')
-rw-r--r--pkgs/build-support/fetchsvn/builder.sh3
-rw-r--r--pkgs/build-support/fetchsvn/default.nix4
2 files changed, 4 insertions, 3 deletions
diff --git a/pkgs/build-support/fetchsvn/builder.sh b/pkgs/build-support/fetchsvn/builder.sh
index 09358aa694b..ea52ca19fa6 100644
--- a/pkgs/build-support/fetchsvn/builder.sh
+++ b/pkgs/build-support/fetchsvn/builder.sh
@@ -22,6 +22,7 @@ fi;
 # server's certificate.  This is perfectly safe: we don't care
 # whether the server is being spoofed --- only the cryptographic
 # hash of the output matters.
-echo 'p' | svn export -r "$rev" "$url" $out
+echo 'p' | svn export ${ignoreExternals:+--ignore-externals} \
+    -r "$rev" "$url" "$out"
 
 stopNest
diff --git a/pkgs/build-support/fetchsvn/default.nix b/pkgs/build-support/fetchsvn/default.nix
index ae8aabf858c..39272b99608 100644
--- a/pkgs/build-support/fetchsvn/default.nix
+++ b/pkgs/build-support/fetchsvn/default.nix
@@ -1,5 +1,5 @@
 {stdenv, subversion, sshSupport ? false, openssh ? null}: 
-{url, rev ? "HEAD", md5 ? "", sha256 ? ""}:
+{url, rev ? "HEAD", md5 ? "", sha256 ? "", ignoreExternals ? false}:
 
 let
   repoName = with stdenv.lib;
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
   outputHashMode = "recursive";
   outputHash = if sha256 == "" then md5 else sha256;
   
-  inherit url rev sshSupport openssh;
+  inherit url rev sshSupport openssh ignoreExternals;
 
   impureEnvVars = [
     # We borrow these environment variables from the caller to allow