bug#20373: automake 1.15 overwriting custom INSTALL file

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

bug#20373: automake 1.15 overwriting custom INSTALL file

Emil
Hi,

We have a custom INSTALL file in our project. Running `autoreconf -i`
(which AFAIK calls `automake --add-missing`) results in our INSTALL file
to be overwritten by the standard GNU INSTALL file, which is not what we
want.

BACKGROUND:
Here's a relevant part quoted from the automake manual
(https://www.gnu.org/software/automake/manual/html_node/Gnits.html):

> If the --add-missing option is given, automake will add a generic version
> of the INSTALL file as well as the COPYING file [...]. However, an
> existing COPYING file will never be overwritten by automake.

However it doesn't explicitly state whether an INSTALL file will be
overwritten or not, but I'm assuming it shouldn't be overwritten. Also,
while adding the `foreign` option to automake will prevent this behavior,
I wouldn't really consider it as a fix.

I also posted about this on the Unix & Linux SE:
http://unix.stackexchange.com/q/197238/103132

REPRODUCING:
You can find the minimal versions of our configure.ac, Makefile.am, and
autogen.sh scripts in the SE post, or as a gist here:
https://gist.github.com/emlai/1a42108bd787cadc3aa9

If needed, you can also take a look at the whole project branch which
reproduces the problem for me:
https://github.com/emlai/ivan/tree/automake-bug
You can simply download it and run the following commands to try if you
can reproduce the error:

        cd ivan-automake-bug
        head INSTALL
        ./autogen.sh
        head INSTALL

I'm using autoconf-2.69 and automake-1.15.

Cheers, Emil Laine <[hidden email]>




Reply | Threaded
Open this post in threaded view
|

bug#20373: automake 1.15 overwriting custom INSTALL file (fixed, not a bug)

Emil
Hi again,

I just realized this is actually not a bug, and was simply caused by the
-f option passed to autoreconf.

Autoreconf seems to forward it to automake as the --force-missing option,
which, according to the manual, "force[s] update of standard files".

Autoreconf's man entry for -f simply states that it will "consider all
files obsolete", which for me wasn't very clear about its implications,
so I couldn't link it to the unwanted behavior I was experiencing.

More info: http://unix.stackexchange.com/a/197327/103132

Cheers, Emil Laine <[hidden email]>




Reply | Threaded
Open this post in threaded view
|

bug#20373: automake 1.15 overwriting custom INSTALL file (fixed, not a bug)

Mathieu Lirzin
Hello Emil

Emil <[hidden email]> writes:

> I just realized this is actually not a bug, and was simply caused by the
> -f option passed to autoreconf.
>
> Autoreconf seems to forward it to automake as the --force-missing option,
> which, according to the manual, "force[s] update of standard files".
>
> Autoreconf's man entry for -f simply states that it will "consider all
> files obsolete", which for me wasn't very clear about its implications,
> so I couldn't link it to the unwanted behavior I was experiencing.

The Autoreconf and its manual is maintained by Autoconf package.
You can report this documentation bug to <[hidden email]> if you want.

Thanks.

--
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37



Reply | Threaded
Open this post in threaded view
|

bug#20373: automake 1.15 overwriting custom INSTALL file (fixed, not a bug)

Mathieu Lirzin
Mathieu Lirzin <[hidden email]> writes:

> Hello Emil
>
> Emil <[hidden email]> writes:
>
>> I just realized this is actually not a bug, and was simply caused by the
>> -f option passed to autoreconf.
>>
>> Autoreconf seems to forward it to automake as the --force-missing option,
>> which, according to the manual, "force[s] update of standard files".
>>
>> Autoreconf's man entry for -f simply states that it will "consider all
>> files obsolete", which for me wasn't very clear about its implications,
>> so I couldn't link it to the unwanted behavior I was experiencing.
>
> The Autoreconf and its manual is maintained by Autoconf package.

should be :
  "The autoreconf program and its manual are maintained by Autoconf"

--
Mathieu Lirzin
GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37