Subject: Re: bug#15255: coreutils should requires "patch" command 2.6 or later
From: Pádraig Brady <[email-masked]>
To: FUJIWARA Katsunori <[email-masked]>
Cc: [email-masked]
Date: Tue, 03 Sep 2013 16:26:45 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

On 09/03/2013 11:02 AM, FUJIWARA Katsunori wrote:
> With recent coreutils, "patch" command 2.5.9 causes failure of
> "./bootstrap" as below:
> 
>   gnulib/gnulib-tool: *** patch file gl/modules/tempname.diff didn't apply cleanly
>   gnulib/gnulib-tool: *** Stop.
>   missing header for unified diff at line 12 of patch
>   The text leading up to this was:
>   --------------------------
>   |
>   | Files:
>   | lib/tempname.c
>   --------------------------
>   File to patch: EOF
>   Skip this patch? [y]
>   1 out of 1 hunk ignored
>   gnulib/gnulib-tool: *** patch file gl/modules/tempname.diff didn't apply cleanly
>   gnulib/gnulib-tool: *** Stop.
>   ./bootstrap[348]: build-aux/prefix-gnulib-mk: not found [No such file or directory]
>   ./bootstrap: bootstrap_post_import_hook failed
> 
> "patch" command 2.6 or later can avoid this error.
> 
> "./bootstrap" should check not only availability of "patch" command,
> but also version of it.
> 
> diff --git a/bootstrap.conf b/bootstrap.conf
> index 0863590..2535b20 100644
> --- a/bootstrap.conf
> +++ b/bootstrap.conf
> @@ -324,7 +324,7 @@ git        1.4.4
>  gperf      -
>  gzip       -
>  makeinfo   4.13
> -patch      -
> +patch      2.6
>  perl       5.5
>  rsync      -
>  tar        -

Yikes.
This in fact looks like later versions of patch
do not diagnose the issues with the mangled patch.
They fuzz the first hunk and _ignore_ the second hunk??

If I adjust the patch like this then all patch
versions apply both hunks without issue:

-@@ -1,2 +1,2 @@
+@@ -1,5 +1,5 @@

I'll report the ignored hunk issue to patch authors.

thanks!
Pádraig.