]> git.pld-linux.org Git - packages/rpm-build-tools.git/blobdiff - builder.sh
Merge branch 'only_branches_and_tags'
[packages/rpm-build-tools.git] / builder.sh
index 2a200600b4f48c09f13ba64c2c981a4a76075a65..efd2815ef18f455ee790a50b4eafb3f1571c1769 100755 (executable)
@@ -780,6 +780,9 @@ get_spec() {
                git checkout "$CVSTAG" -- 2>/dev/null || git checkout -t "origin/$CVSTAG" > /dev/null || exit
                git symbolic-ref -q HEAD > /dev/null &&
                        git merge '@{u}'
+               if [ -n "$CVSDATE" ]; then
+                       git checkout $(git rev-list -n1 --before="'$CVSDATE'" $CVSTAG) || exit 1
+               fi
        fi
 
        if [ ! -f "$ASSUMED_NAME/$SPECFILE" ]; then
@@ -837,13 +840,8 @@ src_md5() {
        local md5
 
        if [ -f additional-md5sums ]; then
-               local spec_rev=$(grep $SPECFILE CVS/Entries 2>/dev/null | sed -e s:/$SPECFILE/:: -e s:/.*::)
-               if [ -z "$spec_rev" ]; then
-                       spec_rev=$(head -n 1 $SPECFILE | sed -e 's/.*\$Revision: \([0-9.]*\).*/\1/')
-               fi
-               local spec="$SPECFILE[0-9.,]*,$(echo $spec_rev | sed 's/\./\\./g')"
                md5=$(grep -s -v '^#' additional-md5sums | \
-               grep -E "[      ]$(basename "$1")[      ]+${spec}([     ,]|\$)" | \
+               grep -E "[      ]$(basename "$1")([     ,]|\$)" | \
                sed -e 's/^\([0-9a-f]\{32\}\).*/\1/' | \
                grep -E '^[0-9a-f]{32}$')
 
@@ -1927,7 +1925,9 @@ mr_proper() {
 
        # remove spec and sources
        $RPMBUILD --clean --rmsource --rmspec --nodeps --define "_specdir $PACKAGE_DIR" --define "_sourcedir $PACKAGE_DIR" $SPECFILE
-       rm -rf $PACKAGE_DIR/.git
+       rm -rf $PACKAGE_DIR/.git .gitignore
+       cd $__PWD
+       rmdir --ignore-fail-on-non-empty $PACKAGE_DIR
 }
 
 #---------------------------------------------
@@ -2076,7 +2076,9 @@ while [ $# -gt 0 ]; do
                -q | --quiet )
                        QUIET="--quiet"; shift ;;
                --date )
-                       CVSDATE="${2}"; shift 2 ;;
+                       CVSDATE="${2}"; shift 2
+                       date -d "$CVSDATE" > /dev/null 2>&1 || { echo >&2 "No valid date specified"; exit 3; }
+                       ;;
                -r | --cvstag )
                        CVSTAG="$2"
                        shift 2
This page took 0.11745 seconds and 4 git commands to generate.