summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-09-25 20:21:45 +0100
committerV3n3RiX <venerix@redcorelinux.org>2021-09-25 20:21:45 +0100
commitc719fdcee603a5a706a45d10cb598762d56a727d (patch)
tree620cbf137661399a3fb1eff92914204f9a970713 /eclass
parentcc4618c9ba3d974948ebf340b542d8cb01db2f55 (diff)
gentoo resync : 25.09.2021
Diffstat (limited to 'eclass')
-rw-r--r--eclass/Manifest.gzbin35982 -> 35993 bytes
-rw-r--r--eclass/ada.eclass14
-rw-r--r--eclass/go-module.eclass2
-rw-r--r--eclass/java-utils-2.eclass3
-rw-r--r--eclass/kernel-2.eclass2
-rw-r--r--eclass/llvm.org.eclass73
-rw-r--r--eclass/meson.eclass2
-rw-r--r--eclass/stardict.eclass8
-rw-r--r--eclass/systemd.eclass21
-rw-r--r--eclass/toolchain.eclass5
-rw-r--r--eclass/udev.eclass2
11 files changed, 113 insertions, 19 deletions
diff --git a/eclass/Manifest.gz b/eclass/Manifest.gz
index bb556c30ed38..c024f3a9237d 100644
--- a/eclass/Manifest.gz
+++ b/eclass/Manifest.gz
Binary files differ
diff --git a/eclass/ada.eclass b/eclass/ada.eclass
index 683417c6afe0..6089ed6e737f 100644
--- a/eclass/ada.eclass
+++ b/eclass/ada.eclass
@@ -58,7 +58,7 @@ EXPORT_FUNCTIONS pkg_setup
# @DESCRIPTION:
# All supported Ada implementations, most preferred last.
_ADA_ALL_IMPLS=(
- gnat_2017 gnat_2018 gnat_2019 gnat_2020 gnat_2021
+ gnat_2019 gnat_2020 gnat_2021
)
readonly _ADA_ALL_IMPLS
@@ -83,7 +83,7 @@ _ada_impl_supported() {
# keep in sync with _ADA_ALL_IMPLS!
# (not using that list because inline patterns shall be faster)
case "${impl}" in
- gnat_201[789])
+ gnat_2019)
return 0
;;
gnat_202[01])
@@ -200,14 +200,6 @@ ada_export() {
local gcc_pv
local slot
case "${impl}" in
- gnat_2017)
- gcc_pv=6.3.0
- slot=6.3.0
- ;;
- gnat_2018)
- gcc_pv=7.3.1
- slot=7.3.1
- ;;
gnat_2019)
gcc_pv=8.3.1
slot=8.3.1
@@ -287,7 +279,7 @@ _ada_single_set_globals() {
local flags=( "${_ADA_SUPPORTED_IMPLS[@]/#/ada_target_}" )
local unflags=( "${_ADA_UNSUPPORTED_IMPLS[@]/#/-ada_target_}" )
- local allflags=( ${flags[@]} ${unflags[@]} )
+ local allflags=( "${_ADA_ALL_IMPLS[@]/#/ada_target_}" )
local optflags=${flags[@]/%/(-)?}
diff --git a/eclass/go-module.eclass b/eclass/go-module.eclass
index d1e81babf1f8..3ad8542a28ae 100644
--- a/eclass/go-module.eclass
+++ b/eclass/go-module.eclass
@@ -75,7 +75,7 @@ export GOCACHE="${T}/go-build"
# The following go flags should be used for all builds.
# -v prints the names of packages as they are compiled
# -x prints commands as they are executed
-export GOFLAGS="-v -x"
+export GOFLAGS="-v -x -modcacherw"
# Do not complain about CFLAGS etc since go projects do not use them.
QA_FLAGS_IGNORED='.*'
diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass
index 0e2ed2902842..2c93cbdf0eeb 100644
--- a/eclass/java-utils-2.eclass
+++ b/eclass/java-utils-2.eclass
@@ -1565,8 +1565,7 @@ java-pkg_ensure-vm-version-ge() {
# Parameters:
# $@ - VM version to compare current VM to
# @CODE
-# @RETURN: zero - current VM version is greater than checked version;
-# non-zero - current VM version is not greater than checked version
+# @RETURN: zero - current VM version is greater than checked version; non-zero - current VM version is not greater than checked version
java-pkg_is-vm-version-ge() {
debug-print-function ${FUNCNAME} $*
diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 983ba916931d..adc1425bc2e2 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -599,7 +599,7 @@ if [[ ${ETYPE} == sources ]]; then
K_DEBLOB_AVAILABLE=0
fi
if [[ ${K_DEBLOB_AVAILABLE} == 1 ]]; then
- PYTHON_COMPAT=( python3_{7..10} )
+ PYTHON_COMPAT=( python3_{8..10} )
inherit python-any-r1
diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index fa426f91dff8..f33599c3bb58 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -95,6 +95,60 @@ inherit multiprocessing
# @DESCRIPTION:
# LLVM patchset version. No patchset is used if unset.
+# @ECLASS-VARIABLE: LLVM_USE_TARGETS
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Add LLVM_TARGETS flags. The following values are supported:
+#
+# - provide - this package provides LLVM targets. USE flags
+# and REQUIRED_USE will be added but no dependencies.
+#
+# - llvm - this package uses targets from LLVM. RDEPEND+DEPEND
+# on matching sys-devel/llvm versions with requested flags will
+# be added.
+#
+# Note that you still need to pass enabled targets to the build system,
+# usually grabbing them from ${LLVM_TARGETS} (via USE_EXPAND).
+
+
+# == global data ==
+
+# @ECLASS-VARIABLE: ALL_LLVM_EXPERIMENTAL_TARGETS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# The complete list of LLVM experimental targets available in this LLVM
+# version. The value depends on ${PV}.
+
+# @ECLASS-VARIABLE: ALL_LLVM_PRODUCTION_TARGETS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# The complete list of LLVM production-ready targets available in this
+# LLVM version. The value depends on ${PV}.
+
+# @ECLASS-VARIABLE: ALL_LLVM_TARGET_FLAGS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# The list of USE flags corresponding to all LLVM targets in this LLVM
+# version. The value depends on ${PV}.
+
+case ${PV} in
+ 10*|11*|12*)
+ # this API is not present for old LLVM versions
+ ;;
+ *)
+ ALL_LLVM_EXPERIMENTAL_TARGETS=( ARC CSKY M68k VE )
+ ALL_LLVM_PRODUCTION_TARGETS=(
+ AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430 NVPTX
+ PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore
+ )
+ ;;
+esac
+
+ALL_LLVM_TARGET_FLAGS=(
+ "${ALL_LLVM_PRODUCTION_TARGETS[@]/#/llvm_targets_}"
+ "${ALL_LLVM_EXPERIMENTAL_TARGETS[@]/#/llvm_targets_}"
+)
+
# == global scope logic ==
@@ -156,6 +210,25 @@ llvm.org_set_globals() {
https://dev.gentoo.org/~mgorny/dist/llvm/llvm-gentoo-patchset-${LLVM_PATCHSET}.tar.xz"
fi
+ local x
+ case ${LLVM_USE_TARGETS:-__unset__} in
+ __unset__)
+ ;;
+ provide|llvm)
+ IUSE+=" ${ALL_LLVM_TARGET_FLAGS[*]}"
+ REQUIRED_USE+=" || ( ${ALL_LLVM_TARGET_FLAGS[*]} )"
+ ;;&
+ llvm)
+ local dep=
+ for x in "${ALL_LLVM_TARGET_FLAGS[@]}"; do
+ dep+="
+ ${x}? ( ~sys-devel/llvm-${PV}[${x}] )"
+ done
+ RDEPEND+=" ${dep}"
+ DEPEND+=" ${dep}"
+ ;;
+ esac
+
# === useful defaults for cmake-based packages ===
# least intrusive of all
diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index eaff26709a75..4ba364924e40 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -47,7 +47,7 @@ inherit multiprocessing ninja-utils python-utils-r1 toolchain-funcs
EXPORT_FUNCTIONS src_configure src_compile src_test src_install
-_MESON_DEPEND=">=dev-util/meson-0.57.0
+_MESON_DEPEND=">=dev-util/meson-0.58.2-r1
>=dev-util/ninja-1.8.2
dev-util/meson-format-array
"
diff --git a/eclass/stardict.eclass b/eclass/stardict.eclass
index d07fee03b446..74a93b3f7c56 100644
--- a/eclass/stardict.eclass
+++ b/eclass/stardict.eclass
@@ -1,10 +1,14 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-# @NAME: stardict.eclass
-# @AUTHOR: Alastair Tse <liquidx@gentoo.org>
+# @ECLASS: stardict.eclass
+# @MAINTAINER:
+# No maintainer <maintainer-needed@gentoo.org>
+# @AUTHOR:
+# Alastair Tse <liquidx@gentoo.org>
# @SUPPORTED_EAPIS: 6 7
# @BLURB: Convenience class to do stardict dictionary installations.
+# @DESCRIPTION:
# Usage:
# - Variables to set :
# * FROM_LANG - From this language
diff --git a/eclass/systemd.eclass b/eclass/systemd.eclass
index 27e4dcae1ff7..7731bede094e 100644
--- a/eclass/systemd.eclass
+++ b/eclass/systemd.eclass
@@ -48,6 +48,9 @@ _systemd_get_dir() {
[[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} <variable-name> <fallback-directory>"
local variable=${1} fallback=${2} d
+ # https://github.com/pkgconf/pkgconf/issues/205
+ local -x PKG_CONFIG_FDO_SYSROOT_RULES=1
+
if $(tc-getPKG_CONFIG) --exists systemd; then
d=$($(tc-getPKG_CONFIG) --variable="${variable}" systemd) || die
d=${d#${EPREFIX}}
@@ -142,6 +145,24 @@ systemd_get_systemgeneratordir() {
echo "${EPREFIX}$(_systemd_get_systemgeneratordir)"
}
+# @FUNCTION: _systemd_get_systempresetdir
+# @INTERNAL
+# @DESCRIPTION:
+# Get unprefixed systempresetdir.
+_systemd_get_systempresetdir() {
+ _systemd_get_dir systemdsystempresetdir /lib/systemd/system-preset
+}
+
+# @FUNCTION: systemd_get_systempresetdir
+# @DESCRIPTION:
+# Output the path for the systemd system preset directory (not including
+# ${D}). This function always succeeds, even if systemd is not installed.
+systemd_get_systempresetdir() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ echo "${EPREFIX}$(_systemd_get_systempresetdir)"
+}
+
# @FUNCTION: systemd_dounit
# @USAGE: <unit>...
# @DESCRIPTION:
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 5bfa58e4a207..b68ac30e89fd 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1,8 +1,11 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-# Maintainer: Toolchain Ninjas <toolchain@gentoo.org>
+# @ECLASS: toolchain.eclass
+# @MAINTAINER:
+# Toolchain Ninjas <toolchain@gentoo.org>
# @SUPPORTED_EAPIS: 5 6 7 8
+# @BLURB: Common code for sys-devel/gcc ebuilds
DESCRIPTION="The GNU Compiler Collection"
HOMEPAGE="https://gcc.gnu.org/"
diff --git a/eclass/udev.eclass b/eclass/udev.eclass
index 7f9415914cd2..073e5d8acbc9 100644
--- a/eclass/udev.eclass
+++ b/eclass/udev.eclass
@@ -49,6 +49,8 @@ fi
# @DESCRIPTION:
# Get unprefixed udevdir.
_udev_get_udevdir() {
+ # https://github.com/pkgconf/pkgconf/issues/205
+ local -x PKG_CONFIG_FDO_SYSROOT_RULES=1
if $($(tc-getPKG_CONFIG) --exists udev); then
local udevdir="$($(tc-getPKG_CONFIG) --variable=udevdir udev)"
echo "${udevdir#${EPREFIX%/}}"