summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukas Fleischer <archlinux@cryptocrack.de>2011-10-24 20:15:22 +0200
committerPierre Schmitz <pierre@archlinux.de>2011-10-29 13:19:10 +0200
commitbea69043fb9c32cf182a5fa22fdde90518e264f9 (patch)
treef71d30cb97072f938236d810ee1a569eb34ca9d7
parent521c4ceec3ec621540f2b49633c89c357dcc69d1 (diff)
downloaddevtools-bea69043fb9c32cf182a5fa22fdde90518e264f9.tar.gz
devtools-bea69043fb9c32cf182a5fa22fdde90518e264f9.tar.xz
commitpkg: Sync changelog/install check with makepkg(8)
makepkg(8) currently uses a smarter method to extract all changelog and install files from a PKGBUILD. Sync commitpkg to use the same code (with small modifications). This also adds support for changelog/install files that contain a whitespace. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de> Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
-rw-r--r--commitpkg.in7
1 files changed, 3 insertions, 4 deletions
diff --git a/commitpkg.in b/commitpkg.in
index 2a732b5..43cc015 100644
--- a/commitpkg.in
+++ b/commitpkg.in
@@ -86,14 +86,13 @@ done
# check if changelog and install files are under version control
for i in 'changelog' 'install'; do
- filelist=$(sed -n "s/^[[:space:]]*$i=//p" PKGBUILD)
- for file in $filelist; do
+ while read -r file; do
# evaluate any bash variables used
- eval file=${file}
+ eval file=\"$(sed 's/^\(['\''"]\)\(.*\)\1$/\2/' <<< "$file")\"
if ! svn status -v "${file}" | grep -q '^[ AMRX~]'; then
abort "${file} is not under version control"
fi
- done
+ done < <(sed -n "s/^[[:space:]]*$i=//p" PKGBUILD)
done
# see if any limit options were passed, we'll send them to rsync