Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 939535

Summary: net-proxy/tayga-0.9.2-r4 - [gcc-15] Automake "maintainer mode" detected:
Product: Gentoo Linux Reporter: Toralf Förster <toralf>
Component: Current packagesAssignee: YiFei Zhu <zhuyifei1999>
Status: RESOLVED FIXED    
Severity: normal CC: eschwartz, heroxbd, zhuyifei1999
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/38583
https://bugs.gentoo.org/show_bug.cgi?id=939468
https://github.com/gentoo/gentoo/pull/38588
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge-info.txt
emerge-history.txt
etc.clang.tar.xz
etc.portage.tar.xz
net-proxy:tayga-0.9.2-r4:20240912-053521.log
qlist-info.txt.xz

Description Toralf Förster gentoo-dev 2024-09-12 17:37:20 UTC
QA Notice: Automake "maintainer mode" detected:

	(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh '/var/tmp/portage/net-proxy/tayga-0.9.2-r4/work/tayga-0.9.2/missing' autoheader)

If you patch Makefile.am, configure.in,  or configure.ac then you
should use autotools.eclass and eautomake or eautoreconf. Exceptions
are limited to system packages for which it is impossible to run
autotools during stage building. See https://wiki.gentoo.org/wiki/Proj

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 23.0_desktop_gnome-20240908-182455

  The build log matches a QA pattern or sth. requested by a dev.
  The attached etc.portage.tar.xz has all details.
  -------------------------------------------------------------------
Comment 1 Toralf Förster gentoo-dev 2024-09-12 17:37:21 UTC
Created attachment 902760 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2024-09-12 17:37:22 UTC
Created attachment 902761 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2024-09-12 17:37:23 UTC
Created attachment 902762 [details]
etc.clang.tar.xz
Comment 4 Toralf Förster gentoo-dev 2024-09-12 17:37:24 UTC
Created attachment 902763 [details]
etc.portage.tar.xz
Comment 5 Toralf Förster gentoo-dev 2024-09-12 17:37:25 UTC
Created attachment 902764 [details]
net-proxy:tayga-0.9.2-r4:20240912-053521.log
Comment 6 Toralf Förster gentoo-dev 2024-09-12 17:37:26 UTC
Created attachment 902765 [details]
qlist-info.txt.xz
Comment 7 YiFei Zhu 2024-09-12 22:38:22 UTC
Interesting huh. eautoreconf is already a part of src_prepare:

src_prepare() {
	default
	sed -e '/^CFLAGS/d' \
		-i configure.ac || die "sed failed"
	eautoreconf
}
Comment 8 YiFei Zhu 2024-09-12 22:45:59 UTC
Updating goal targets....
Considering target file 'all'.
 File 'all' does not exist.
 Considering target file 'config.h'.
  Considering target file 'stamp-h1'.
   Considering target file 'config.h.in'.
    Considering target file 'configure.ac'.
    File 'configure.ac' was considered already.
    Considering target file 'aclocal.m4'.
    File 'aclocal.m4' was considered already.
   Finished prerequisites of target file 'config.h.in'.
    Prerequisite 'configure.ac' is newer than target 'config.h.in'.
    Prerequisite 'aclocal.m4' is newer than target 'config.h.in'.
   Must remake target 'config.h.in'.
Makefile:366: update target 'config.h.in' due to: configure.ac aclocal.m4
(CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh '/var/tmp/portage/net-proxy/tayga-0.9.2-r4/work/tayga-0.9.2/missing' autoheader)
Putting child 0x55bb931e2ae0 (config.h.in) PID 614986 on the chain.
Live child 0x55bb931e2ae0 (config.h.in) PID 614986 
Reaping winning child 0x55bb931e2ae0 PID 614986
Comment 9 Eli Schwartz gentoo-dev 2024-09-12 23:27:23 UTC
Seems to be the same issue as bug 939468 comment 6

Again, possibly this is actually an eclass bug...
Comment 10 YiFei Zhu 2024-09-13 01:06:24 UTC
Hmm should I fix it in eclass instead? From a quick look, adding a --force seems pretty simple.
Comment 11 Larry the Git Cow gentoo-dev 2024-09-24 11:52:31 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ff4a902b3706209c6fe148d9e3c621f6cc53ba4

commit 5ff4a902b3706209c6fe148d9e3c621f6cc53ba4
Author:     YiFei Zhu <zhuyifei1999@gmail.com>
AuthorDate: 2024-09-13 04:38:04 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2024-09-24 11:51:20 +0000

    autotools.eclass: Run eautoheader with --force
    
    To quote Eli [1] (I can't explain it better than this):
    
      autotools.eclass runs autoheader without options (and in
      particular without --force). This will only remake config.h.in
      if there are actual changes to the content, which in turn means
      that it will be out of date compared to aclocal.m4 (which we very
      much expect to have changes).
    
      So `make` sees that the header is out of date, and runs autoheader
      yet again, this time updating the timestamp for `make` purposes.
    
    This causes QA warning that "maintainer mode" is detected.
    
    autoheader and autoconf added --force option at the same time [2],
    so no reason only autoconf has that option in the eclass and not
    autoheader.
    
    Like, autoconf, a check on WANT_AUTOCONF != 2.1 is added because the
    feature was added in autoconf 2.52.
    
    [1] https://bugs.gentoo.org/939468#c6
    [2] https://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=dbf7fc61
    
    Closes: https://bugs.gentoo.org/939468
    Closes: https://bugs.gentoo.org/939535
    Signed-off-by: YiFei Zhu <zhuyifei1999@gmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/38588
    Signed-off-by: Sam James <sam@gentoo.org>

 eclass/autotools.eclass | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)