Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 654600 - =sys-apps/portage-2.3.33 breaks eautoconf in www-client/firefox and www-client/seamonkey: Running autoconf old-configure.in -l //usr/share/aclocal ... Failed Running autoconf!
Summary: =sys-apps/portage-2.3.33 breaks eautoconf in www-client/firefox and www-clien...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS, REGRESSION
: 655074 655220 (view as bug list)
Depends on:
Blocks: 651804
  Show dependency tree
 
Reported: 2018-05-02 11:58 UTC by Coacher
Modified: 2018-05-08 03:41 UTC (History)
11 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (info,7.08 KB, text/plain)
2018-05-02 11:58 UTC, Coacher
Details
autoconf-1.out (autoconf-1.out,310 bytes, text/plain)
2018-05-02 11:59 UTC, Coacher
Details
build.log (build.log,6.19 KB, text/plain)
2018-05-02 12:00 UTC, Coacher
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Coacher 2018-05-02 11:58:08 UTC
Created attachment 529342 [details]
emerge --info

Hello.

 * Running eautoreconf in '/home/coacher/Work/gentoo/portage-tmpdir/portage/www-client/firefox-52.7.4/work/firefox-52.7.4esr' ...
 * Running autoconf -l //usr/share/aclocal ...
 [ ok ]
 * Running elibtoolize in: firefox-52.7.4esr/
 * Running elibtoolize in: firefox-52.7.4esr/intl/icu/source/
 * Running elibtoolize in: firefox-52.7.4esr/ipc/chromium/src/third_party/libevent/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.2 patch ...
 *   Applying target-nm/2.4.2 patch ...
 *   Applying ppc64le/2.4.2 patch ...
 * Running elibtoolize in: firefox-52.7.4esr/js/src/
 * Running elibtoolize in: firefox-52.7.4esr/js/src/ctypes/libffi/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.2 patch ...
 *   Applying target-nm/2.4.2 patch ...
 * Running elibtoolize in: firefox-52.7.4esr/memory/jemalloc/src/
 * Running elibtoolize in: firefox-52.7.4esr/modules/freetype2/
 * Running elibtoolize in: firefox-52.7.4esr/modules/freetype2/builds/unix/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.3 patch ...
 *   Applying ppc64le/2.4.4 patch ...
 * Running elibtoolize in: firefox-52.7.4esr/nsprpub/
 * Running elibtoolize in: firefox-52.7.4esr/python/mozbuild/mozbuild/
 * Running elibtoolize in: firefox-52.7.4esr/python/mozbuild/mozbuild/test/
 * Running elibtoolize in: firefox-52.7.4esr/third_party/rust/libz-sys/src/zlib-1.2.8/
 * Running elibtoolize in: firefox-52.7.4esr/toolkit/crashreporter/google-breakpad/
 * Running elibtoolize in: firefox-52.7.4esr/toolkit/crashreporter/google-breakpad/autotools/
 *   Applying portage/2.2 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.2.6 patch ...
 * Running autoconf old-configure.in -l //usr/share/aclocal ...
 [ !! ]

 * Failed Running autoconf !
 * 
 * Include in your bugreport the contents of:
 *
 *   /home/coacher/Work/gentoo/portage-tmpdir/portage/www-client/firefox-52.7.4/temp/autoconf-1.out

 * ERROR: www-client/firefox-52.7.4::gentoo failed (prepare phase):
 *   Failed Running autoconf !
Comment 1 Coacher 2018-05-02 11:59:32 UTC
Created attachment 529344 [details]
autoconf-1.out
Comment 2 Coacher 2018-05-02 12:00:20 UTC
Created attachment 529346 [details]
build.log
Comment 3 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2018-05-02 23:42:07 UTC
Downgrading to =sys-apps/portage-2.3.31 fixes this issue...
Comment 4 Zac Medico gentoo-dev 2018-05-03 00:29:41 UTC
It's triggered by the SYSROOT="/" setting from this commit:

https://gitweb.gentoo.org/proj/portage.git/commit/?id=a41dacf7926c0242678300a8e1770df84029e8a4
Comment 5 Zac Medico gentoo-dev 2018-05-03 01:08:07 UTC
Patch posted for review:

https://archives.gentoo.org/gentoo-portage-dev/message/3905f5b0224f2d11dfd157d05cadd1a4
https://github.com/gentoo/portage/pull/317

@base-system, it's this code from autotools.eclass that interacts badly with the SYSROOT=/ setting:

> autotools_m4sysdir_include() {
> 	# First try to use the paths the system integrator has set up.
> 	local paths=( $(eval echo ${AT_SYS_M4DIR}) )
> 
> 	if [[ ${#paths[@]} -eq 0 && -n ${SYSROOT} ]] ; then
> 		# If they didn't give us anything, then default to the SYSROOT.
> 		# This helps when cross-compiling.
> 		local path="${SYSROOT}/usr/share/aclocal"
> 		[[ -d ${path} ]] && paths+=( "${path}" )
> 	fi
> 	_autotools_m4dir_include "${paths[@]}"
> }
Comment 6 Attila Tóth 2018-05-03 07:35:22 UTC
(In reply to Zac Medico from comment #5)
> Patch posted for review:
> 
> https://archives.gentoo.org/gentoo-portage-dev/message/
> 3905f5b0224f2d11dfd157d05cadd1a4
> https://github.com/gentoo/portage/pull/317
> 
> @base-system, it's this code from autotools.eclass that interacts badly with
> the SYSROOT=/ setting:
> 
> > autotools_m4sysdir_include() {
> > 	# First try to use the paths the system integrator has set up.
> > 	local paths=( $(eval echo ${AT_SYS_M4DIR}) )
> > 
> > 	if [[ ${#paths[@]} -eq 0 && -n ${SYSROOT} ]] ; then
> > 		# If they didn't give us anything, then default to the SYSROOT.
> > 		# This helps when cross-compiling.
> > 		local path="${SYSROOT}/usr/share/aclocal"
> > 		[[ -d ${path} ]] && paths+=( "${path}" )
> > 	fi
> > 	_autotools_m4dir_include "${paths[@]}"
> > }

User feedback: autoconf works again as expected with the patch.
Comment 7 Andrew 2018-05-03 13:21:17 UTC
I swapped "${@:2}" and "$(autotools_m4sysdir_include)" in eclass/autotools.eclass line 502.

https://github.com/gentoo/gentoo/blob/189cd57cc50067f918769c9526f740820db841e6/eclass/autotools.eclass#L502

> autoconf old-configure.in -l //usr/share/aclocal

doesn't work but

> autoconf -l //usr/share/aclocal old-configure.in

does.

At least that allowed me to emerge www-client/firefox.
Comment 8 Oleksandr Trotsenko 2018-05-03 17:16:13 UTC
(In reply to Zac Medico from comment #5)
> Patch posted for review:
> 
> https://archives.gentoo.org/gentoo-portage-dev/message/
> 3905f5b0224f2d11dfd157d05cadd1a4
> https://github.com/gentoo/portage/pull/317
> 
> @base-system, it's this code from autotools.eclass that interacts badly with
> the SYSROOT=/ setting:
> 
> > autotools_m4sysdir_include() {
> > 	# First try to use the paths the system integrator has set up.
> > 	local paths=( $(eval echo ${AT_SYS_M4DIR}) )
> > 
> > 	if [[ ${#paths[@]} -eq 0 && -n ${SYSROOT} ]] ; then
> > 		# If they didn't give us anything, then default to the SYSROOT.
> > 		# This helps when cross-compiling.
> > 		local path="${SYSROOT}/usr/share/aclocal"
> > 		[[ -d ${path} ]] && paths+=( "${path}" )
> > 	fi
> > 	_autotools_m4dir_include "${paths[@]}"
> > }

That patch in portage also made my firefox successfully compile. Thanks for pointing it out :)
Comment 9 Larry the Git Cow gentoo-dev 2018-05-03 18:48:12 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/portage.git/commit/?id=1b5110557d1dd725f7c12bbed4b7ceaaec29f2a3

commit 1b5110557d1dd725f7c12bbed4b7ceaaec29f2a3
Author:     Zac Medico <zmedico@gentoo.org>
AuthorDate: 2018-05-03 00:55:48 +0000
Commit:     Zac Medico <zmedico@gentoo.org>
CommitDate: 2018-05-03 18:45:07 +0000

    config.environ: always strip slash from SYSROOT (bug 654600)
    
    Since SYSROOT=/ interacts badly with autotools.eclass (bug 654600),
    and no EAPI expects SYSROOT to have a trailing slash, always strip
    the trailing slash from SYSROOT.
    
    Bug: https://bugs.gentoo.org/654600
    Fixes: a41dacf7926c ("Export SYSROOT and ESYSROOT in ebuild env in EAPI 7")
    Reviewed-by: James Le Cuirot <chewi@gentoo.org>
    Reviewed-by: Michał Górny <mgorny@gentoo.org>
    Reviewed-by: Brian Dolbec <dolsen@gentoo.org>

 pym/portage/package/ebuild/config.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
Comment 10 Ulenrich 2018-05-03 21:36:16 UTC
(In reply to Larry the Git Cow from comment #9)
> The bug has been referenced in the following commit(s):
> 
> https://gitweb.gentoo.org/proj/portage.git/commit/
> ?id=1b5110557d1dd725f7c12bbed4b7ceaaec29f2a3
> 

Patch of portage from Larry the Git Cow helps emerging
www-client/firefox-59.0.3
which did not work with sys-apps/portage-2.3.33
without that above patch.
Comment 11 Coacher 2018-05-06 12:46:15 UTC
*** Bug 655074 has been marked as a duplicate of this bug. ***
Comment 12 Coacher 2018-05-08 03:41:23 UTC
*** Bug 655220 has been marked as a duplicate of this bug. ***