Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 920822 - autotools.eclass: incorrect handling of WANT_AUTOCONF for newer slots
Summary: autotools.eclass: incorrect handling of WANT_AUTOCONF for newer slots
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords: PullRequest
: 920744 920746 920765 920766 920780 920784 920785 920786 920789 920790 920797 920800 920801 920803 920804 920805 920806 920812 920813 (view as bug list)
Depends on:
Blocks: 893434
  Show dependency tree
 
Reported: 2023-12-27 19:20 UTC by Sam James
Modified: 2023-12-27 21:44 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:20:32 UTC
For WANT_AUTOCONF="latest" in an ebuild (the default), autoconf:2.71
isn't installed, but autoconf:2.72 is, we error out like:
```
cat /var/tmp/portage/x11-plugins/asapm-3.1-r1/temp/autoconf.out
***** autoconf *****
***** PWD: /var/tmp/portage/x11-plugins/asapm-3.1-r1/work/asapm-3.1
***** autoconf -I autoconf --force

ac-wrapper: autoconf: warning: could not locate installed version for WANT_AUTOCONF='2.71'; ignoring
Usage: autoconf [-h] [--help] [-m dir] [--macrodir=dir]
       [-l dir] [--localdir=dir] [--version] [template-file]
```
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:20:47 UTC
*** Bug 920797 has been marked as a duplicate of this bug. ***
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:21:25 UTC
*** Bug 920744 has been marked as a duplicate of this bug. ***
Comment 3 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:21:42 UTC
*** Bug 920746 has been marked as a duplicate of this bug. ***
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:22:05 UTC
*** Bug 920765 has been marked as a duplicate of this bug. ***
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:22:30 UTC
*** Bug 920766 has been marked as a duplicate of this bug. ***
Comment 6 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:22:48 UTC
*** Bug 920780 has been marked as a duplicate of this bug. ***
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:23:02 UTC
*** Bug 920784 has been marked as a duplicate of this bug. ***
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:23:21 UTC
*** Bug 920785 has been marked as a duplicate of this bug. ***
Comment 9 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:23:40 UTC
*** Bug 920786 has been marked as a duplicate of this bug. ***
Comment 10 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:23:57 UTC
*** Bug 920789 has been marked as a duplicate of this bug. ***
Comment 11 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:24:14 UTC
*** Bug 920790 has been marked as a duplicate of this bug. ***
Comment 12 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:25:01 UTC
*** Bug 920800 has been marked as a duplicate of this bug. ***
Comment 13 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:25:21 UTC
*** Bug 920801 has been marked as a duplicate of this bug. ***
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:25:39 UTC
*** Bug 920803 has been marked as a duplicate of this bug. ***
Comment 15 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:25:56 UTC
*** Bug 920804 has been marked as a duplicate of this bug. ***
Comment 16 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:26:17 UTC
*** Bug 920805 has been marked as a duplicate of this bug. ***
Comment 17 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:26:36 UTC
*** Bug 920806 has been marked as a duplicate of this bug. ***
Comment 18 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 19:26:54 UTC
*** Bug 920812 has been marked as a duplicate of this bug. ***
Comment 19 Larry the Git Cow gentoo-dev 2023-12-27 20:57:29 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=00a85ac2928bf83ec841a08904b2e80008276ce2

commit 00a85ac2928bf83ec841a08904b2e80008276ce2
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-12-27 19:12:04 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-12-27 20:57:06 +0000

    autotools.eclass: rework WANT_AUTOCONF handling
    
    For automake, we enumerate each of the automake slots in _WANT_AUTOMAKE and
    use this to handle setting WANT_AUTOMAKE accordingly if the ebuild (or user,
    I suppose) haven't set WANT_AUTOMAKE themselves. This means that we can easily
    rollover to the latest installed on a system (and we also pull it in via _WANT_AUTOMAKE
    which is used for dependencies) because WANT_AUTOMAKE is based on the slots in
    _WANT_AUTOMAKE intersected with whatever is installed on the system.
    
    For autoconf, we weren't doing any of that, and were just hardcoding whatever
    the latest slot is! That's error prone on bumps but it also wasn't really possible
    to get right as-is without marking a new slot stable because of the entanglement
    between the dependencies, WANT_AUTOCONF, and no intersection being done
    (WANT_AUTOCONF wasn't dynamic at all).
    
    We now implement a similar scheme for autoconf as we already had for automake. This
    fixes the case where WANT_AUTOCONF="latest" in an ebuild (the default), autoconf:2.71
    isn't installed, but autoconf:2.72 is.
    
    This sometimes worked before if the latest dep was slotted rather than unslotted
    like it is now (see below for why that's not easy to just fix) because the new slot
    would never get pulled in and hence the older slot which aligned with WANT_AUTOCONF's
    hardcoded value would be available.
    
    (I still think we should consider slotmoving older autoconfs but that's something
    to discuss and possibly do another time. See TODO.)
    
    Bug: https://bugs.gentoo.org/827852
    Bug: https://bugs.gentoo.org/893434
    Closes: https://bugs.gentoo.org/920822
    Signed-off-by: Sam James <sam@gentoo.org>

 eclass/autotools.eclass | 73 +++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 67 insertions(+), 6 deletions(-)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41a10cf44b022f88604535fc5d4fd6c0c62cbf55

commit 41a10cf44b022f88604535fc5d4fd6c0c62cbf55
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-12-27 19:38:21 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-12-27 20:57:07 +0000

    autotools.eclass: treat 2.5 as 2.71 for now
    
    Having an unbound dependency (no slot) causes all sorts of problems. Add cases
    for each slot.
    
    I think we should really have the slots aligned to PV and slotmove as required but
    let's handle that another time. This would've hidden the original bug at least.
    
    Bug: https://bugs.gentoo.org/920822
    Signed-off-by: Sam James <sam@gentoo.org>

 eclass/autotools.eclass | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)
Comment 20 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-12-27 21:44:17 UTC
*** Bug 920813 has been marked as a duplicate of this bug. ***