diff readline/support/mkdist @ 2996:9d4e3a9de17e

[project @ 1997-05-22 20:58:07 by jwe]
author jwe
date Thu, 22 May 1997 20:59:27 +0000
parents
children 3001e15555e9
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/readline/support/mkdist	Thu May 22 20:59:27 1997 +0000
@@ -0,0 +1,100 @@
+#! /bin/bash -
+#
+# mkdist - make a distribution directory from a master manifest file
+#
+# usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-v] version
+#
+# SRCDIR defaults to src
+# MANIFEST defaults to $SRCDIR/MANIFEST
+#
+
+SRCDIR=src
+ROOTNAME=bash
+
+usage()
+{
+	echo usage: mkdist [-m manifest] [-s srcdir] [-r rootname] [-v] version 1>&2
+	exit 2
+}
+
+vmsg()
+{
+	if [ -n "$verbose" ]; then
+		echo mkdist: "$@"
+	fi
+}
+
+while getopts m:s:r:v name
+do
+	case $name in
+	m)	MANIFEST=$OPTARG ;;
+	s)	SRCDIR=$OPTARG ;;
+	r)	ROOTNAME=$OPTARG ;;
+	v)	verbose=yes ;;
+	?)	usage ;;
+	esac
+done
+
+: ${MANIFEST:=$SRCDIR/MANIFEST}
+
+vmsg using $MANIFEST
+
+shift $(( $OPTIND - 1 ))
+
+if [ $# -lt 1 ]; then
+	usage
+fi
+
+version=$1
+newdir=${ROOTNAME}-$version
+
+vmsg creating distribution for version $version in $newdir
+
+if [ ! -d $newdir ]; then
+	mkdir $newdir || { echo $0: cannot make directory $newdir 1>&2 ; exit 1; }
+fi
+
+dirmode=755
+filmode=644
+
+while read fname type mode
+do
+	[ -z "$fname" ] && continue
+
+	case "$fname" in
+	\#*)	continue ;;
+	esac
+
+	case "$type" in
+	d)	mkdir $newdir/$fname ;;
+	f)	cp -p $SRCDIR/$fname $newdir/$fname ;;
+	*)	echo "unknown file type $type" 1>&2 ;;
+	esac
+
+	if [ -n "$mode" ]; then
+		chmod $mode $newdir/$fname
+	fi
+
+done < $MANIFEST
+
+# cut off the `-alpha' in something like `2.0-alpha', leaving just the
+# numeric version
+#version=${version%%-*}
+
+#case "$version" in
+#*.*.*)	vers=${version%.*} ;;
+#*.*)	vers=${version} ;;
+#esac
+
+#echo $vers > $newdir/.distribution
+
+#case "$version" in
+#*.*.*)	plevel=${version##*.} ;;
+#*)	plevel=0 ;;
+#esac
+#[ -z "$plevel" ] && plevel=0
+#echo ${plevel} > $newdir/.patchlevel
+
+vmsg $newdir created
+
+exit 0