[Pkg-cyrus-sasl2-commits] r458 - /cyrus-sasl-2.1/branches/heimdal/debian/repack.sh

fabbe at users.alioth.debian.org fabbe at users.alioth.debian.org
Sun May 24 13:25:26 UTC 2009


Author: fabbe
Date: Sun May 24 13:25:26 2009
New Revision: 458

URL: http://svn.debian.org/wsvn/pkg-cyrus-sasl2/?sc=1&rev=458
Log:
Fix repack.sh

Modified:
    cyrus-sasl-2.1/branches/heimdal/debian/repack.sh

Modified: cyrus-sasl-2.1/branches/heimdal/debian/repack.sh
URL: http://svn.debian.org/wsvn/pkg-cyrus-sasl2/cyrus-sasl-2.1/branches/heimdal/debian/repack.sh?rev=458&op=diff
==============================================================================
--- cyrus-sasl-2.1/branches/heimdal/debian/repack.sh (original)
+++ cyrus-sasl-2.1/branches/heimdal/debian/repack.sh Sun May 24 13:25:26 2009
@@ -1,42 +1,60 @@
 #!/bin/sh
-# Repackage upstream source to exclude non-distributable files
-# should be called as "repack sh --upstream-source <ver> <downloaded file>
-# (for example, via uscan)
+#
+# Repackage upstream source to exclude non-distributable files.
+# Should be called as "repack sh --upstream-source <version> <file>
+# (for example, via uscan).
 
 set -e
 set -u
 
-FILE=$3
-PKG=`dpkg-parsechangelog|grep ^Source:|sed 's/^Source: //'`
-VER="$2+dfsg"
+if [ $# -ne 3 ]; then
+	echo "Usage: $0 --upstream-source <version> <file>"
+	exit 1
+fi
 
-printf "\nRepackaging $FILE\n"
+OPT_VERSION=$2
+OPT_FILE=$3
+TMPDIR=`mktemp -d`
+trap "rm -rf $TMPDIR" QUIT INT EXIT
 
-DIR=`mktemp -d ./tmpRepackXXXXXX`
-trap "rm -rf $DIR" QUIT INT EXIT
+echo "Repackaging $OPT_FILE"
 
-tar xzf $FILE -C $DIR
+tar xzf $OPT_FILE -C $TMPDIR
 
-TARGET=`echo $FILE |sed 's/_\(.*\)\.orig/_\1+dfsg.orig/'`
-REPACK=`basename $FILE`
+orig_file_path=`readlink --canonicalize $OPT_FILE`
+upstream_directory=`ls -1 $TMPDIR | head -1`
+package_name=`dpkg-parsechangelog | sed -n 's/^Source: //p'`
+dfsg_directory=$package_name-$OPT_VERSION.dfsg1
+dfsg_file_path=`dirname $orig_file_path`/$dfsg_directory.tar.gz
 
-UP_DIR=`ls -1 $DIR`
+# Use a subshell to remove the non-dfsg-free files
+(
+	set -e
+	set -u
 
-(
-    set -e
-    set -u
+	cd $TMPDIR/$upstream_directory
 
-    cd $DIR
+	# Individual files to remove
+	for file in \
+		doc/draft* \
+		doc/rfc* \
+		java/doc/draft* ; do
+		rm -v $file
+	done
 
-    rm -v $UP_DIR/doc/draft*
-    rm -v $UP_DIR/doc/rfc*
-
-    REPACK_DIR="$PKG-$VER.orig"
-    mv $UP_DIR $REPACK_DIR
-    tar -c $REPACK_DIR | gzip -9 > $REPACK
+	# Whole directories to remove
+	for directory in \
+		dlcompat-20010505 ; do
+		rm -rfv $directory
+	done
 )
 
-rm -v $FILE
-mv $DIR/$REPACK $TARGET
+# Rename upstream tarball root directory and repackage the file
+(
+	cd $TMPDIR
+	mv $upstream_directory $dfsg_directory
+	tar czf $orig_file_path *
+	mv $orig_file_path $dfsg_file_path
+)
 
-echo "*** $FILE repackaged"
+echo "File $OPT_FILE repackaged successfully to $dfsg_file_path"




More information about the Pkg-cyrus-sasl2-commits mailing list