Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 930123 - dev-lang/perl[ithreads] use flag not compatible with getbinpkg option for perl-packages
Summary: dev-lang/perl[ithreads] use flag not compatible with getbinpkg option for per...
Status: IN_PROGRESS
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Gentoo Perl team
URL: https://github.com/gentoo/gentoo/pull...
Whiteboard:
Keywords:
Depends on:
Blocks: perl-eclass
  Show dependency tree
 
Reported: 2024-04-17 00:26 UTC by melser_regs@gmxpro.net
Modified: 2024-05-08 10:51 UTC (History)
4 users (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 melser_regs@gmxpro.net 2024-04-17 00:26:32 UTC
emerge/portage can't handle the case where the "ithreads" use flag on perl is enabled when using getbinpkg in FEATURES.

The reason is that getbinpkg does not see a use flag change on the module itself and installs the binary version of the module (which goes to a different install location on non-threaded perl opposed to perl with ithreads enabled).

If perl then searches for the module it cannot find it. It should have been installed not from source.

To fix this we either need some global use flag on all affected perl modules (so binpkg sees a change in flags) or some way to permanently exclude all dev-perl and virtual/perl-* packages from a build which is not supported by emerge afaik

Reproducible: Always

Steps to Reproduce:
1. enable getbinpkg on FEATURES or EMERGE_DEFAULT_OPTS in /etc/portage/make.conf
2. enable "ithreads" use flag on perl and emerge it
3. try to install any binary perl package (for example XML::Parser) which install in wrong location
Actual Results:  
all binary perl packages are not compatible with ithreads use-flag on perl and getbinpkg. It breaks the system

Expected Results:  
Some way that perl-modules are excluded from getbinpkg if ithreads is enabled.
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-04-17 00:30:16 UTC
This is a frustrating one because it mostly doesn't matter for source builds (we warn the user on dev-lang/perl changing flags and then that's good enough really), but for binpkgs, you could have contaminated your cache and not realise until a while after.

I agree this makes it more pressing. If we can't fix bug 680496 any time soon, I tthink a global USE or something would be better than nothing.
Comment 2 Andreas K. Hüttel archtester gentoo-dev 2024-04-17 03:52:40 UTC
(In reply to Sam James from comment #1)
> This is a frustrating one because it mostly doesn't matter for source builds
> (we warn the user on dev-lang/perl changing flags and then that's good
> enough really), but for binpkgs, you could have contaminated your cache and
> not realise until a while after.
> 
> I agree this makes it more pressing. If we can't fix bug 680496 any time
> soon, I tthink a global USE or something would be better than nothing.

My suggestion would be a USE_EXPAND

PERL_FEATURES="debug ithreads quadmath"

which is auto-added by the eclass, and adds the corresponding runtime/buildtime dependency on perl ...

i.e. perl_features_quadmath => require dev-lang/perl[quadmath] 
and so on
Comment 3 Andreas K. Hüttel archtester gentoo-dev 2024-05-01 05:01:46 UTC
https://github.com/gentoo/gentoo/pull/36349
^ Ongoing work here...
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-05-07 11:45:22 UTC
commit 210cf01585ee780b4c075624006e900f4c404224
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Tue May 7 09:53:36 2024 +0200

    dev-lang/perl: slow down warning countdown

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit 0f6f8b61641a0035680ab5858e5d47cd2b3c53b2
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Wed May 1 20:36:29 2024 +1100

    profiles: use.mask perl_features_debug

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit fc4b35b62d9846c2f5c157225cb35f295badf73a
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Mon Apr 22 11:57:53 2024 +1100

    perl-module.eclass: Implement dependency on PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit 47bd83af8cd0b0bdb60995e40417f3d5660e1c7d
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Sun Apr 21 23:10:00 2024 +1100

    www-apache/mod_perl: Port to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit be340afd975a309999d17ecd648e07f377487953
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Sun Apr 21 23:04:17 2024 +1100

    virtual/perl-threads: Port to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit bb01d60a9212281ed6bdb95e1f5ddc8ffda35e00
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Sun Apr 21 23:01:35 2024 +1100

    net-analyzer/snortalog: Port to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit 0dabc18c770a8efa5c9a40dce6a81c35e870aca8
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Sun Apr 21 22:29:13 2024 +1100

    media-sound/cantata: Port to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit b94387ffaef892cfe3551d871decf34d0e6b8635
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Sun Apr 21 22:26:08 2024 +1100

    app-metrics/collectd: Port to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit ae758a36dbb676619430a911300ba32f5f13e286
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Sun Apr 21 22:21:55 2024 +1100

    app-editors/padre: Port to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit 85e6571079557aa9d8ee6971ef3e09028f3137ed
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Fri Apr 19 22:59:07 2024 +1100

    dev-lang/perl: Migrate to PERL_FEATURES

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

and

commit 9b2a821e455c662000a56f630fd0c38b397e7cb8 (HEAD -> master, origin/master, origin/HEAD)
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Tue May 7 11:32:25 2024 +0200

    2024-05-07-perl rev. 2: fix posted date

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>

commit 4b348e89b0b705b97c0582eeca0bab2435c4d778
Author: Andreas K. Hüttel <dilfridge@gentoo.org>
Date:   Tue May 7 09:50:54 2024 +0200

    Add 2024-05-07-perl-features-use-expand

    Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>