Remove the svn:externals property that pulls a copy of libcharset
[sgt/halibut] / release.sh
diff --git a/release.sh b/release.sh
new file mode 100755 (executable)
index 0000000..6ca76b2
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/sh 
+
+# Make a Halibut release archive.
+
+RELDIR="$1"
+VERSION="$2"
+
+linkmirror() {
+    (cd "$1"; find . -name CVS -prune -o -name .svn -prune -o \
+     -name build -prune -o -name reltmp -prune -o -type d -print) | \
+     while read dir; do mkdir -p "$2"/"$dir"; done
+    (cd "$1"; find . -name CVS -prune -o -name .svn -prune -o \
+     -name build -prune -o -name reltmp -prune -o \
+     -name '*.orig' -prune -o -name '*.rej' -prune -o \
+     -name '*.txt' -prune -o -name '*.html' -prune -o \
+     -name '*.1' -prune -o -name '.cvsignore' -prune -o \
+     -name '*.gz' -prune -o -name '.[^.]*' -prune -o \
+     -type f -print) | \
+     while read file; do ln -s "$1"/"$file" "$2"/"$file"; done
+}
+
+linkmirror $PWD reltmp/$RELDIR
+if ! test -d charset; then
+    linkmirror $PWD/../charset reltmp/$RELDIR/charset
+fi
+
+if test "x${VERSION}y" != "xy"; then
+    (cd reltmp/$RELDIR;
+     find . -name '*.[ch]' -exec md5sum {} \;
+     ) > reltmp/$RELDIR/manifest
+    echo "-DVERSION=\"${VERSION}\"" > reltmp/$RELDIR/version;
+fi
+
+tar chzvoCf reltmp $RELDIR.tar.gz $RELDIR
+
+rm -rf reltmp