Update to autotools used by binutils

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

Update to autotools used by binutils

Alan Modra-3
When cgen source is installed in the top source directory of
binutils-gdb and configuring with --enable-maintainer-mode
--enable-cgen-maint=yes it is somewhat difficult to regenerate cgen
files without differences due to using different autotools.
Particularly so since the generated files in the git repository don't
all use the same autotools.

This patch fixes that by modernising the source a little and
regenerating with autoconf-2.69 and automake-1.15.1.

Note that doc/stamp-vti and doc/version.texi contain dates taken from
your checked out doc/cgen.texi file time stamp.  So in order to
regenerate these files consistently it is necessary to
  touch --date=xxx doc/cgen.texi
with the date taken from the last doc/cgen.texi commit.  With that
done, only stamp-vti needs updating (to a copy of version.texi).

OK to apply?

        * configure.ac: Renamed from configure.in.
        (AC_INIT, AM_INIT_AUTOMAKE): Modernize.
        (AC_CONFIG_SRCDIR): Invoke.
        * INSTALL: Adjust for configure.ac renaming.
        * Makefile.am (AUTOMAKE_OPTIONS): Delete cygnus and version.
        Add foreign.
        * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
        * doc/Makefile.am (AUTOMAKE_OPTIONS): Delete cygnus, add foreign,
        info-in-builddir and no-texinfo.tex.
        (DISTCLEANFILES): Delete automake-1.9 hack.
        * Makefile.in: Regenerate.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * doc/Makefile.in: Regenerate.
        * doc/stamp-vti: Regenerate.
        * testsuite/Makefile.in: Regenerate.

diff --git a/INSTALL b/INSTALL
index d2df4e1..606b41a 100644
--- a/INSTALL
+++ b/INSTALL
@@ -19,8 +19,8 @@ diffs or instructions to the address given in the `README' so they can
 be considered for the next release.  If at some point `config.cache'
 contains results you don't want to keep, you may remove or edit it.
 
-   The file `configure.in' is used to create `configure' by a program
-called `autoconf'.  You only need `configure.in' if you want to change
+   The file `configure.ac' is used to create `configure' by a program
+called `autoconf'.  You only need `configure.ac' if you want to change
 it or regenerate `configure' using a newer version of `autoconf'.
 
 The simplest way to compile this package is:
diff --git a/Makefile.am b/Makefile.am
index d4d0984..c441e20 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -17,7 +17,7 @@
 # <http://www.gnu.org/licenses/>.
 #
 
-AUTOMAKE_OPTIONS = 1.9 cygnus
+AUTOMAKE_OPTIONS = foreign
 
 SUBDIRS = doc testsuite
 
diff --git a/configure.in b/configure.ac
similarity index 94%
rename from configure.in
rename to configure.ac
index 06e16ca..d336fd2 100644
--- a/configure.in
+++ b/configure.ac
@@ -18,10 +18,11 @@ dnl <http://www.gnu.org/licenses/>.
 dnl
 
 AC_PREREQ(2.59)
-AC_INIT(read.scm)
-AC_CANONICAL_SYSTEM
 dnl The "50" is a generic indicator that we're between 1.1 and 1.2.
-AM_INIT_AUTOMAKE(cgen, 1.1.50)
+AC_INIT(cgen, 1.1.50)
+AC_CONFIG_SRCDIR(read.scm)
+AC_CANONICAL_SYSTEM
+AM_INIT_AUTOMAKE
 
 AC_PROG_INSTALL
 AC_EXEEXT
diff --git a/doc/Makefile.am b/doc/Makefile.am
index 085224a..4f03021 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -17,7 +17,7 @@
 # <http://www.gnu.org/licenses/>.
 #
 
-AUTOMAKE_OPTIONS = cygnus
+AUTOMAKE_OPTIONS = foreign info-in-builddir no-texinfo.tex
 
 # List of files that go into cgen.info.
 DOCFILES = app.texi cgen.texi credits.texi glossary.texi intro.texi \
@@ -39,11 +39,3 @@ noinst_TEXINFOS = cgen.texi cgenint.texi
 # Maintenance
 
 MAINTAINERCLEANFILES = cgen.info cgenint.info
-
-# Automake 1.9 will only build info files in the objdir if they are
-# mentioned in DISTCLEANFILES.  It doesn't have to be unconditional,
-# though, so we use a bogus condition.
-# NOTE: This is copied from gas.
-if GENINSRC_NEVER
-DISTCLEANFILES = cgen.info cgenint.info
-endif
diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am
index 3eb1d96..9a5d404 100644
--- a/testsuite/Makefile.am
+++ b/testsuite/Makefile.am
@@ -18,7 +18,7 @@
 # <http://www.gnu.org/licenses/>.
 #
 
-AUTOMAKE_OPTIONS = 1.9 cygnus
+AUTOMAKE_OPTIONS = foreign
 
 cgendir = $(srcdir)/..
 

--
Alan Modra
Australia Development Lab, IBM
Reply | Threaded
Open this post in threaded view
|

Re: Update to autotools used by binutils

Frank Ch. Eigler
H i-

> OK to apply?

Thanks, sure!

- FChE

Reply | Threaded
Open this post in threaded view
|

Re: Update to autotools used by binutils

Christian Eggers
In reply to this post by Alan Modra-3
Hi Alan,

your changelog mentions several regenerated files, but the patch misses them.
I had to run aclocal and automake manually in order to get rid of calls to
aclocal-1.11.

Regards
Christian


Am Mittwoch, 12. Februar 2020, 06:25:58 CET schrieb Alan Modra:

> When cgen source is installed in the top source directory of
> binutils-gdb and configuring with --enable-maintainer-mode
> --enable-cgen-maint=yes it is somewhat difficult to regenerate cgen
> files without differences due to using different autotools.
> Particularly so since the generated files in the git repository don't
> all use the same autotools.
>
> This patch fixes that by modernising the source a little and
> regenerating with autoconf-2.69 and automake-1.15.1.
>
> Note that doc/stamp-vti and doc/version.texi contain dates taken from
> your checked out doc/cgen.texi file time stamp.  So in order to
> regenerate these files consistently it is necessary to
>   touch --date=xxx doc/cgen.texi
> with the date taken from the last doc/cgen.texi commit.  With that
> done, only stamp-vti needs updating (to a copy of version.texi).
>
> OK to apply?
>
> * configure.ac: Renamed from configure.in.
> (AC_INIT, AM_INIT_AUTOMAKE): Modernize.
> (AC_CONFIG_SRCDIR): Invoke.
> * INSTALL: Adjust for configure.ac renaming.
> * Makefile.am (AUTOMAKE_OPTIONS): Delete cygnus and version.
> Add foreign.
> * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
> * doc/Makefile.am (AUTOMAKE_OPTIONS): Delete cygnus, add foreign,
> info-in-builddir and no-texinfo.tex.
> (DISTCLEANFILES): Delete automake-1.9 hack.
> * Makefile.in: Regenerate.
> * aclocal.m4: Regenerate.
> * configure: Regenerate.
> * doc/Makefile.in: Regenerate.
> * doc/stamp-vti: Regenerate.
> * testsuite/Makefile.in: Regenerate.
>
> diff --git a/INSTALL b/INSTALL
> index d2df4e1..606b41a 100644
> --- a/INSTALL
> +++ b/INSTALL
> @@ -19,8 +19,8 @@ diffs or instructions to the address given in the `README'
> so they can be considered for the next release.  If at some point
> `config.cache' contains results you don't want to keep, you may remove or
> edit it.
>
> -   The file `configure.in' is used to create `configure' by a program
> -called `autoconf'.  You only need `configure.in' if you want to change
> +   The file `configure.ac' is used to create `configure' by a program
> +called `autoconf'.  You only need `configure.ac' if you want to change
>  it or regenerate `configure' using a newer version of `autoconf'.
>
>  The simplest way to compile this package is:
> diff --git a/Makefile.am b/Makefile.am
> index d4d0984..c441e20 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -17,7 +17,7 @@
>  # <http://www.gnu.org/licenses/>.
>  #
>
> -AUTOMAKE_OPTIONS = 1.9 cygnus
> +AUTOMAKE_OPTIONS = foreign
>
>  SUBDIRS = doc testsuite
>
> diff --git a/configure.in b/configure.ac
> similarity index 94%
> rename from configure.in
> rename to configure.ac
> index 06e16ca..d336fd2 100644
> --- a/configure.in
> +++ b/configure.ac
> @@ -18,10 +18,11 @@ dnl <http://www.gnu.org/licenses/>.
>  dnl
>
>  AC_PREREQ(2.59)
> -AC_INIT(read.scm)
> -AC_CANONICAL_SYSTEM
>  dnl The "50" is a generic indicator that we're between 1.1 and 1.2.
> -AM_INIT_AUTOMAKE(cgen, 1.1.50)
> +AC_INIT(cgen, 1.1.50)
> +AC_CONFIG_SRCDIR(read.scm)
> +AC_CANONICAL_SYSTEM
> +AM_INIT_AUTOMAKE
>
>  AC_PROG_INSTALL
>  AC_EXEEXT
> diff --git a/doc/Makefile.am b/doc/Makefile.am
> index 085224a..4f03021 100644
> --- a/doc/Makefile.am
> +++ b/doc/Makefile.am
> @@ -17,7 +17,7 @@
>  # <http://www.gnu.org/licenses/>.
>  #
>
> -AUTOMAKE_OPTIONS = cygnus
> +AUTOMAKE_OPTIONS = foreign info-in-builddir no-texinfo.tex
>
>  # List of files that go into cgen.info.
>  DOCFILES = app.texi cgen.texi credits.texi glossary.texi intro.texi \
> @@ -39,11 +39,3 @@ noinst_TEXINFOS = cgen.texi cgenint.texi
>  # Maintenance
>
>  MAINTAINERCLEANFILES = cgen.info cgenint.info
> -
> -# Automake 1.9 will only build info files in the objdir if they are
> -# mentioned in DISTCLEANFILES.  It doesn't have to be unconditional,
> -# though, so we use a bogus condition.
> -# NOTE: This is copied from gas.
> -if GENINSRC_NEVER
> -DISTCLEANFILES = cgen.info cgenint.info
> -endif
> diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am
> index 3eb1d96..9a5d404 100644
> --- a/testsuite/Makefile.am
> +++ b/testsuite/Makefile.am
> @@ -18,7 +18,7 @@
>  # <http://www.gnu.org/licenses/>.
>  #
>
> -AUTOMAKE_OPTIONS = 1.9 cygnus
> +AUTOMAKE_OPTIONS = foreign
>
>  cgendir = $(srcdir)/..




Reply | Threaded
Open this post in threaded view
|

Re: Update to autotools used by binutils

Sourceware - cgen list mailing list
On Tue, Mar 10, 2020 at 08:16:10PM +0100, Christian Eggers wrote:
> Hi Alan,
>
> your changelog mentions several regenerated files, but the patch misses them.
> I had to run aclocal and automake manually in order to get rid of calls to
> aclocal-1.11.

We normally don't post regenerated files for binutils and gcc.  I did
the same for this patch without checking whether the cgen project had
a policy in this regard.

Patch now committed.

--
Alan Modra
Australia Development Lab, IBM