summaryrefslogtreecommitdiff
path: root/Build/make-sdist.sh
diff options
context:
space:
mode:
authorJoey Hess <joeyh@debian.org>2013-12-03 15:02:21 -0400
committerJoey Hess <joeyh@debian.org>2013-12-03 15:02:21 -0400
commita4f3e112954e1b785c84c339bcbd83597a89335e (patch)
treeeb2a975663782f83e6b20d6d239447d7222de81b /Build/make-sdist.sh
downloadgit-repair-a4f3e112954e1b785c84c339bcbd83597a89335e.tar.gz
git-repair (1.20131203) unstable; urgency=low
* Fix build deps. Closes: #731179 # imported from the archive
Diffstat (limited to 'Build/make-sdist.sh')
-rwxr-xr-xBuild/make-sdist.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/Build/make-sdist.sh b/Build/make-sdist.sh
new file mode 100755
index 0000000..5443e43
--- /dev/null
+++ b/Build/make-sdist.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+#
+# Workaround for `cabal sdist` requiring all included files to be listed
+# in .cabal.
+
+# Create target directory
+sdist_dir=git-repair-$(grep '^Version:' git-repair.cabal | sed -re 's/Version: *//')
+mkdir --parents dist/$sdist_dir
+
+find . \( -name .git -or -name dist -or -name cabal-dev \) -prune \
+ -or -not -name \\*.orig -not -type d -print \
+| perl -ne "print unless length >= 100 - length q{$sdist_dir}" \
+| xargs cp --parents --target-directory dist/$sdist_dir
+
+cd dist
+tar -caf $sdist_dir.tar.gz $sdist_dir
+
+# Check that tarball can be unpacked by cabal.
+# It's picky about tar longlinks etc.
+rm -rf $sdist_dir
+cabal unpack $sdist_dir.tar.gz