summaryrefslogtreecommitdiff
path: root/eclass
Commit message (Collapse)AuthorAgeFilesLines
* eclass/depend.apache: drop support for EAPI 0-5Hans de Graaff2023-09-281-48/+12
| | | | Signed-off-by: Hans de Graaff <graaff@gentoo.org>
* java-pkg-opt-2.eclass: drop EAPI 6Volkmar W. Pogatzki2023-09-281-3/+3
| | | | | | Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Closes: https://github.com/gentoo/gentoo/pull/32888 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
* llvm.eclass: add option to skip llvm_pkg_setupAlexey Sokolov2023-09-271-0/+11
| | | | | | | | | To be used during prefix bootstrap using LLVM toolchain. Without this, several LLVM packages don't build. Bug: https://bugs.gentoo.org/758167 Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org> Signed-off-by: Michał Górny <mgorny@gentoo.org>
* java-pkg-simple.eclass: improve test selection for multi-jar packagesVolkmar W. Pogatzki2023-09-271-1/+3
| | | | | | | | | | | There was a problem with multi-jar packages cumulating tests. Test classes were repeatedly run for all subsequent test runs. With this patch we ensure that classes=target/test-classes is really empty before compilation. Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
* Revert "java-pkg-simple.eclass: improve test selection for multi-jar packages"Volkmar W. Pogatzki2023-09-271-15/+13
| | | | | | | | This reverts commit 3eb0cfe339e79270446731b8f27bdc1b060d023b. Closes: https://bugs.gentoo.org/906311 Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
* perl-module.eclass: fix typo in commentSam James2023-09-271-1/+1
| | | | | Fixes: ffa678b96f88ec7be12cd57237ead3849ac9c453 Signed-off-by: Sam James <sam@gentoo.org>
* qt6-build.eclass: triple qtest function timeoutIonen Wolkens2023-09-261-2/+1
| | | | | | | | | | | May help prevent flaky failures under load. Could increase further if ever a problem on some arches (beyond 1500 would be meaningless without also passing bigger --timeout to ctest). Also align exports and drop kinda unnecessary comment. Closes: https://bugs.gentoo.org/914737 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* llvm.org.eclass: Add 18.0.0_pre20230925 snapshotMichał Górny2023-09-251-0/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* toolchain.eclass: fix should_we_gcc_config for major-version slottingSam James2023-09-251-1/+3
| | | | | | | | | | | | | | | | | | | | | | | Reported by the-horo on IRC. For example, with slot as major version: ``` $ gcc-config -c x86_64-pc-linux-gnu x86_64-pc-linux-gnu-13 $ gcc-config -S x86_64-pc-linux-gnu-13 x86_64-pc-linux-gnu 13 ``` so we're indeed comparing 13 with 13.2 and hence we decide to run gcc-config unnecessarily because we think it's a major version change. Fix that by taking into account tc_use_major_version_only and comparing based on GCCMAJOR for that case. Bug: https://bugs.gentoo.org/865835 Bug: https://bugs.gentoo.org/873505 Reported-by: the-horo Closes: https://github.com/gentoo/gentoo/pull/33042 Signed-off-by: Sam James <sam@gentoo.org>
* eclass/ruby-ng.eclass: add ruby30 to removed implementationsHans de Graaff2023-09-231-1/+1
| | | | Signed-off-by: Hans de Graaff <graaff@gentoo.org>
* eclass/ruby-utils.eclass: drop ruby30 from preferencesHans de Graaff2023-09-231-5/+1
| | | | Signed-off-by: Hans de Graaff <graaff@gentoo.org>
* llvm.org.eclass: Set manpages for 17.0.1Michał Górny2023-09-191-0/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* perl-module.eclass: disable Canary::StabilitySam James2023-09-191-0/+2
| | | | | | | | | Canary::Stability emits very vocal warnings about "unsupported" Perl versions even if they're fine in reality. It's not worth scaring our users over. See https://metacpan.org/pod/Canary::Stability#ENVIRONMENT-VARIABLES. Signed-off-by: Sam James <sam@gentoo.org>
* perl-module.eclass: set NONINTERACTIVE_TESTING=1Sam James2023-09-191-0/+7
| | | | | | | | | | | | | | | See https://www.perlmonks.org/?node_id=1225311 I did consider the others, but: * AUTOMATES_TESTING appears inappropriate for us, as it affects exit codes and might mask failures if configuration is wrong. * EXTENDED_TESTING is something we could consider if we had some way to opt-in to expensive tests. so just set NONINTERACTIVE_TESTING=1 for now, not the others mentioned in the link. Signed-off-by: Sam James <sam@gentoo.org>
* java-pkg-simple.eclass: respect SLOT="0" in JAVA_LAUNCHER_FILENAMEVolkmar W. Pogatzki2023-09-191-1/+5
| | | | | Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
* bazel.eclass: fix copyrightSam James2023-09-181-1/+1
| | | | Signed-off-by: Sam James <sam@gentoo.org>
* bazel.eclass: add support for a custom bazelGeorge Burgess IV2023-09-181-1/+8
| | | | | | | | | | Multiple bazel packages can be installed side-by-side through version suffixes, e.g., `/usr/bin/bazel-5`, `/usr/bin/bazel-6`, etc. These can be easily simultaneously supported with an eclass param. Signed-off-by: George Burgess IV <gbiv@google.com> Closes: https://github.com/gentoo/gentoo/pull/30544 Signed-off-by: Sam James <sam@gentoo.org>
* verify-sig.eclass: minisig supportSam James2023-09-161-2/+15
| | | | | Closes: https://bugs.gentoo.org/783066 Signed-off-by: Sam James <sam@gentoo.org>
* java-utils-2.eclass: fix EclassDocMissingFuncVolkmar W. Pogatzki2023-09-161-1/+1
| | | | | | | Closes: https://bugs.gentoo.org/900509 Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net> Closes: https://github.com/gentoo/gentoo/pull/30078 Signed-off-by: Florian Schmaus <flow@gentoo.org>
* eclass/dotnet-pkg.eclass: add new dotnet-pkg eclassMaciej Barć2023-09-151-0/+263
| | | | | | | | common functions and variables for .NET packages Bug: https://bugs.gentoo.org/900597 Bug: https://github.com/gentoo/gentoo/pull/32109 Signed-off-by: Maciej Barć <xgqt@gentoo.org>
* eclass/dotnet-pkg-base.eclass: add new dotnet-pkg-base eclassMaciej Barć2023-09-151-0/+628
| | | | | | | | common functions and variables for builds using .NET SDK Bug: https://bugs.gentoo.org/900597 Bug: https://github.com/gentoo/gentoo/pull/32109 Signed-off-by: Maciej Barć <xgqt@gentoo.org>
* eclass/nuget.eclass: add new nuget eclassMaciej Barć2023-09-151-0/+197
| | | | | | | | common functions and variables for handling .NET NuGets Bug: https://bugs.gentoo.org/900597 Bug: https://github.com/gentoo/gentoo/pull/32109 Signed-off-by: Maciej Barć <xgqt@gentoo.org>
* qt6-build.eclass: skip matching fma in 6.5.3+Ionen Wolkens2023-09-141-2/+3
| | | | | | | | | | | | | | | | | | Should no longer hard fail if lack AVX2 while have FMA, however it does (still) require to disable AVX2 if lacking anything else for any reason (e.g. broken VMs, oddball hardware, perhaps even users intentionally disabling a feature because they have a problem with it). Generally few users should see their flags modified. Feel the ideal would be for upstream to simply not use features that are disabled rather than error about an incomplete set, or just not use AVX2 if incomplete. Bug: https://bugs.gentoo.org/898644 Bug: https://bugs.gentoo.org/908420 Bug: https://bugs.gentoo.org/913843 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* Package move dev-lisp/ecls to dev-lisp/eclUlrich Müller2023-09-141-1/+1
| | | | | Closes: https://bugs.gentoo.org/586230 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* verify-sig.eclass: Fix list formatting for VERIFY_SIG_METHODMichał Górny2023-09-141-2/+2
| | | | | | Thanks to ulm for reporting. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* verify-sig.eclass: Fix handling multiple/duplicate signaturesMichał Górny2023-09-142-2/+14
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* verify-sig.eclass: Support `openssl dgst` format checksumsMichał Górny2023-09-142-18/+54
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* eclass/tests: Add initial tests for verify-sigMichał Górny2023-09-141-0/+65
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* python-utils-r1.eclass: unconditionally warn on occluded packages in cwdEli Schwartz2023-09-141-4/+0
| | | | | | | | | | | If the current directory masks packages that would be installed and contains different contents, it can cause testing issues that otherwise go unnoticed. This warning can stop being experimental and opt-in Suggested-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Closes: https://github.com/gentoo/gentoo/pull/32729 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* distutils-r1.eclass: teach setuptools to respect (some) build optionsEli Schwartz2023-09-141-38/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, setup.py was handled by: - manually passing makejobs, with a heuristic to guess whether it was a time saver to do so. - rm -rf'ing the build directory in between python versions to prevent cross-version contamination This is because in PEP 517 mode, it doesn't accept build options specific to a setuptools phase. So a crude hack is to just build_ext twice, once explicitly and once internally as part of bdist_wheel, and pray that in the latter case it detects that there's nothing to do. Unfortunately, sometimes build_ext does NOT detect that there is nothing to do -- e.g. for codegen tools such as mypyc, that produce *.c files which are different every time you try building. As for build directories, those were given up on as hopeless. There's a better hack which is to set a magic environment variable for a setup.cfg file which is parsed additionally to the one provided by the project. It can contain additional settings, such as the build-base and parallelism, which means that bdist_wheel intrinsically builds extensions in parallel the only time it is called. And we can set the output directory for all build artifacts to outside of the source tree, so it is no longer necessary to delete them (which among other things, makes debugging difficult). This is similar to .pydistutils.cfg, but is processed later and can be in arbitrary locations. Since we store it in the per-impl build directory we don't need to wipe it after using it to avoid leakage. Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Michał Górny <mgorny@gentoo.org>
* perl-module.eclass: fix Unquoted VariableArthur Zamarin2023-09-141-1/+1
| | | | | | Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/32703 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* kernel-2.eclass: fix Unquoted VariableArthur Zamarin2023-09-141-1/+1
| | | | | Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> Signed-off-by: Michał Górny <mgorny@gentoo.org>
* java-utils-2.eclass: fix Unquoted VariableArthur Zamarin2023-09-141-2/+2
| | | | | Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> Signed-off-by: Michał Górny <mgorny@gentoo.org>
* cuda.eclass: fix Unquoted VariableArthur Zamarin2023-09-141-3/+3
| | | | | Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> Signed-off-by: Michał Górny <mgorny@gentoo.org>
* kernel-build.eclass: pass INSTALL_MOD_STRIP in src_testSam James2023-09-141-1/+9
| | | | | Thanks-to: Andrew Ammerlaan <andrewammerlaan@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
* python-utils-r1.eclass: Redo cross-prefix support using sysconfigJames Le Cuirot2023-09-121-8/+6
| | | | | | | | We recently supported cross-prefix by rewriting PYTHON_SITEDIR and PYTHON_INCLUDEDIR from BROOT to EPREFIX. We now know that you can get sysconfig to use EPREFIX in the first place, which is cleaner. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
* qt6-build.eclass: include patch version in subslot for >=6.5.3Ionen Wolkens2023-09-111-1/+5
| | | | | | | | | | | | | | | | This matches Qt5 which had been doing the same. While working on qt-creator bump, noticed that it broke with qtquick3d-6.5.9999, which turned out because of changes in private APIs that will land in 6.5.3. In other words, it is going to need a rebuild when that lands but current SLOT=0/6.5 do not allow this. This could be a one-off issue but let's stay safer when private APIs are abused. This also keeps the 9999 in live subslot, so switching between live and releases will trigger rebuilds too. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* cmake.eclass: remove USER_VARIABLE from CMAKE_SKIP_TESTSIonen Wolkens2023-09-111-1/+0
| | | | | | | | | This is an array, and users cannot even set arrays through the environment. Must have been a copy/paste oversight (skipping ML review). Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* Revert "qt6-build.eclass: switch examples dir to /usr/lib*/qt6/examples"Ionen Wolkens2023-09-091-1/+1
| | | | | | | | | | | | | | This reverts commit c2d1b889127af2b11559f0ac3c41313058a4969a. See bug #881433, turns out probably should not build examples. So old location makes more sense if we are only going to install sources in it. Note does mean qtbase will need to be rebuilt before start using that location though (unused currently). Bug: https://bugs.gentoo.org/881433 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* qt6-build.eclass: pass eclass' cmakeargs before the ebuild'sIonen Wolkens2023-09-091-7/+7
| | | | | | | | | | To allow ebuilds to override default options if ever needed. wrt == *a*, not super necessary but still checked given this avoids picking up a mycmakeargs that may be set in the environment (arrays are always from ebuilds). Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* qt6-build.eclass: minor style & comments adjustmentsIonen Wolkens2023-09-091-8/+7
| | | | | | | | | | wrt skip->error comment, shortened partially for correctness. Most packages still fail either way due to `ninja install` having nothing to do (unless some files did get registered for install anyway). Albeit still want this to error during configure when required conditions are not met either way. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* eclass: remove obsolete python2.7 code from mozcoreconf-v6.eclassMyckel Habets2023-09-091-7/+0
| | | | | | | Closes: https://bugs.gentoo.org/698980 Signed-off-by: Myckel Habets <gentoo-bugs@habets-dobben.nl> Closes: https://github.com/gentoo/gentoo/pull/32682 Signed-off-by: Joonas Niilola <juippis@gentoo.org>
* qt6-build.eclass: more aggressively disable cpu flags mismatchIonen Wolkens2023-09-071-1/+1
| | | | | Closes: https://bugs.gentoo.org/913843 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* qt6-build.eclass: error harderIonen Wolkens2023-09-071-1/+1
| | | | | | Oops. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* qt6-build.eclass: abort build rather than skip on deps issuesIonen Wolkens2023-09-071-0/+6
| | | | | | | | | | | | | | Does not cover everything, there are some more "custom" checks that may either abort or skip. This is for the generic top level one that is the same across all of dev-qt/*:6 Afaik none of these should be able to trigger right now, but not impossible been overlooking if it just been skipped. Skipping+succeeding on tinderboxes that use minimal dependencies may especially lead to confusing issues without this. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* llvm.org.eclass: Add 18.0.0_pre20230906 snapshotMichał Górny2023-09-061-0/+3
| | | | Signed-off-by: Michał Górny <mgorny@gentoo.org>
* llvm.org.eclass: Fix handling patchset with only one componentMichał Górny2023-09-051-1/+1
| | | | | | | | Fix the irrelevant patch removal logic not to invoke rm(1) with no arguments if the patchset contains only patches for the current component. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* qt6-build.eclass: re-arrange QT6_BUILD_TYPE, add pre-releaseIonen Wolkens2023-09-051-28/+26
| | | | | | | | | | | | | | | | If add _beta and _rc odds are will not want them keyworded by default, but == release will keyword them all the same so need something different. If do want to keyword or match both for one reason or another, can still do == *release. Re-arranged to avoid repeating SRC_URI/QT6_P/S/etc... albeit it does make it a bit less clear (then again there's not much going on there). Also lets us merge the inherit block from below and inherit earlier for less SRC_URI+S inherit environment pollution. Also document QT6_BUILD_TYPE for EclassDocMissingVar. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* qt6-build.eclass: switch examples dir to /usr/lib*/qt6/examplesIonen Wolkens2023-09-051-1/+1
| | | | | | | | | | | | | | | | | | | | | This is used to install compiled test executables (not source examples or similar), meant to be executed from qtcreator (not that I've tried it). We do not install examples (yet), so no need to worry about files or qtbase remembering a bad path. Looking at other distros (at least those that do not set this to a docdir like we were and there are many), putting this under lib/*qt6/ alongside qt6/bin seems to be the typical choice. For actual source code examples, Qt has opted to not support installing these anymore (QTBUG-86302) so we'd have to doins -r ourselves either way, likely like normal docs unless something expects to find these in the Qt examples dir. Bug: https://bugs.gentoo.org/881433 Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
* qt6-build.eclass: skip filter-lto if custom-cflags existsIonen Wolkens2023-09-051-1/+1
| | | | | | | | Do not think this is particularly useful, but it is to avoid false advertising when IUSE exists. As usual anyone enabling this is on their own. Signed-off-by: Ionen Wolkens <ionen@gentoo.org>