[pacman-dev] [PATCH 2/2] Accept all bzr URLs in the source array

Maxime GAUDUIN alucryd at gmail.com
Mon Apr 8 13:59:38 EDT 2013


On Mon, Apr 8, 2013 at 12:33 PM, Maxime Gauduin <alucryd at gmail.com> wrote:

> From: Alucryd <alucryd at gmail.com>
>
> This check will run 'bzr info' on the distant URL provided in the source
> array and compare the branch root URL with the output of
> 'bzr config parent_location' run inside the local repo to make sure we
> are building from the right sources. Previously, the check was only run
> locally, as a result the local parent_location had to be used in the
> source array. makepkg will fallback to this behavior for offline builds.
>
> Signed-off-by: Maxime Gauduin <alucryd at gmail.com>
> ---
>  scripts/makepkg.sh.in | 19 +++++++++++++++----
>  1 file changed, 15 insertions(+), 4 deletions(-)
>
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index d5b9077..0ac4975 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -474,10 +474,21 @@ download_bzr() {
>                 fi
>         elif (( ! HOLDVER )); then
>                 # Make sure we are fetching the right repo
> -               if [[ "$url" != "$(bzr config parent_location -d $dir)"
>  ]] ; then
> -                       error "$(gettext "%s is not a branch of %s")"
> "$dir" "$url"
> -                       plain "$(gettext "Aborting...")"
> -                       exit 1
> +               local distant_url="$(bzr info $url 2> /dev/null | grep
> root | sed 's|  branch root: ||')"
> +               local local_url="$(bzr config parent_location -d $dir)"
> +               if [[ ! -z "$distant_url" ]]; then
> +                       if [[ "$distant_url" != "$local_url" ]]; then
> +                               error "$(gettext "%s is not a branch of
> %s")" "$dir" "$url"
> +                               plain "$(gettext "Aborting...")"
> +                               exit 1
> +                       fi
> +               else
> +                       if [[ "$url" != "$local_url" ]] ; then
> +                               error "$(gettext "%s is not a branch of
> %s")" "$dir" "$url"
> +                               error "$(gettext "The local URL is %s")"
> "$local_url"
> +                               plain "$(gettext "Aborting...")"
> +                               exit 1
> +                       fi
>                 fi
>                 msg2 "$(gettext "Pulling %s ...")" "${displaylocation}"
>                 cd_safe "$dir"
> --
> 1.8.2
>
>
Hmm, I realize that the grep command will fail if the project name contains
root, it should be changed to "grep 'branch root'". Need I git send-email
the modified patch or will copy/paste/modify the original mail suffice?

Cheers.
-- 
Maxime


More information about the pacman-dev mailing list