From 72c6d19d64a89a5ad0d162fc0bb6517ea80fc252 Mon Sep 17 00:00:00 2001 From: Dave Reisner Date: Wed, 15 May 2013 09:58:42 -0400 Subject: makepkg: fixup broken revision and repo references bzr support "worked", but didn't handle any of the actual features we wanted with makepkg. This moves the revision specification to the proper place (extraction, rather than download), and fixes an additional broken reference to $repo which was never set. Fixes FS#35281. Signed-off-by: Dave Reisner Signed-off-by: Allan McRae --- scripts/makepkg.sh.in | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'scripts') diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 75ddfe54..2379c5fe 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -448,29 +448,14 @@ download_bzr() { url=${url%%#*} local repo=$(get_filename "$netfile") - local displaylocation="$url" - local revision=('-r-1') - - if [[ -n $fragment ]]; then - case ${fragment%%=*} in - revision) - revision=("-r${fragment##*=}") - displaylocation="$url -r ${fragment##*=}" - ;; - *) - error "$(gettext "Unrecognized reference: %s")" "${fragment}" - plain "$(gettext "Aborting...")" - exit 1 - esac - fi local dir=$(get_filepath "$netfile") [[ -z "$dir" ]] && dir="$SRCDEST/$(get_filename "$netfile")" if [[ ! -d "$dir" ]] || dir_is_empty "$dir" ; then msg2 "$(gettext "Branching %s ...")" "${displaylocation}" - if ! bzr branch "$url" "$dir" ${revision[@]} --no-tree --use-existing-dir; then + if ! bzr branch "$url" "$dir" --no-tree --use-existing-dir; then error "$(gettext "Failure while branching %s")" "${displaylocation}" plain "$(gettext "Aborting...")" exit 1 @@ -495,7 +480,7 @@ download_bzr() { fi msg2 "$(gettext "Pulling %s ...")" "${displaylocation}" cd_safe "$dir" - if ! bzr pull "$url" ${revision[@]} --overwrite; then + if ! bzr pull "$url" --overwrite; then # only warn on failure to allow offline builds warning "$(gettext "Failure while pulling %s")" "${displaylocation}" fi @@ -505,11 +490,25 @@ download_bzr() { extract_bzr() { local netfile=$1 + local repo=$(get_filename "$netfile") local fragment=${netfile#*#} if [[ $fragment = "$netfile" ]]; then unset fragment fi + if [[ -n $fragment ]]; then + case ${fragment%%=*} in + revision) + revision=("-r" "${fragment#*=}") + displaylocation="$url -r ${fragment#*=}" + ;; + *) + error "$(gettext "Unrecognized reference: %s")" "${fragment}" + plain "$(gettext "Aborting...")" + exit 1 + esac + fi + local dir=$(get_filepath "$netfile") [[ -z "$dir" ]] && dir="$SRCDEST/$(get_filename "$netfile")" @@ -517,7 +516,8 @@ extract_bzr() { pushd "$srcdir" &>/dev/null rm -rf "${dir##*/}" - if ! bzr checkout "$dir" --lightweight; then + if ! { bzr checkout "$dir" "${revision[@]}" --lightweight && + ( cd "$repo" && bzr pull "$dir" -q --overwrite "${revision[@]}" ); }; then error "$(gettext "Failure while creating working copy of %s %s repo")" "${repo}" "bzr" plain "$(gettext "Aborting...")" exit 1 -- cgit v1.2.3-70-g09d2 From 8335e169a6f38c288db4249c3d272a9ced332580 Mon Sep 17 00:00:00 2001 From: Allan McRae Date: Sat, 18 May 2013 23:11:41 +1000 Subject: makepkg: Use LOGDEST for logpipe If LOGDEST is set, we may not check that $startdir is writable. Store the log pipe in LOGDEST instead. Signed-off-by: Allan McRae --- scripts/makepkg.sh.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'scripts') diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 2379c5fe..08dcf4ce 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1463,7 +1463,7 @@ run_function() { fi # ensure overridden package variables survive tee with split packages - logpipe=$(mktemp -u "$startdir/logpipe.XXXXXXXX") + logpipe=$(mktemp -u "$LOGDEST/logpipe.XXXXXXXX") mkfifo "$logpipe" tee "$BUILDLOG" < "$logpipe" & local teepid=$! -- cgit v1.2.3-70-g09d2