bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Recognize Mercurial in build-aux/bootstrap


From: Jim Meyering
Subject: Re: Recognize Mercurial in build-aux/bootstrap
Date: Sat, 14 Nov 2009 08:45:37 +0100

John W. Eaton wrote:
> Would the following patch be OK for recognizing Mercurial in the
> build-aux/bootstrap script?  It seems to work for me.  Maybe there is
> a better way of recognizing that a file is tracked, but I'm not sure
> what it is.

Can you investigate that?
It'd be good to have a definitive answer.

> Unfortunately, "hg status FILE" exits with a status of 0
> even when FILE does not exist.

I'll look more carefully later.
First, two details: please send patches in "git format-patch" format
(if you're new to git/gnulib guidelines, see these
  http://git.sv.gnu.org/cgit/coreutils.git/plain/HACKING
  though note that in gnulib we do maintain a ChangeLog file)

Also mentioned in HACKING is the issue of copyright assignment.
Between these two tiny patches, you've reached the limit for someone
with no assignment on file for gnulib.

> commit 17efaa64f21d1834ab75904bc423a77b098c670d
> Author: John W. Eaton <address@hidden>
> Date:   Sat Nov 14 02:26:15 2009 -0500
>
>     build-aux/bootstrap: Recognize Mercurial for version control.
>
> diff --git a/build-aux/bootstrap b/build-aux/bootstrap
> index 8ac13b2..799ad68 100755
> --- a/build-aux/bootstrap
> +++ b/build-aux/bootstrap
> @@ -146,7 +146,7 @@ checkout_only_file=README-hacking
>  # Whether to use copies instead of symlinks.
>  copy=false
>
> -# Set this to '.cvsignore .gitignore' in bootstrap.conf if you want
> +# Set this to '.cvsignore .gitignore .hgignore' in bootstrap.conf if you want
>  # those files to be generated in directories like lib/, m4/, and po/.
>  # Or set it to 'auto' to make this script select which to use based
>  # on which version control system (if any) is used in the source directory.
> @@ -203,6 +203,7 @@ esac
>  if test "$vc_ignore" = auto; then
>    vc_ignore=
>    test -d .git && vc_ignore=.gitignore
> +  test -d .hg && vc_ignore="$vc_ignore .hgignore"
>    test -d CVS && vc_ignore="$vc_ignore .cvsignore"
>  fi
>
> @@ -605,6 +606,8 @@ version_controlled_file() {
>               grep '^/[^/]*/[0-9]' > /dev/null && found=yes
>    elif test -d .git; then
>      git rm -n "$dir/$file" > /dev/null 2>&1 && found=yes
> +  elif test -d .hg; then
> +    test -n `hg log -l 1 "$dir/$file"` && found=yes

The others discard stderr.
This should, too.

>    elif test -d .svn; then
>      svn log -r HEAD "$dir/$file" > /dev/null 2>&1 && found=yes
>    else




reply via email to

[Prev in Thread] Current Thread [Next in Thread]