From b704611db0b3e9bf4e9402745430aae1a68004dd Mon Sep 17 00:00:00 2001 From: Andreas Gruenbacher Date: Mon, 31 May 2004 15:22:43 +0000 Subject: - Rewrite spec2series to return what the new `quilt setup' needs, and rename it to inspect. - `quilt setup': Rewrite so that it supports multiple archives per spec file. Always make the patches directory a symlink to the original patch files instead of copying the patches. - Update German translation. --- scripts/spec2series.in | 227 ------------------------------------------------- 1 file changed, 227 deletions(-) delete mode 100755 scripts/spec2series.in (limited to 'scripts/spec2series.in') diff --git a/scripts/spec2series.in b/scripts/spec2series.in deleted file mode 100755 index 729c3a2..0000000 --- a/scripts/spec2series.in +++ /dev/null @@ -1,227 +0,0 @@ -#! @BASH@ - -# This script is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# See the COPYING and AUTHORS files for more details. - -# defaults -debug=0 -specfile="" -outfile="" - -function usage() { -cat < - specify output file, stdout if unspecified - -EOF -} - -# parse args -while test "$1" != ""; do - case "$1" in - -h | --help) - usage; exit 0 - ;; - -d | --debug) - debug=1; shift - ;; - -o | --outfile) - outfile="$2"; shift; shift - ;; - *) - specfile="$1" - break; - ;; - esac -done - -if test ! -f "$specfile"; then - usage - exit 1 -fi - -# get absolute patch for specfile location -specdir=`dirname $specfile` -specfile=`basename $specfile` -case "$specdir" in - .) specdir="`pwd`" - ;; - /*) # nothing - ;; - *) specdir="`pwd`/$specdir" - ;; -esac - -# create tmp work dir -WORK="${TMPDIR-/tmp}/rpmlog-$$" -mkdir -p "$WORK" || exit 1 -trap 'rm -rf "$WORK"' EXIT -mkdir -p "$WORK/build" -mkdir -p "$WORK/bin" - -# create md5 sums, also for uncompressed files -echo -n "### md5: " >&2 -(cd $specdir; for file in /dev/null *; do - case "$file" in - ready | bigpack | MD5SUMS | MD5SUMS.meta | *.spec | *.changes) - continue - ;; - esac - type="`file -b $file | cut -d" " -f1`" - case "$type" in - compress*) - echo -n "z" >&2 - set -- `zcat $file | md5sum` - echo "$1 zcat ${file}" - ;; - gzip) - echo -n "g" >&2 - set -- `zcat $file | md5sum` - echo "$1 zcat ${file}" - ;; - bzip2) - echo -n "b" >&2 - set -- `bzcat $file | md5sum` - echo "$1 bzcat ${file}" - ;; - esac - echo -n "." >&2 - set -- `md5sum < $file` - echo "$1 cat ${file}" -done) > $WORK/md5sum -echo $" done" >&2 - -# prepare rpm dir fixups and hooks -RPM="@RPMBUILD@ --rcfile=/usr/lib/rpm/rpmrc:$WORK/rpmrc" -PATH="$WORK/bin:$PATH" -grep ^macrofiles /usr/lib/rpm/rpmrc \ - | @SED@ -e "/macrofiles/s|$|:$WORK/rpmmacros|" \ - > $WORK/rpmrc -cat <<-EOF > "$WORK/rpmmacros" - %_sourcedir $specdir - %_specdir $specdir - %_builddir $WORK/build -EOF - -# wrapper script for patch and tar -cat <<-'EOF' > "$WORK/bin/patch" - #!/bin/sh - - # save stuff for log - unpackcmd=`basename $0` - unpackdir=`pwd` - unpackargs="$*" - uncompress="false" - unpackfile="[oops]" - - # sort of progress bar - case $unpackcmd in - tar) echo -n "t" >&2;; - patch) echo -n "p" >&2;; - *) echo -n "?" >&2;; - esac - - # find real binary - realcmd="" - test -x "/bin/$unpackcmd" && realcmd="/bin/$unpackcmd" - test -x "/usr/bin/$unpackcmd" && realcmd="/usr/bin/$unpackcmd" - test "$realcmd" = "" && exit 1 - - # put data into tmpfile, exec real cmd, return on failure - WORK=`dirname $RPM_BUILD_DIR` - cat > "$WORK/data" - if test -x /bin/$unpackcmd; then - cmddir="/bin" - fi - $realcmd $* < "$WORK/data" - retval="$?" - test "$retval" != "0" && exit $retval - - # find original data file by md5sum - set -- `md5sum < "$WORK/data"` - unpackfile="[$1]" - set -- `cat "$WORK/md5sum"` - while test "$1" != ""; do - if test "[$1]" = "$unpackfile"; then - uncompress="$2" - unpackfile="$3" - break - fi - shift - done - - # print results - unpackdir=`echo $unpackdir | @SED@ -e "s|$RPM_BUILD_DIR|BUILD|"` - echo -n "# log: [$unpackdir] $uncompress $unpackfile" >>$WORK/cmdlog - echo " | $unpackcmd $unpackargs" >>$WORK/cmdlog - if test "$unpackcmd" = "patch" -a \ - -f "$RPM_SOURCE_DIR/$unpackfile"; then - patchdir="${unpackdir#BUILD/}" - if test ! -f "$WORK/patchdir"; then - echo -n $patchdir > $WORK/patchdir - fi - if test "`cat $WORK/patchdir`" = "$patchdir"; then - level=`echo $unpackargs | tr " " "\n" | grep ^-p` - echo "$unpackfile $level" >> $WORK/patchlog - fi - fi - if test "$unpackcmd" = "tar" -a \ - -f "$RPM_SOURCE_DIR/$unpackfile"; then - echo -n "# Source: $unpackfile" >>$WORK/tarlog - if test "$unpackdir" != "BUILD"; then - echo -n " -C ${unpackdir#BUILD/}" >>$WORK/tarlog - fi - echo "" >>$WORK/tarlog - fi -EOF -chmod 755 "$WORK/bin/patch" -ln -s patch "$WORK/bin/tar" - -# let rpm do all the dirty specfile stuff ... -echo -n "### $(basename @RPMBUILD@): " >&2 -touch $WORK/patchlog -$RPM --nodeps --quiet -bp "$specdir/$specfile" /dev/null -echo $" done" >&2 - -# print results saved by the wrapper script -( - # header - echo "# Patch series file for quilt, created by $0" - echo "#" - echo "# Sourcedir: $specdir" - echo "# Specfile: $specfile" - if test -f $WORK/patchdir; then - echo "# Patchdir: `cat $WORK/patchdir`" - fi - echo "#" - - # additional info for trouble shooting - if test "$debug" = "1"; then - cat $WORK/md5sum | @SED@ -e 's/^/# md5: /' - echo "#" - - test -f $WORK/cmdlog && cat $WORK/cmdlog && echo "#" - fi - - # list tarballs + patches - test -f $WORK/tarlog && cat $WORK/tarlog && echo "#" - test -f $WORK/patchlog && cat $WORK/patchlog -)|( - if test "$outfile" != ""; then - cat > "$outfile" - else - cat - fi -) -### Local Variables: -### mode: shell-script -### End: -# vim:filetype=sh -- cgit