summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2013-04-11 15:46:51 +1000
committerAllan McRae <allan@archlinux.org>2013-04-12 09:42:43 +1000
commit695f0e443e18ca5d7b722bdf2c4695cc63c1af54 (patch)
tree8d11f0a58167d63c35168f4da02e753b1d878307
parent7e0f528274478e7d3057d71717596fdaa5e5bb79 (diff)
downloadpacman-695f0e443e18ca5d7b722bdf2c4695cc63c1af54.tar.xz
makepkg: fix svn repo extraction
Copy SVN repos rather than using "svn export" to keep all anotation files in the repo for build scripts that use (e.g.) "svin info". Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--scripts/makepkg.sh.in13
1 files changed, 9 insertions, 4 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 4d9176a2..dfc40772 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -743,7 +743,7 @@ extract_svn() {
if [[ -n $fragment ]]; then
case ${fragment%%=*} in
revision)
- ref=('-r' "${fragment##*=}")
+ ref="${fragment##*=}"
;;
*)
error "$(gettext "Unrecognized reference: %s")" "${fragment}"
@@ -752,9 +752,14 @@ extract_svn() {
esac
fi
- if ! svn export ${ref[@]} "$dir"; then
- error "$(gettext "Failure while creating working copy of %s %s repo")" "${repo}" "svn"
- plain "$(gettext "Aborting...")"
+ cp -a "$dir" .
+
+ if [[ -n ${ref} ]]; then
+ cd_safe "$(get_filename "$netfile")"
+ if ! svn update -r ${ref}; then
+ error "$(gettext "Failure while creating working copy of %s %s repo")" "${repo}" "svn"
+ plain "$(gettext "Aborting...")"
+ fi
fi
popd &>/dev/null