summaryrefslogtreecommitdiff
path: root/eclass
Commit message (Collapse)AuthorAgeFilesLines
* perl-functions.eclass: [QA] use bash [[ ... ]] bracketsDavid Seifert2022-07-021-7/+7
| | | | | Closes: https://github.com/gentoo/gentoo/pull/26112 Signed-off-by: David Seifert <soap@gentoo.org>
* perl-functions.eclass: remove EAPI 5David Seifert2022-07-021-10/+8
| | | | Signed-off-by: David Seifert <soap@gentoo.org>
* perl-module.eclass: remove EAPI 5David Seifert2022-07-021-156/+56
| | | | Signed-off-by: David Seifert <soap@gentoo.org>
* meson.eclass: remove EAPI 6David Seifert2022-07-021-10/+3
| | | | Signed-off-by: David Seifert <soap@gentoo.org>
* findlib.eclass: remove unuseful EAPI version testAlfredo Tupone2022-07-021-2/+0
| | | | Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
* findlib.eclass: add ocamlopt? use dep to findlibAlfredo Tupone2022-07-011-3/+6
| | | | Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
* selinux-policy-2.eclass: update copyright yearKenton Groombridge2022-06-301-2/+1
| | | | Signed-off-by: Kenton Groombridge <concord@gentoo.org>
* eclass/selinux-policy-2: fix POLICY_PATCH applyingKrzesimir Nowak2022-06-301-3/+3
| | | | | | | | | | | | | | | | | | | | eapply as implemented in portage has some heuristics to find out where the parameters that should be passed to patch utility end and actual diff/patch files begin. It first tries to find -- which is the explicit way of separating parameters from input files. Since there's none, it tries to find a first non-option. And it finds the refpolicy directory as a first non-option, while it is supposed to be a value of the -d parameter. The said directory is then treated as an input directory, which is expected to contain at least one patch or diff file. Since there's none, eapply fails. Help eapply's heuristics by explicitly delimiting the parameters from input files with --. Bug: https://bugs.gentoo.org/794682 Signed-off-by: Krzesimir Nowak <knowak@microsoft.com> Closes: https://github.com/gentoo/gentoo/pull/26148 Signed-off-by: Kenton Groombridge <concord@gentoo.org>
* distutils-r1.eclass: make QA check conditional on 'diff' presenceSam James2022-06-291-13/+18
| | | | | | | | We get trouble when bootstrapping Prefix otherwise as diffutils may not be installed yet. This is a bit less churn than adding the BDEPEND, not that there's a strong argument either way. Signed-off-by: Sam James <sam@gentoo.org>
* distutils-r1.eclass: Adjust min dep versions to current stableMichał Górny2022-06-291-7/+7
| | | | | Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
* distutils-r1.eclass: Adjust minimal dep versions to current stableMichał Górny2022-06-291-18/+30
| | | | | Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
* distutils-r1.eclass: Print gpep517 invocations verboselyMichał Górny2022-06-291-8/+18
| | | | | Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
* distutils-r1.eclass: Introduce distutils_wheel_installMichał Górny2022-06-291-12/+33
| | | | | | | | | Split the wheel installation logic from distutils_pep517_install into a new distutils_wheel_install function. Also intended for expert use only. Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
* autotools.eclass: import ::prefix automake has_version edgecase logicSam James2022-06-291-2/+12
| | | | | | | | | | | | | During bootstrapping, an automake may not exist yet (which is sometimes fine if an ebuild doesn't actually need it). Make the check non-fatal for prefix where automake doesn't yet exist inside BROOT. We could probably do a bit better here and inspect PATH but this is the logic which has been used in ::prefix for a looong time, and it's currently breaking bootstraps, so let's get it fixed. Signed-off-by: Sam James <sam@gentoo.org>
* java-vm-2.eclass: use "eselect java-vm update" if availableFlorian Schmaus2022-06-291-2/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Note that IDEPEND="app-eselect/eselect-java" is not absolutely perfect. This is for two reasons. First, IDEPEND is an EAPI 8 feature, while the java-vm-2.eclass currently also supports older EAPIs. However, in those older EAPIs there is no equivalent of IDEPEND. Furthermore, even with EAPIs supporting IDEPEND, while the install-time dependencies specified with IDEPEND are allowed to be called in pkg_preinst and pkg_postinst, the Package Manger Specification (PMS) stats that for the pkg_*rm phases, "ebuilds … must not rely on them being available" [1]. And the java-vm-2.eclass only calls "eselect java-vm update" in pkg_postrm. Therefore, a PMS adhering package manager is able to unmerge IDEPEND packages before any of the pkg_*rm phases are invoked. However, declaring an IDEPEND on eselect-java is the next best thing we can do. Also, a typical package manager will likely not pro-actively remove IDEPEND dependencies, so those are available in the pkg_*rm phases. And since there is no harm in stating the IDEPEND, we declare it. Thanks to Mike Gilbert (floppym) for valuable feedback. 1: PMS 2021-06-13 § 8.1 Dependency Classes - https://projects.gentoo.org/pms/8/pms.html#x1-720008.1 Closes: https://bugs.gentoo.org/853928 Signed-off-by: Florian Schmaus <flow@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/26069
* gnustep-2.eclass: Drop EAPI 5Ulrich Müller2022-06-281-6/+6
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* gnustep-base.eclass: Don't inherit eutils in EAPI 8Ulrich Müller2022-06-281-5/+6
| | | | | | ... which is not supported by it. While at it, drop EAPI 5. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* flag-o-matic.eclass: add filter-lto functionJannik Glückert2022-06-281-0/+8
| | | | | | | Bug: https://bugs.gentoo.org/618550 Closes: https://github.com/gentoo/gentoo/pull/26036 Signed-off-by: Jannik Glückert <jannik.glueckert@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
* toolchain-funcs.eclass: set LC_ALL=C where appropriateMike Gilbert2022-06-271-0/+6
| | | | | | | | | tc-ld-is-gold and tc-ld-is-lld check the output of ld --version. This output may vary depending on the language selected by the user. Set LC_ALL=C to force English output. Bug: https://bugs.gentoo.org/854147 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* user.eclass: allow UID/GID 0 in enewuser/enewgroupMike Gilbert2022-06-271-4/+4
| | | | | | | | | | Used by acct-{user,group}/root. The check is skipped on most systems because root is created by baselayout. An error may be produced if a user runs emerge --root=/myroot acct-user/root, where /myroot is an empty directory. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* llvm.org.eclass: Enable SPIRV target for LLVM 15+Michał Górny2022-06-271-1/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Add DirectX target for LLVM 15+Michał Górny2022-06-271-1/+1
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Enable prebuilt manpages for 14.0.6Michał Górny2022-06-271-1/+1
| | | | | Closes: https://bugs.gentoo.org/854396 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* toolchain.eclass: workaround build failure for GCC 10 with GCC 12Sam James2022-06-261-0/+6
| | | | | Closes: https://bugs.gentoo.org/849359 Signed-off-by: Sam James <sam@gentoo.org>
* desktop.eclass: Add symbolic icon sizeAlexey Zapparov2022-06-221-1/+1
| | | | | Signed-Off-By: Alexey Zapparov <alexey@zapparov.com> Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* java-utils-2.eclass: Use @ECLASS_VARIABLEMichał Górny2022-06-221-1/+1
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* cmake.eclass: Support dev-util/samuraiorbea2022-06-221-13/+2
| | | | | | | | | | | samurai is a ninja-compatible build tool written in C which works with cmake, meson and other users of ninja. It is feature-complete and supports most of the same options as ninja. Signed-off-by: orbea <orbea@riseup.net> Signed-off-by: Sam James <sam@gentoo.org>
* qt5-build.eclass: Add _QT5_GENTOOPATCHSET_REV qtbase patchset logicAndreas Sturmlechner2022-06-191-0/+14
| | | | | | Usage may be extended to other QT5_MODULEs in the future. Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
* qt5-build.eclass: Support future double-digit Qt-5.15 patch releasesAndreas Sturmlechner2022-06-191-1/+1
| | | | Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
* xorg-3.eclass: strip -fno-plt from *FLAGSNiklāvs Koļesņikovs2022-06-181-3/+6
| | | | | | | | | | | | As discussed in #778494, the GCC flag -fno-plt will break lazy binding, which appears to still be necessary for Xorg. Stripping the offending flag out is the next best solution for reliable user experience on Gentoo. Closes: https://github.com/gentoo/gentoo/pull/20166 Closes: https://bugs.gentoo.org/778494 Signed-off-by: Niklāvs Koļesņikovs <89q1r14hd@relay.firefox.com> Signed-off-by: Sam James <sam@gentoo.org>
* toolchain.eclass: add use-dep default for DSam James2022-06-121-1/+1
| | | | | | The others are masked, but w/e. Signed-off-by: Sam James <sam@gentoo.org>
* toolchain.eclass: BDEPEND on D for bootstrapping DSam James2022-06-121-0/+7
| | | | | | | | | | To build GCC 12+ w/ D, we need a D compiler. For now, depend on GCC with D enabled. And give a hint to the PM that an older GCC is likely to do the job to break the cycle, as those don't need D to build their D support. Just in newer versions. Closes: https://bugs.gentoo.org/840182 Signed-off-by: Sam James <sam@gentoo.org>
* distutils-r1.eclass: List wheel filename in install einfoMichał Górny2022-06-121-1/+1
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: add initial meson-python PEP517 supportSam James2022-06-121-0/+14
| | | | | Signed-off-by: Sam James <sam@gentoo.org> Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: Update function docsMichał Górny2022-06-121-11/+22
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* python-r1.eclass: Warn about direct foreach_impl calls in d-r1Michał Górny2022-06-122-0/+19
| | | | | | | Warn if python_foreach_impl is called directly from within a phase function that is already covered by a distutils-r1 sub-phase. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: Add assertions for bindir correctnessMichał Górny2022-06-121-3/+27
| | | | | | | | | | | | | The eclass code in distutils-r1_python_install makes some assumptions specific to _distutils-r1_post_python_compile being called, and scriptdir not being modified since. Make them more explicit by: 1) explicitly removing the files that we expect to have been created, 2) verifying that both the copied and the original scriptdir have the same list of files. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Restore llvm_are_manpages_builtMichał Górny2022-06-121-1/+9
| | | | | Closes: https://bugs.gentoo.org/851240 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* linux-mod.eclass: Support module compressionMike Pagano2022-06-111-1/+16
| | | | | | | | | | | | | | | The Linux kernel supports the compression of modules utilizing GZIP, XZ and ZSTD. Add support into linux-mod.eclass to support this for out of tree modules utilizing the compression binary specified in the kernel config. Note that if the binary which provides the compression is not present on the system the kernel would have failed to build with an error indicating the missing binaries name. Closes: https://bugs.gentoo.org/850130 Signed-off-by: Mike Pagano <mpagano@gentoo.org>
* llvm.org.eclass: Fix manpage logicMichał Górny2022-06-111-9/+8
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Enable pregen manpages for 14.0.5Michał Górny2022-06-111-1/+1
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Verify release signaturesMichał Górny2022-06-111-0/+17
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Switch to upstream tarballs in 14.0.5+Michał Górny2022-06-111-5/+22
| | | | | | | Switch from the autogenerated GitHub tarballs to the official tarballs published upstream. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Control manpage type via eclassMichał Górny2022-06-111-18/+24
| | | | | | | | | | Move switching between pregenerated and built manpages from ebuilds to the eclass. This is going to make the maintenance easier — rather than having to switch to `build` on every version bump, then back to `pregenerated` we will just bump the current version in eclass after making the new manpage tarball. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* rebar.eclass: add whitespace to make the eclass more robustFlorian Schmaus2022-06-101-1/+1
| | | | Signed-off-by: Florian Schmaus <flow@gentoo.org>
* java-vm-2.eclass: add BDEPEND="app-arch/unzip"Florian Schmaus2022-06-101-0/+5
| | | | | | | | | | Thanks to David 'soap' Seifert for pointing out the missing whitespace when appending BDEPEND to DEPEND. Closes: https://bugs.gentoo.org/850415 Closes: https://github.com/gentoo/gentoo/pull/25804 Reported-by: Joonas Niilola <juippis@gentoo.org> Signed-off-by: Florian Schmaus <flow@gentoo.org>
* kernel-build.eclass: Enable py3.11Michał Górny2022-06-081-2/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: Introduce DISTUTILS_USE_PEP517=no modeMichał Górny2022-06-081-1/+28
| | | | | | | | | | | | | | | | Introduce a new DISTUTILS_USE_PEP517 value "no" that stands for "no build system". This is primarily meant to replace the legacy distutils-r1 logic used for bootstrapping baseline PEP 517 packages. At the same time, it provides a convenient replacement for some of the uses of python-r1. In this mode, the eclass does not add PEP 517-specific dependencies and the default python_compile() is a no-op. However, it does set dependencies, REQUIRED_USE and enables sub-phase usage (with respect to DISTUTILS_OPTIONAL). It also permits using distutils_enable_{sphinx,tests}. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: Move python_optimize call to post-installMichał Górny2022-06-081-14/+18
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: Future-proof python_install() for empty rootMichał Górny2022-06-081-1/+8
| | | | | | | Account for the possibility that ${BUILD_DIR}/install does not contain any files to merge, in preparation for DISTUTILS_USE_PEP517=no. Signed-off-by: Michał Górny <mgorny@gentoo.org>