On Sat, Sep 26, 2020 at 8:15 AM Gavin Smith <gavinsmith0123@xxxxxxxxx> wrote: > On Fri, Sep 25, 2020 at 9:07 PM Gavin Smith <gavinsmith0123@xxxxxxxxx> wrote: > > > > > * Warnings about obsolete constructs are now on by default. > > > They can be turned off with '-Wno-obsolete'. > > > > > > > I have tried building the git development version of Texinfo with > > the new autoconf, but am deluged with warnings. I get the following > > warnings from autoconf: > > > > configure.ac:87: warning: The macro `AC_GNU_SOURCE' is obsolete. > > configure.ac:87: You should run autoupdate. > > ./lib/autoconf/specific.m4:312: AC_GNU_SOURCE is expanded from... > > gnulib/m4/gnulib-comp.m4:34: gl_EARLY is expanded from... > > configure.ac:87: the top level > > I found it hard to track down where the AC_GNU_SOURCE use was coming > from, and the path "lib/autoconf/specific.m4" is incorrect for the > file "specific.m4". Yes, unfortunately, the m4 backtrace emitted by configure warnings doesn't handle AC_REQUIREd macros correctly. Fixing this is probably not feasible for 2.70. > By searching for the text AC_GNU_SOURCE in all > project files as well as installed autoconf files, as well as looking > at the log files under autom4te.cache, I suspect it is coming from the > "extensions.m4" file from Gnulib. (I don't know why that file isn't > named in the error messages, though.) This has the following > definition: > > # gl_USE_SYSTEM_EXTENSIONS > # ------------------------ > # Enable extensions on systems that normally disable them, > # typically due to standards-conformance issues. > AC_DEFUN_ONCE([gl_USE_SYSTEM_EXTENSIONS], > [ > dnl Require this macro before AC_USE_SYSTEM_EXTENSIONS. > dnl gnulib does not need it. But if it gets required by third-party macros > dnl after AC_USE_SYSTEM_EXTENSIONS is required, autoconf 2.62..2.63 emit a > dnl warning: "AC_COMPILE_IFELSE was called before AC_USE_SYSTEM_EXTENSIONS". > dnl Note: We can do this only for one of the macros AC_AIX, AC_GNU_SOURCE, > dnl AC_MINIX. If people still use AC_AIX or AC_MINIX, they are out of luck. > AC_REQUIRE([AC_GNU_SOURCE]) > > AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS]) > ]) > > Would it be right to say that this should be changed in Gnulib, > otherwise any project using that file with Gnulib will have errors > from the new autoconf? Yes, indeed. All of the Gnulib and Autoconf Macro Archive macros need to be checked for problems like this. I'm cc:ing gnulib-bugs. zw