summaryrefslogtreecommitdiff
path: root/eclass
Commit message (Collapse)AuthorAgeFilesLines
* llvm.org.eclass: Update key dependencyMichał Górny2024-05-191-1/+1
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* Add 19.0.0_pre20240518 snapshotMichał Górny2024-05-181-0/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* rocm.eclass: Enable ROCm 6, add gfx94{0,1,2} (MI300) supportYiyang Wu2024-05-181-1/+11
| | | | | | | | | Update the references, since the original reference does not contain MI300. The "see also" blog is also removed because it hasn't been updated for 2 years. Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com> Signed-off-by: Benda Xu <heroxbd@gentoo.org>
* rocm.eclass: remove xnack flag for broader compatibilityYiyang Wu2024-05-181-17/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initially, rocm.eclass append xnack[1,2] feature flag to gfx9 GPUs, since ROCm upstream does this in many of their math libraries, e.g. rocBLAS [3]. The list includes gfx90a:xnack+, indicating xnack is usable for MI200 series, thus rocm.eclass append :xnack+ to gfx90a. But it turns out xnack- is also common for MI200 series, restricting to xnack+ produces incompatible GPU kernel with xnack- mode. Also, community also explores using xnack on other gfx9 GPU [4,5], which is previously restricted to xnack- in rocm.eclass. By not appending xnack feature flag, GPU kernels are compiled to "xnack any" mode, which can be run in either mode, potentially scarifying some performance [6,7], with no direct evidence. rocFFT reports no performance penalty[8]. For the reason above, do not append xnack feature flag to AMDGPU_TARGETS, which is compatible with GPUs operate in both xnack mode. [1] https://wiki.gentoo.org/wiki/ROCm#XNACK_target_feature [2] https://rocm.docs.amd.com/en/latest/conceptual/gpu-memory.html#xnack [3] https://github.com/ROCm/rocBLAS/blob/release/rocm-rel-5.0/CMakeLists.txt#L201 [4] https://niconiconi.neocities.org/tech-notes/xnack-on-amd-gpus/ [5] https://arxiv.org/abs/2401.02680 [6] https://llvm.org/docs/AMDGPUUsage.html#target-features [7] https://docs.olcf.ornl.gov/systems/crusher_quick_start_guide.html#compiling-hip-kernels-for-specific-xnack-modes [8] https://github.com/ROCm/rocFFT/commit/cd2689360ba3b3579d044d8925838ff307b4b4cf Signed-off-by: Yiyang Wu <xgreenlandforwyy@gmail.com> Signed-off-by: Benda Xu <heroxbd@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/36254
* linux-mod-r1.eclass: minor style & misc adjustmentsIonen Wolkens2024-05-171-22/+25
| | | | | | | | | | | | | No real functional changes: * fix indent for dist-kernel_reinstall_initramfs * explicit return 0 to avoid returning a failure, not that return codes should ever be checked for that function * use printf %q for LD path in case of unlikely spaces * move dist-kernel version sanity check inside _modules_sanity_kernelversion which fits and is called from the same function the check was in (also document it) Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* linux-mod-r1.eclass: update depmod.d commentIonen Wolkens2024-05-171-4/+5
| | | | | | | | | | | | | | Likely a non-issue with dracut now (untested) but will leave it alone for now and just updating comment. Maybe if users start having more problems that'd require it or if we want to more liberally rename modules install paths while ensuring it does not use the old one on a same kernel (point of this was just to make things more robust and is not hard-required). Also adjust the commented out function to match dracut.conf.d (guess glob makes it more straight forward, not that it's necessary). Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* linux-mod-r1.eclass: do not reset kernel env vars in binpkgsAndrew Ammerlaan2024-05-171-0/+5
| | | | | | | | Closes: https://bugs.gentoo.org/931213 Bug: https://bugs.gentoo.org/926063 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/36597 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
* linux-info.eclass: respect eselect kernel setting in binpkgsAndrew Ammerlaan2024-05-171-3/+11
| | | | | | | | | | | | | | | | | | Commit f51cd5b64c14ddfb83488a12d538c66a4a309376 resets kernel environment variables when binpkgs are merged, this makes sense since we care about the system that the binpkg will be installed on, not the system the binpkg was built on. This introduced Bug 931213 as a side-effect, which will be fixed in a separate commit to linux-mod-r1.eclass. In preparation of that, we document and rename the LINUX_INFO_BINARY_RESET to SKIP_KERNEL_BINPKG_ENV_RESET. However, commit f51cd5b64c14ddfb83488a12d538c66a4a309376 also makes binpkgs always use the running kernel version. This behaviour is surprising and confusing. In principle the 'eselect kernel' setting should still be respected when binpkgs are used. Bug: https://bugs.gentoo.org/926063 Bug: https://bugs.gentoo.org/931213 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
* linux-mod-r1.eclass: add USE=initramfsAndrew Ammerlaan2024-05-171-0/+54
| | | | | | | | | | | Adds a new variable that adds the "initramfs" flag when set. This new flag controls whether or not the modules that were built should be included in the initramfs. If the modules should be included, then we also rebuild the initramfs/uki in post_install using installkernel. Bug: https://bugs.gentoo.org/923025 Bug: https://bugs.gentoo.org/928271 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
* cargo.eclass: Optimize crate unpackingMichał Górny2024-05-171-23/+33
| | | | | | | | | | | | Unpack crates in parallel using xargs to utilize multicore systems better. Perform checksumming via a single sha256sum invocation. For dev-python/watchfiles, this speeds up unpacking on my machine from 2.6 s to 0.75 s (warm cache). Signed-off-by: Michał Górny <mgorny@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/36645 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* cargo.eclass: Revert "Optimize crate unpacking"Michał Górny2024-05-151-33/+23
| | | | | | Reverts: 32928116fdcf631b6999705c78640e5718bd7a27 Bug: https://bugs.gentoo.org/931955 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* cargo.eclass: Optimize crate unpackingMichał Górny2024-05-151-23/+33
| | | | | | | | | | | | Unpack crates in parallel using xargs to utilize multicore systems better. Perform checksumming via a single sha256sum invocation. For dev-python/watchfiles, this speeds up unpacking on my machine from 2.6 s to 0.75 s (warm cache). Signed-off-by: Michał Górny <mgorny@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/36645 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* edob: do not die if log file existsFlorian Schmaus2024-05-141-1/+0
| | | | Signed-off-by: Florian Schmaus <flow@gentoo.org>
* texlive-common.eclass: eftmutil-sys: use edobFlorian Schmaus2024-05-141-3/+5
| | | | Signed-off-by: Florian Schmaus <flow@gentoo.org>
* edo.eclass: enhance edob for usage with noisy commandsFlorian Schmaus2024-05-142-10/+171
| | | | | | | | | | | | | | | | | Normally, edob can, or rather should, not be used with noisy commands, i.e., commands that produce an output. This is because the output destroys the concept of ebegin and eend, where the eend marker is shown on the same line that is produced by ebegin. However, it sometimes would be nice to use edob with noisy commands, but this means to redirect stdout and stderr of those commands. Instead of redirecting the output to /dev/null, we save the output in a log file under T. This allows us to present the output to the user in case the command fails, making it furthermore part of the build.log, which we expect users to attach to bug reports. Closes: https://github.com/gentoo/gentoo/pull/36117 Signed-off-by: Florian Schmaus <flow@gentoo.org>
* toolchain.eclass: don't depend on self if gnat-gplSam James2024-05-131-1/+1
| | | | | | | | | | | | | | | | Without this, we get: ``` * Error: circular dependencies: (sys-devel/gcc-13.2.1_p20240210:13/13::gentoo, ebuild scheduled for merge) depends on (dev-lang/gnat-gpl-2021-r5:10/10::gentoo, ebuild scheduled for merge) (buildtime) (sys-devel/gcc-13.2.1_p20240210:13/13::gentoo, ebuild scheduled for merge) (buildtime) ``` Reported on IRC by dormito. Fixes: 74414ea0c4d70c96bbec234df290d7e5f14d8f51 Signed-off-by: Sam James <sam@gentoo.org>
* eclass/acct-group.eclass: use $PN to construct make.conf override varsMichael Orlitzky2024-05-131-4/+6
| | | | | | | | | | | | If (after upcasing and replacing hyphens by underscores) ACCT_GROUP_NAME is set to something that isn't valid in a bash variable name, the eclass will crash: it uses ACCT_GROUP_NAME to construct the make.conf override variables in pkg_pretend() and src_install(). This commit constructs the variable names using PN instead of ACCT_GROUP_NAME. In ::gentoo, the two are equivalent, but in an overlay this allows weirder group names at the expense of slightly mismatched variable names. Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
* eclass/acct-user.eclass: use $PN to construct make.conf override varsMichael Orlitzky2024-05-131-5/+7
| | | | | | | | | | | | If (after upcasing and replacing hyphens by underscores) ACCT_USER_NAME is set to something that isn't valid in a bash variable name, the eclass will crash: it uses ACCT_USER_NAME to construct the make.conf override variables in pkg_pretend() and src_install(). This commit constructs the variable names using PN instead of ACCT_USER_NAME. In ::gentoo, the two are equivalent, but in an overlay this allows weirder usernames at the expense of slightly mismatched variable names. Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
* acct-group.eclass: make ACCT_GROUP_NAME writableMichael Orlitzky2024-05-131-4/+4
| | | | | | | | | | | The ACCT_GROUP_NAME variable is set to $PN by Gentoo policy. Prior to this commit, it was also marked "readonly", preventing it from being changed in an ebuild. In an overlay, and combined with the package naming restrictions in the PMS, this has the unfortunate side effect of prohibiting some otherwise-valid group names. We drop the "readonly" to allow those groups to be managed (in overlays) using GLEP81 packages. Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
* acct-user.eclass: make ACCT_USER_NAME writableMichael Orlitzky2024-05-131-5/+5
| | | | | | | | | | | The ACCT_USER_NAME variable is set to $PN by Gentoo policy. Prior to this commit, it was also marked "readonly", preventing it from being changed in an ebuild. In an overlay, and combined with the package naming restrictions in the PMS, this has the unfortunate side effect of prohibiting some otherwise-valid usernames. We drop the "readonly" to allow those users to be managed (in overlays) using GLEP81 packages. Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
* texlive-module.eclass: check if texmf-dist/doc/man existsFlorian Schmaus2024-05-131-1/+1
| | | | | | | | | | | | | | | | | | | Closes: https://bugs.gentoo.org/931798 Closes: https://bugs.gentoo.org/931799 Closes: https://bugs.gentoo.org/931800 Closes: https://bugs.gentoo.org/931801 Closes: https://bugs.gentoo.org/931802 Closes: https://bugs.gentoo.org/931803 Closes: https://bugs.gentoo.org/931804 Closes: https://bugs.gentoo.org/931805 Closes: https://bugs.gentoo.org/931806 Closes: https://bugs.gentoo.org/931807 Closes: https://bugs.gentoo.org/931808 Closes: https://bugs.gentoo.org/931809 Closes: https://bugs.gentoo.org/931810 Closes: https://bugs.gentoo.org/931811 Closes: https://bugs.gentoo.org/931812 Signed-off-by: Florian Schmaus <flow@gentoo.org>
* ant-tasks.eclass: drop ant-tasks.eclassVolkmar W. Pogatzki2024-05-131-172/+0
| | | | | | Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Closes: https://github.com/gentoo/gentoo/pull/36659 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
* flag-o-matic.eclass: allow -mevex512 and -mno-evex512Sam James2024-05-121-0/+2
| | | | | | | | The whole -m/-mno-* situation needs to be improved in the eclass but let's do this for now for the benefit of Chromium (see 754d6f5226a532ed086afa276b48e89ffafe0484). Bug: https://bugs.gentoo.org/931623 Signed-off-by: Sam James <sam@gentoo.org>
* Add 19.0.0_pre20240509 snapshotMichał Górny2024-05-111-0/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* go-env.eclass: temporary EAPI guard for EAPI-6Joonas Niilola2024-05-111-1/+8
| | | | | | | | - there are still a handful of EAPI-6 ebuilds which don't support BDEPENDs. While the has_version check is imperfect without -b switch, this is better than nothing. I assume gcc[debug] isn't be that widely used either. Signed-off-by: Joonas Niilola <juippis@gentoo.org>
* eclass/apache2.eclass: remove rustls dependencyHans de Graaff2024-05-111-1/+0
| | | | | | This dependency differs per ebuild and has been moved to the ebuilds. Signed-off-by: Hans de Graaff <graaff@gentoo.org>
* alternatives.eclass: support EAPI 8Sam James2024-05-111-3/+3
| | | | Signed-off-by: Sam James <sam@gentoo.org>
* go-env.eclass: update GCC workaround for LTOSam James2024-05-111-1/+1
| | | | | | | | Not fixed upstream yet so change workaround to look for sys-devel/gcc[debug] instead as 14 is released now. Bug: https://bugs.gentoo.org/912152 Signed-off-by: Sam James <sam@gentoo.org>
* perl-module.eclass: sort toolchain varsSam James2024-05-101-2/+2
| | | | Signed-off-by: Sam James <sam@gentoo.org>
* perl-module.eclass: respect toolchain environment for MakeMakerSam James2024-05-101-0/+8
| | | | | | | based on https://bugs.gentoo.org/261375#c5 and https://metacpan.org/dist/ExtUtils-MakeMaker/view/lib/ExtUtils/MakeMaker.pm#OPTIMIZE. Bug: https://bugs.gentoo.org/261375 Signed-off-by: Sam James <sam@gentoo.org>
* perl-module.eclass: stop using ${D} for MakeMaker in src_configureSam James2024-05-101-2/+1
| | | | | | | See https://metacpan.org/dist/ExtUtils-MakeMaker/view/lib/ExtUtils/MakeMaker.pm#DESTDIR. Bug: https://bugs.gentoo.org/778806 Signed-off-by: Sam James <sam@gentoo.org>
* perl-module.eclass: stop using ${D} for Module::Build in src_configureSam James2024-05-101-2/+1
| | | | | | | See https://github.com/Perl-Toolchain-Gang/Module-Build/blob/a2ecdf98c25af7dfc7070280232513e8ccec4986/lib/Module/Build/Cookbook.pm#L122. Bug: https://bugs.gentoo.org/778806 Signed-off-by: Sam James <sam@gentoo.org>
* perl-module.eclass: respect toolchain variables for Module::Build via ↵Sam James2024-05-101-1/+10
| | | | | | | | | --config ... Based off https://github.com/Perl-Toolchain-Gang/Module-Build/blob/a2ecdf98c25af7dfc7070280232513e8ccec4986/lib/Module/Build/Cookbook.pm#L63. Bug: https://bugs.gentoo.org/261375 Signed-off-by: Sam James <sam@gentoo.org>
* eclass/freedict.eclass: support EAPI8Michael Mair-Keimberger2024-05-091-4/+6
| | | | | | Signed-off-by: Michael Mair-Keimberger <mmk@levelnine.at> Closes: https://github.com/gentoo/gentoo/pull/36165 Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
* eclass/vim-spell.eclass: support EAPI8Michael Mair-Keimberger2024-05-091-12/+11
| | | | | | Signed-off-by: Michael Mair-Keimberger <mmk@levelnine.at> Closes: https://github.com/gentoo/gentoo/pull/36166 Signed-off-by: Conrad Kostecki <conikost@gentoo.org>
* eclass/tests/python-utils-r1.sh: Fix pypy3 matchesMichał Górny2024-05-081-1/+1
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* python-utils-r1.eclass: Add python3_13Michał Górny2024-05-082-5/+5
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* epatch.eclass: Mark as DEADUlrich Müller2024-05-081-1/+2
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* perl-module.eclass: Implement dependency on PERL_FEATURESAndreas K. Hüttel2024-05-071-11/+36
| | | | Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
* elisp-common.eclass: Add lexical-binding cookies to generated Lisp filesUlrich Müller2024-05-061-2/+2
| | | | | | This suppresses the warning spam in recent Emacs from Git. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* Revert "elisp-common.eclass: Set no-native-compile in generated files"Ulrich Müller2024-05-061-2/+0
| | | | | | | | | "no-byte-compile: t" implies "no-native-compile: t", therefore this was redundant. This reverts commit 2ab9bda58e464656cdf1e31b7e8b293cf1ec0caf. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* linux-mod-r1.eclass: update depmod --config paths for kmod-32Ionen Wolkens2024-05-061-1/+1
| | | | | | | | | | | | | | | | | | | | kmod-32's tools/depmod.c adds 'DISTCONFDIR "/depmod.d"' which is $prefix/lib/depmod.d. Largely a no-op on merged-usr because of the /lib -> /usr/lib symlink, but could potentially impact split-usr if both directories get used (albeit this is only used when a different ROOT is used). Ordering matches the current depmod.c (etc first, then run, etc...). On a side-note, kmod-32 also now has configurable /lib/modules path albeit this is not done on Gentoo at the moment (the default without the prefix is used). May need updates in the future to figure out which to use though. Don't believe this is worth a ML review. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* stardict.eclass: stop optionally depending on stardictEli Schwartz2024-05-061-4/+1
| | | | | | | | | Since commit cb140e2e6bf42b5ca7f88f53afd2806c252a6ac4 it hasn't been available and was in fact removed for being completely dead. There's no real point in asking for it in the eclass. Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
* llvm.org.eclass: Add 19.0.0_pre20240504 snapshotMichał Górny2024-05-041-0/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Remove old snapshot supportMichał Górny2024-05-041-6/+0
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* gnuconfig.eclass: drop EAPI 5 supportSam James2024-05-031-4/+4
| | | | | | | | autotools.eclass hasn't had EAPI 5 support for ~2 years since 50710f3d0e8f19fab5571d9596c336314e96b5cf so this wasn't being used anyway (non-autotools.eclass use of gnuconfig.eclass is very niche). Signed-off-by: Sam James <sam@gentoo.org>
* autotools.eclass: conditionalize gnuconfig dependencySam James2024-05-031-2/+6
| | | | | | | Use newly-added GNUCONFIG_DEPEND so that AUTOTOOLS_AUTO_DEPEND=no doesn't result in a useless dependency on gnuconfig. Signed-off-by: Sam James <sam@gentoo.org>
* gnuconfig.eclass: add GNUCONFIG_DEPENDSam James2024-05-031-3/+19
| | | | | | | The motivation here is to allow autotools.eclass consumers setting AUTOTOOLS_AUTO_DEPEND=no to not have a useless gnuconfig dependency. Signed-off-by: Sam James <sam@gentoo.org>
* xorg-3.eclass: conditionalize autotools deps on XORG_EAUTORECONFSam James2024-05-031-3/+2
| | | | | | | | | | | | | | | xorg-3.eclass only calls autoreconf if XORG_EAUTORECONF is set, although the logic got cleaned up more in fae3e3b3eeec2d252ad42afeba11ac8ffeb70c42. We therefore don't need to depend on autoconf, automake, etc unless XORG_EAUTORECONF is set. Set AUTOTOOLS_AUTO_DEPEND from autotools.eclass to opt-out of the auto dependencies and use the AUTOTOOLS_DEPEND variable it sets when XORG_EAUTORECONF. Note that libtool.eclass still adds a dep on elt-patches so we're OK for that part (we call elibtoolize where we can). Signed-off-by: Sam James <sam@gentoo.org>
* xorg-3.eclass: cleanup autotools logic a bit moreSam James2024-05-031-2/+0
| | | | | | | EAUTORECONF_DEPENDS is always empty since 3db70e9c014e415ae38a713b47cf7b299fd11945. Fixes: 3db70e9c014e415ae38a713b47cf7b299fd11945 Signed-off-by: Sam James <sam@gentoo.org>