makepkg: read filenames in a while loop

Further improvments on 2ca27ab which will allow the changelog and
install script files to contain whitespace.

Signed-off-by: Dave Reisner <dreisner@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Dave Reisner 2011-08-30 10:31:49 -04:00 committed by Dan McGee
parent 35d8cc8bc8
commit 5bb2d2e0a0
1 changed files with 4 additions and 6 deletions

View File

@ -1354,16 +1354,15 @@ create_srcpackage() {
local i
for i in 'changelog' 'install'; do
local filelist=$(sed -n "s/^[[:space:]]*$i=//p" "$BUILDFILE")
local file
for file in $filelist; do
while read -r file; do
# evaluate any bash variables used
eval file=\"$(sed 's/^\(['\''"]\)\(.*\)\1$/\2/' <<< "$file")\"
if [[ ! -f "${srclinks}/${pkgbase}/$file" ]]; then
msg2 "$(gettext "Adding %s file (%s)...")" "$i" "${file}"
ln -s "${startdir}/$file" "${srclinks}/${pkgbase}/"
fi
done
done < <(sed -n "s/^[[:space:]]*$i=//p" "$BUILDFILE")
done
local TAR_OPT
@ -1534,16 +1533,15 @@ check_sanity() {
done
for i in 'changelog' 'install'; do
local filelist=$(sed -n "s/^[[:space:]]*$i=//p" "$BUILDFILE")
local file
for file in $filelist; do
while read -r file; do
# evaluate any bash variables used
eval file=\"$(sed 's/^\(['\''"]\)\(.*\)\1$/\2/' <<< "$file")\"
if [[ ! -f $file ]]; then
error "$(gettext "%s file (%s) does not exist.")" "$i" "$file"
ret=1
fi
done
done < <(sed -n "s/^[[:space:]]*$i=//p" "$BUILDFILE")
done
local valid_options=1