On 10/12/13 06:31, Lukáš Jirkovský wrote:
> The local changes are discarded when updating. This matches the behaviour
> when non-VCS sources are used. It also allows incremental builds.
> 
> Signed-off-by: Lukáš Jirkovský <[email protected]>
> ---

I can not find any evidence of hg pull having a -C flag.


>  scripts/makepkg.sh.in | 14 ++++++++++----
>  1 file changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index 84183b0..1421bec 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -663,13 +663,12 @@ extract_hg() {
>  
>       msg2 "$(gettext "Creating working copy of %s %s repo...")" "${repo}" 
> "hg"
>       pushd "$srcdir" &>/dev/null
> -     rm -rf "${dir##*/}"
>  
> -     local ref
> +     local ref=tip
>       if [[ -n $fragment ]]; then
>               case ${fragment%%=*} in
>                       branch|revision|tag)
> -                             ref=('-u' "${fragment##*=}")
> +                             ref="${fragment##*=}"
>                               ;;
>                       *)
>                               error "$(gettext "Unrecognized reference: %s")" 
> "${fragment}"
> @@ -678,7 +677,14 @@ extract_hg() {
>               esac
>       fi
>  
> -     if ! hg clone "${ref[@]}" "$dir" "${dir##*/}"; then
> +     if [[ -d "${dir##*/}" ]]; then
> +             cd_safe "${dir##*/}"
> +             if ! (hg pull && hg update -C -r "$ref"); then
> +                     error "$(gettext "Failure while updating working copy 
> of %s %s repo")" "${repo}" "hg"
> +                     plain "$(gettext "Aborting...")"
> +                     exit 1
> +             fi
> +     elif ! hg clone -u "$ref" "$dir" "${dir##*/}"; then
>               error "$(gettext "Failure while creating working copy of %s %s 
> repo")" "${repo}" "hg"
>               plain "$(gettext "Aborting...")"
>               exit 1
> 

Reply via email to