summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-05-12 16:26:12 +0200
committerLudovic Courtès <ludo@gnu.org>2013-05-12 16:35:18 +0200
commita463ffd9e8b1a60c2514eeb0d9f621e5a0e33767 (patch)
treec427e719e1f29e3f75bd59e869094341c1d63c2c
parente793178adbd7d0d2202c0ab4bc6a9fec1df8851f (diff)
downloadguix-a463ffd9e8b1a60c2514eeb0d9f621e5a0e33767.tar.gz
build: Make sure the distribution doesn't embed store file names.
* Makefile.am (assert-no-store-file-names): New target.
  (dist-hook): Depend on it.
-rw-r--r--Makefile.am13
1 files changed, 11 insertions, 2 deletions
diff --git a/Makefile.am b/Makefile.am
index 538fad32a4..2c0decd6aa 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -412,7 +412,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS =			\
   --with-nix-prefix="$(NIX_PREFIX)"		\
   --enable-daemon
 
-dist-hook: sync-synopses gen-ChangeLog
+dist-hook: sync-synopses gen-ChangeLog assert-no-store-file-names
 
 sync-synopses:
 	-$(top_builddir)/pre-inst-env $(GUILE)		\
@@ -426,4 +426,13 @@ gen-ChangeLog:
 	  mv $(distdir)/cl-t $(distdir)/ChangeLog;	\
 	fi
 
-.PHONY: sync-synopses gen-ChangeLog
+# Make sure we're not shipping a file that embeds a local /nix/store file name.
+assert-no-store-file-names:
+	if grep -r --exclude=*.texi --exclude=*.info				\
+	     "$(storedir)/[a-z0-9]{32}-" $(distdir) ;				\
+	then									\
+	  echo "error: store file names embedded in the distribution" >&2 ;	\
+	  exit 1 ;								\
+	fi
+
+.PHONY: sync-synopses gen-ChangeLog assert-no-store-file-names