[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-21 Thread Sam James
commit: 28fca56a1639578fc58de1e8310b7c94a5e12e09
Author: Sam James  gentoo  org>
AuthorDate: Mon Apr 22 03:13:04 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Apr 22 03:13:52 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=28fca56a

toolchain.eclass: propagate USE=zstd to libgccjit build

You *can* do LTO with libgccjit, apparently, and it even works if we don't
break the compression used for LTO with it. Pass down the zstd arg from
USE=zstd like we do for the regular build.

Thanks to StrawberryTea for reporting.

Closes: https://bugs.gentoo.org/926953
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 690b21c22d8e..a5d4345e7fbf 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1462,7 +1462,7 @@ toolchain_src_configure() {
# respect USE=graphite here in case the user passes some
# graphite flags rather than try strip them out.
$(use_with graphite isl)
-   --without-zstd
+   $(use_with zstd)
--with-system-zlib
)
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-20 Thread Ionen Wolkens
commit: fbf048eddd72b5377dca5dd44e5960f4e70cf963
Author: Ionen Wolkens  gentoo  org>
AuthorDate: Sat Apr 20 13:16:28 2024 +
Commit: Ionen Wolkens  gentoo  org>
CommitDate: Sat Apr 20 14:19:54 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbf048ed

qt6-build.eclass: add QT6_RESTRICT_TESTS variable

At same time, remove the qttranslations special logic,
it can just make use of the variable instead.

Bug: https://bugs.gentoo.org/930266
Signed-off-by: Ionen Wolkens  gentoo.org>

 eclass/qt6-build.eclass | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 59baaa77ce6d..8fb40c287672 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -37,6 +37,15 @@ inherit cmake flag-o-matic toolchain-funcs
 #  - pre-release: development 6.x.x_rc/beta/alpha releases
 #  - live: *. (dev branch), 6.x. (stable branch)
 
+# @ECLASS_VARIABLE: QT6_RESTRICT_TESTS
+# @DEFAULT_UNSET
+# @PRE_INHERIT
+# @DESCRIPTION:
+# If set to a non-empty value, will not add IUSE="test" and set
+# RESTRICT="test" instead.  Primarily intended for ebuilds where
+# running tests is unmaintained (or missing) rather than just
+# temporarily restricted not to have a broken USE (bug #930266).
+
 if [[ ${PV} == *. ]]; then
inherit git-r3
EGIT_REPO_URI=(
@@ -68,7 +77,9 @@ HOMEPAGE="https://www.qt.io/;
 LICENSE="|| ( GPL-2 GPL-3 LGPL-3 ) FDL-1.3"
 SLOT=6/${PV%%_*}
 
-if [[ ${PN} != qttranslations ]]; then
+if [[ ${QT6_RESTRICT_TESTS} ]]; then
+   RESTRICT="test"
+else
IUSE="test"
RESTRICT="!test? ( test )"
 fi
@@ -139,7 +150,7 @@ qt6-build_src_configure() {
# see _qt6-build_create_user_facing_links
-DINSTALL_PUBLICBINDIR="${QT6_PREFIX}"/bin
# note that if qtbase was built with tests, this is default ON
-   -DQT_BUILD_TESTS=$(usex test ON OFF)
+   -DQT_BUILD_TESTS=$(in_iuse test && use test && echo ON || echo 
OFF)
# avoid appending -O2 after user's C(XX)FLAGS (bug #911822)
-DQT_USE_DEFAULT_CMAKE_OPTIMIZATION_FLAGS=ON
)



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-20 Thread Ionen Wolkens
commit: 57ae811174c14f749664d387fa22775be0482301
Author: Ionen Wolkens  gentoo  org>
AuthorDate: Sat Apr 20 13:19:00 2024 +
Commit: Ionen Wolkens  gentoo  org>
CommitDate: Sat Apr 20 14:19:54 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=57ae8111

qt6-build.eclass: sort eclass variables

Signed-off-by: Ionen Wolkens  gentoo.org>

 eclass/qt6-build.eclass | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/eclass/qt6-build.eclass b/eclass/qt6-build.eclass
index 8fb40c287672..4fc838c478af 100644
--- a/eclass/qt6-build.eclass
+++ b/eclass/qt6-build.eclass
@@ -23,13 +23,6 @@ _QT6_BUILD_ECLASS=1
 
 inherit cmake flag-o-matic toolchain-funcs
 
-# @ECLASS_VARIABLE: QT6_MODULE
-# @PRE_INHERIT
-# @DESCRIPTION:
-# The upstream name of the module this package belongs to.
-# Used for SRC_URI and EGIT_REPO_URI.
-: "${QT6_MODULE:=${PN}}"
-
 # @ECLASS_VARIABLE: QT6_BUILD_TYPE
 # @DESCRIPTION:
 # Read only variable set based on PV to one of:
@@ -37,6 +30,13 @@ inherit cmake flag-o-matic toolchain-funcs
 #  - pre-release: development 6.x.x_rc/beta/alpha releases
 #  - live: *. (dev branch), 6.x. (stable branch)
 
+# @ECLASS_VARIABLE: QT6_MODULE
+# @PRE_INHERIT
+# @DESCRIPTION:
+# The upstream name of the module this package belongs to.
+# Used for SRC_URI and EGIT_REPO_URI.
+: "${QT6_MODULE:=${PN}}"
+
 # @ECLASS_VARIABLE: QT6_RESTRICT_TESTS
 # @DEFAULT_UNSET
 # @PRE_INHERIT



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-20 Thread Michał Górny
commit: 73ed9ad5f1d6b57aeef00ab672e048873b711c8f
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Apr 20 09:38:23 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Apr 20 09:38:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73ed9ad5

llvm.org.eclass: Add 19.0.0_pre20240420 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index d2f95fe6b42d..49e600bdaf04 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240420)
+   
EGIT_COMMIT=f03cd2db91956456f1c5e2da86d3c50183eebd28
+   ;;
19.0.0_pre20240410)

EGIT_COMMIT=ee284d2da0720dc21191d6f545504cbfcf5dcbcf
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-19 Thread Michał Górny
commit: f94c706722649d20fe37657180c1ad3abcebf0f5
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Apr 20 04:29:32 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Apr 20 05:40:35 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f94c7067

llvm.org.eclass: Remove support for old snapshots

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 6 --
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 731044d59f48..d2f95fe6b42d 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
19.0.0_pre20240410)

EGIT_COMMIT=ee284d2da0720dc21191d6f545504cbfcf5dcbcf
;;
-   19.0.0_pre20240404)
-   
EGIT_COMMIT=12735916bd3a63aa9f316af8eebfe9420cfec489
-   ;;
-   19.0.0_pre20240330)
-   
EGIT_COMMIT=a8b0ecd2605ff23f495a8af64e06c35f86834e54
-   ;;
*)
die "Unknown snapshot: ${PV}"
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-19 Thread Mike Gilbert
commit: afe0521495aeed0a22a3656e7bad193fba39805e
Author: Mike Gilbert  gentoo  org>
AuthorDate: Tue Apr 16 20:50:33 2024 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Fri Apr 19 23:10:45 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afe05214

meson.eclass: preserve exit status in phase funcs

When the functions are called with nonfatal, we need to ensure 'popd'
does not clobber the exit status of the called command.

Update meson_src_configure as well just for consistency.

Closes: https://bugs.gentoo.org/930119
Signed-off-by: Mike Gilbert  gentoo.org>

 eclass/meson.eclass | 20 
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 9d7f830e58b0..a22a85887584 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -425,7 +425,10 @@ meson_src_configure() {
export -n {C,CPP,CXX,F,OBJC,OBJCXX,LD}FLAGS 
PKG_CONFIG_{LIBDIR,PATH}
echo meson setup "${MESONARGS[@]}" >&2
meson setup "${MESONARGS[@]}"
-   ) || die -n
+   )
+   local rv=$?
+   [[ ${rv} -eq 0 ]] || die -n "configure failed"
+   return ${rv}
 }
 
 # @FUNCTION: meson_src_compile
@@ -451,9 +454,12 @@ meson_src_compile() {
 
set -- meson compile "${mesoncompileargs[@]}"
echo "$@" >&2
-   "$@" || die -n "compile failed"
+   "$@"
+   local rv=$?
+   [[ ${rv} -eq 0 ]] || die -n "compile failed"
 
popd > /dev/null || die
+   return ${rv}
 }
 
 # @FUNCTION: meson_src_test
@@ -473,9 +479,12 @@ meson_src_test() {
 
set -- meson test "${mesontestargs[@]}"
echo "$@" >&2
-   "$@" || die -n "tests failed"
+   "$@"
+   local rv=$?
+   [[ ${rv} -eq 0 ]] || die -n "tests failed"
 
popd > /dev/null || die
+   return ${rv}
 }
 
 # @FUNCTION: meson_install
@@ -495,9 +504,12 @@ meson_install() {
 
set -- meson install "${mesoninstallargs[@]}"
echo "$@" >&2
-   "$@" || die -n "install failed"
+   "$@"
+   local rv=$?
+   [[ ${rv} -eq 0 ]] || die -n "install failed"
 
popd > /dev/null || die
+   return ${rv}
 }
 
 # @FUNCTION: meson_src_install



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-19 Thread Michał Górny
commit: 6eeff48db938afd6f8fa8dc49ca864719858920e
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Apr 16 14:55:16 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Apr 19 18:46:45 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6eeff48d

distutils-r1.eclass: Document DISTUTILS_ARGS for maturin & meson

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 7a314673a90b..ddcba288d85c 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -448,6 +448,12 @@ unset -f _distutils_set_globals
 # An array containing options to be passed to the build system.
 # Supported by a subset of build systems used by the eclass.
 #
+# For maturin, the arguments will be passed as `maturin build`
+# arguments.
+#
+# For meson-python, the arguments will be passed as `meson setup`
+# arguments.
+#
 # For setuptools, the arguments will be passed as first parameters
 # to setup.py invocations (via esetup.py), as well as to the PEP517
 # backend.  For future compatibility, only global options should be used



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-19 Thread Michał Górny
commit: 75a308e0686ff3757855e05ff06e9ba7418a0458
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Apr 16 15:26:58 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Apr 19 18:46:46 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=75a308e0

distutils-r1.eclass: Pass arguments to scikit-build-core

Support passing DISTUTILS_ARGS to scikit-build-core, along with some
standard arguments that:

- ensure that CFLAGS, CXXFLAGS, CPPFLAGS and so on, are respected
- respect CMAKE_BUILD_TYPE, along with the default of RelWithDebInfo
- enable verbose builds
- disable stripping

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 43 +++
 1 file changed, 43 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index ddcba288d85c..a67122a59a33 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -454,6 +454,9 @@ unset -f _distutils_set_globals
 # For meson-python, the arguments will be passed as `meson setup`
 # arguments.
 #
+# For scikit-build-core, the arguments will be passed as `cmake`
+# options (e.g. `-DFOO=BAR` form should be used).
+#
 # For setuptools, the arguments will be passed as first parameters
 # to setup.py invocations (via esetup.py), as well as to the PEP517
 # backend.  For future compatibility, only global options should be used
@@ -1412,6 +1415,46 @@ distutils_pep517_install() {
EOF
)
;;
+   scikit-build-core)
+   # TODO: split out the config/toolchain logic from 
cmake.eclass
+   # for now, we copy the most important bits
+   local 
CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE:-RelWithDebInfo}
+   cat >> "${BUILD_DIR}"/config.cmake <<- _EOF_ || die
+   set(CMAKE_ASM_FLAGS_${CMAKE_BUILD_TYPE^^} "" 
CACHE STRING "")
+   set(CMAKE_ASM-ATT_FLAGS_${CMAKE_BUILD_TYPE^^} 
"" CACHE STRING "")
+   set(CMAKE_C_FLAGS_${CMAKE_BUILD_TYPE^^} "" 
CACHE STRING "")
+   set(CMAKE_CXX_FLAGS_${CMAKE_BUILD_TYPE^^} "" 
CACHE STRING "")
+   set(CMAKE_Fortran_FLAGS_${CMAKE_BUILD_TYPE^^} 
"" CACHE STRING "")
+   
set(CMAKE_EXE_LINKER_FLAGS_${CMAKE_BUILD_TYPE^^} "" CACHE STRING "")
+   
set(CMAKE_MODULE_LINKER_FLAGS_${CMAKE_BUILD_TYPE^^} "" CACHE STRING "")
+   
set(CMAKE_SHARED_LINKER_FLAGS_${CMAKE_BUILD_TYPE^^} "" CACHE STRING "")
+   
set(CMAKE_STATIC_LINKER_FLAGS_${CMAKE_BUILD_TYPE^^} "" CACHE STRING "")
+   _EOF_
+
+   # hack around CMake ignoring CPPFLAGS
+   local -x CFLAGS="${CFLAGS} ${CPPFLAGS}"
+   local -x CXXFLAGS="${CXXFLAGS} ${CPPFLAGS}"
+
+   local cmake_args=(
+   "-C${BUILD_DIR}/config.cmake"
+   "${DISTUTILS_ARGS[@]}"
+   )
+
+   # NB: we need to pass strings for boolean fields
+   # 
https://github.com/scikit-build/scikit-build-core/issues/707
+   config_settings=$(
+   "${EPYTHON}" - "${cmake_args[@]}" <<-EOF || die
+   import json
+   import sys
+   print(json.dumps({
+   "cmake.args": 
";".join(sys.argv[1:]),
+   "cmake.build-type": 
"${CMAKE_BUILD_TYPE}",
+   "cmake.verbose": "true",
+   "install.strip": "false",
+   }))
+   EOF
+   )
+   ;;
setuptools)
if in_iuse debug && use debug; then
local -x SETUPTOOLS_RUST_CARGO_PROFILE=dev



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-17 Thread Sam James
commit: 5d5e200b89aaf06308a48ea7c0e010e3e81a5892
Author: Sam James  gentoo  org>
AuthorDate: Wed Apr 17 23:33:14 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Wed Apr 17 23:33:31 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d5e200b

toolchain.eclass: depend on virtual/rust for USE=rust (!)

This is a temporary measure from upstream commit r14-9968-g3e1e73fc995844.

See also https://inbox.sourceware.org/gcc/34fec7ea-8762-4cac-a1c8-ff54e20e31ed 
 embecosm.com/.

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 2a74e6f165df..690b21c22d8e 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -406,6 +406,12 @@ if tc_has_feature d && tc_version_is_at_least 12.0 ; then
BDEPEND+=" d? ( || ( sys-devel/gcc[d(-)] https://inbox.sourceware.org/gcc/34fec7ea-8762-4cac-a1c8-ff54e20e3...@embecosm.com/
+   BDEPEND+=" rust? ( virtual/rust )"
+fi
+
 PDEPEND=">=sys-devel/gcc-config-2.11"
 
 #>> S + SRC_URI essentials <<



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-15 Thread Sam James
commit: ef9d26ba1e410d25b94cab81a6606e96e85d35d8
Author: Gabi Falk  gmx  com>
AuthorDate: Mon Apr 15 08:00:00 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Apr 16 01:38:48 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef9d26ba

toolchain.eclass: add a variable to force baseline regeneration

Suggested-by: Sam James  gentoo.org>
Signed-off-by: Gabi Falk  gmx.com>
Closes: https://github.com/gentoo/gentoo/pull/36244
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 33 +
 1 file changed, 25 insertions(+), 8 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 786d65da2d9a..2a74e6f165df 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -117,6 +117,13 @@ tc_version_is_between() {
 # Ignore missing baseline/reference data and create new baseline.
 : "${GCC_TESTS_IGNORE_NO_BASELINE:=}"
 
+# @ECLASS_VARIABLE: GCC_TESTS_REGEN_BASELINE
+# @DEFAULT_UNSET
+# @USER_VARIABLE
+# @DESCRIPTION:
+# Ignore baseline/reference data and create new baseline.
+: "${GCC_TESTS_REGEN_BASELINE:=}"
+
 # @ECLASS_VARIABLE: GCC_TESTS_CHECK_TARGET
 # @USER_VARIABLE
 # @DESCRIPTION:
@@ -1917,17 +1924,25 @@ toolchain_src_test() {
--manifest="${T}"/${CHOST}.xfail \
--produce_manifest &> /dev/null
 
-   if [[ -f 
"${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail" ]] ; 
then
+   local 
manifest="${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail"
+
+   if [[ -f "${manifest}" ]] ; then
# TODO: Distribute some baseline results in e.g. 
gcc-patches.git?
# validate_failures.py manifest files support include 
directives.
-   einfo "Comparing with previous cached results at 
GCC_TESTS_COMPARISON_DIR=${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail"
+   einfo "Comparing with previous cached results at ${manifest}"
 
-   edo "${T}"/validate_failures.py \
+   nonfatal edo "${T}"/validate_failures.py \
--srcpath="${S}" \
--build_dir="${WORKDIR}"/build \
-   
--manifest="${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail"
+   --manifest="${manifest}"
+   ret=$?
+
+   if [[ -n ${GCC_TESTS_REGEN_BASELINE} ]] ; then
+   eerror "GCC_TESTS_REGEN_BASELINE is set, ignoring test 
result and creating a new baseline..."
+   elif [[ ${ret} != 0 ]]; then
+   die "Tests failed (failures not listed in the baseline 
data)"
+   fi
else
-   # nonfatal first because we want to run again with comparison 
data if available.
nonfatal edo "${T}"/validate_failures.py \
--srcpath="${S}" \
--build_dir="${WORKDIR}"/build
@@ -1935,13 +1950,15 @@ toolchain_src_test() {
 
# We have no reference data saved from a previous run to know if
# the failures are tolerable or not, so we bail out.
-   eerror "No reference test data at 
GCC_TESTS_COMPARISON_DIR=${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail!"
+   eerror "No reference test data at ${manifest}!"
eerror "GCC's tests require a baseline to compare with for any 
reasonable interpretation of results."
 
if [[ -n ${GCC_TESTS_IGNORE_NO_BASELINE} ]] ; then
-   eerror "GCC_TESTS_IGNORE_NO_BASELINE is set, creating 
new baseline manifest..."
+   eerror "GCC_TESTS_IGNORE_NO_BASELINE is set, ignoring 
test result and creating a new baseline..."
+   elif [[ -n ${GCC_TESTS_REGEN_BASELINE} ]] ; then
+   eerror "GCC_TESTS_REGEN_BASELINE is set, ignoring test 
result and creating using a new baseline..."
elif [[ ${ret} != 0 ]]; then
-   eerror "(Set GCC_TESTS_IGNORE_NO_BASELINE=1 to make 
this non-fatal for initial run.)"
+   eerror "(Set GCC_TESTS_IGNORE_NO_BASELINE=1 to make 
this non-fatal and generate a baseline.)"
die "Tests failed (failures occurred with no reference 
data)"
fi
fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-15 Thread Sam James
commit: 05e717935070724efb622f17ef8d60c68a75c4b4
Author: Gabi Falk  gmx  com>
AuthorDate: Sat Apr 13 08:00:00 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Apr 16 01:38:47 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=05e71793

toolchain.eclass: do not ignore a baseline with GCC_TESTS_IGNORE_NO_BASELINE

The GCC_TESTS_IGNORE_NO_BASELINE flag is intended to facilitate the
initial generation of a baseline file, but it shouldn't affect the
behavior if a baseline file already exists.

Fixes: 1d93a491096f1cc0234fcf44458bfec142c213bb ("toolchain.eclass: rework 
tests more")
Signed-off-by: Gabi Falk  gmx.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 0708d3c217fc..37a806e1c800 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1908,7 +1908,7 @@ toolchain_src_test() {
# the exit code of targets other than 'check' may be unreliable.
nonfatal emake -C "${WORKDIR}"/build -k "${GCC_TESTS_CHECK_TARGET}" 
RUNTESTFLAGS="${GCC_TESTS_RUNTESTFLAGS}"
 
-   if [[ -z ${GCC_TESTS_IGNORE_NO_BASELINE} && -f 
"${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail" ]] ; 
then
+   if [[ -f 
"${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail" ]] ; 
then
# TODO: Distribute some baseline results in e.g. 
gcc-patches.git?
# validate_failures.py manifest files support include 
directives.
einfo "Comparing with previous cached results at 
GCC_TESTS_COMPARISON_DIR=${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-15 Thread Sam James
commit: b91c99d07e33c296a23e3b18b2658b81815b6b31
Author: Gabi Falk  gmx  com>
AuthorDate: Mon Apr 15 08:00:00 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Apr 16 01:38:48 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b91c99d0

toolchain.eclass: always generate a new test-suite baseline manifest

Previously, a new baseline was generated only in cases of test suite
success or when GCC_TESTS_IGNORE_NO_BASELINE was enabled.
After this change, if there is a test suite regression, users will have
the option to copy the new baseline file to the cache if they choose to
tolerate the regression.  Additionally, the toolchain_pkg_preinst()
function will update the baseline automatically if the package is built
with the FEATURES=test-fail-continue setting.

Signed-off-by: Gabi Falk  gmx.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 16 +---
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 37a806e1c800..786d65da2d9a 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1908,6 +1908,15 @@ toolchain_src_test() {
# the exit code of targets other than 'check' may be unreliable.
nonfatal emake -C "${WORKDIR}"/build -k "${GCC_TESTS_CHECK_TARGET}" 
RUNTESTFLAGS="${GCC_TESTS_RUNTESTFLAGS}"
 
+   # Produce an updated failure manifest.
+   einfo "Generating a new failure manifest ${T}/${CHOST}.xfail"
+   rm -f "${T}"/${CHOST}.xfail
+   edo "${T}"/validate_failures.py \
+   --srcpath="${S}" \
+   --build_dir="${WORKDIR}"/build \
+   --manifest="${T}"/${CHOST}.xfail \
+   --produce_manifest &> /dev/null
+
if [[ -f 
"${GCC_TESTS_COMPARISON_DIR}/${GCC_TESTS_COMPARISON_SLOT}/${CHOST}.xfail" ]] ; 
then
# TODO: Distribute some baseline results in e.g. 
gcc-patches.git?
# validate_failures.py manifest files support include 
directives.
@@ -1936,13 +1945,6 @@ toolchain_src_test() {
die "Tests failed (failures occurred with no reference 
data)"
fi
fi
-
-   # Produce an updated set of expected results
-   edo "${T}"/validate_failures.py \
-   --srcpath="${S}" \
-   --build_dir="${WORKDIR}"/build \
-   --manifest="${T}"/${CHOST}.xfail \
-   --produce_manifest &> /dev/null
 }
 
 #>> src_install <<



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-13 Thread Miroslav Šulc
commit: e696ced5917acc63095cc2074ca3d5c14437b10b
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Sat Apr 13 16:50:40 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sat Apr 13 20:03:08 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e696ced5

ant-tasks.eclass: mark ant-tasks.eclass dead

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/36240
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/ant-tasks.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/ant-tasks.eclass b/eclass/ant-tasks.eclass
index c1a82ccbab5b..2b10e0f3e1e0 100644
--- a/eclass/ant-tasks.eclass
+++ b/eclass/ant-tasks.eclass
@@ -1,7 +1,7 @@
 # Copyright 2007-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-# @DEPRECATED:
+# @DEAD
 # @ECLASS: ant-tasks.eclass
 # @MAINTAINER:
 # j...@gentoo.org



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-13 Thread Sam James
commit: 4d338f1c63ef163974417a4e4754dd47899a4681
Author: Gabi Falk  gmx  com>
AuthorDate: Fri Apr 12 08:00:00 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Apr 13 18:40:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d338f1c

toolchain.eclass: fix installation of gcc[test] packages from binary

Fixes: abf8e2ee55c52c8ae894e0b3845ea1cebfcfd4e8 ("toolchain.eclass:
install test results as orphaned files in /var/cache/gcc")

Signed-off-by: Gabi Falk  gmx.com>
Closes: https://github.com/gentoo/gentoo/pull/36224
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 6a515f9b5c69..0708d3c217fc 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2325,7 +2325,7 @@ create_revdep_rebuild_entry() {
 #>> pkg_pre* <<
 
 toolchain_pkg_preinst() {
-   if use test ; then
+   if [[ ${MERGE_TYPE} != binary ]] && use test ; then
# Install as orphaned to allow comparison across more versions 
even
# after unmerged. Also useful for historical records and 
tracking
# down regressions a while after they first appeared, but were 
only



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-13 Thread Ulrich Müller
commit: 18c07179cce50cda3c99858f419df8f5a755eebe
Author: Ulrich Müller  gentoo  org>
AuthorDate: Fri Apr 12 01:40:25 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Sat Apr 13 18:31:52 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18c07179

rpm.eclass: Drop support for EAPI 6

Signed-off-by: Ulrich Müller  gentoo.org>

 eclass/rpm.eclass | 63 +++
 1 file changed, 3 insertions(+), 60 deletions(-)

diff --git a/eclass/rpm.eclass b/eclass/rpm.eclass
index b9187167eb8f..c9c21aa6ebbd 100644
--- a/eclass/rpm.eclass
+++ b/eclass/rpm.eclass
@@ -1,14 +1,13 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: rpm.eclass
 # @MAINTAINER:
 # base-sys...@gentoo.org
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: convenience class for extracting RPMs
 
 case ${EAPI} in
-   6) inherit epatch eqawarn ;;
7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
@@ -18,10 +17,7 @@ _RPM_ECLASS=1
 
 inherit estack
 
-case ${EAPI} in
-   6) DEPEND="app-arch/rpm2targz" ;;
-   *) BDEPEND="app-arch/rpm2targz" ;;
-esac
+BDEPEND="app-arch/rpm2targz"
 
 # @FUNCTION: rpm_unpack
 # @USAGE: 
@@ -88,59 +84,6 @@ rpm_src_unpack() {
done
 }
 
-# @FUNCTION: rpm_spec_epatch
-# @USAGE: [spec]
-# @DEPRECATED: none
-# @DESCRIPTION:
-# Read the specified spec (defaults to ${PN}.spec) and attempt to apply
-# all the patches listed in it.  If the spec does funky things like moving
-# files around, well this won't handle that.
-rpm_spec_epatch() {
-   # no epatch in EAPI 7 and later
-   [[ ${EAPI} == 6 ]] || die "${FUNCNAME} is banned in EAPI ${EAPI}"
-
-   local p spec=$1
-   local dir
-
-   if [[ -z ${spec} ]] ; then
-   # search likely places for the spec file
-   for spec in "${PWD}" "${S}" "${WORKDIR}" ; do
-   spec+="/${PN}.spec"
-   [[ -e ${spec} ]] && break
-   done
-   fi
-   [[ ${spec} == */* ]] \
-   && dir=${spec%/*} \
-   || dir=
-
-   ebegin "Applying patches from ${spec}"
-
-   grep '^%patch' "${spec}" | \
-   while read line ; do
-   # expand the %patch line
-   set -- ${line}
-   p=$1
-   shift
-
-   # process the %patch arguments
-   local arg
-   EPATCH_OPTS=
-   for arg in "$@" ; do
-   case ${arg} in
-   -b) EPATCH_OPTS+=" --suffix" ;;
-   *)  EPATCH_OPTS+=" ${arg}" ;;
-   esac
-   done
-
-   # extract the patch name from the Patch# line
-   set -- $(grep "^P${p#%p}: " "${spec}")
-   shift
-   epatch "${dir:+${dir}/}$*"
-   done
-
-   eend
-}
-
 fi
 
 EXPORT_FUNCTIONS src_unpack



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-11 Thread Miroslav Šulc
commit: 28a2ff3d33063abd580cba982a11120eb34cdc2b
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Wed Apr 10 21:09:56 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Thu Apr 11 07:48:21 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=28a2ff3d

java-ant-2.eclass: drop EAPI 6

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/36199
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-ant-2.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/java-ant-2.eclass b/eclass/java-ant-2.eclass
index 1eccead3067f..b0d2fb216b10 100644
--- a/eclass/java-ant-2.eclass
+++ b/eclass/java-ant-2.eclass
@@ -7,7 +7,7 @@
 # @AUTHOR:
 # kiorky 
 # Petteri Räty 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: java-utils-2
 # @BLURB: eclass for ant based Java packages
 # @DESCRIPTION:
@@ -16,7 +16,7 @@
 # or java-pkg-opt-2 eclass.
 
 case ${EAPI} in
-   6|7|8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-10 Thread Ulrich Müller
commit: 6a802139d156f02b854429b242d4fc61961e3c05
Author: Ulrich Müller  gentoo  org>
AuthorDate: Mon Jan  8 14:13:01 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Wed Apr 10 17:55:37 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a802139

gnustep-*.eclass: Drop support for EAPI 6

In EAPI 6, gnustep-base inherits eutils which is going to be last-rited.

Signed-off-by: Ulrich Müller  gentoo.org>

 eclass/gnustep-2.eclass| 20 ++--
 eclass/gnustep-base.eclass |  5 ++---
 2 files changed, 8 insertions(+), 17 deletions(-)

diff --git a/eclass/gnustep-2.eclass b/eclass/gnustep-2.eclass
index 9750efa8d5c8..3797dd80151e 100644
--- a/eclass/gnustep-2.eclass
+++ b/eclass/gnustep-2.eclass
@@ -1,10 +1,10 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: gnustep-2.eclass
 # @MAINTAINER:
 # GNUstep Herd 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @PROVIDES: gnustep-base
 # @BLURB: eclass for GNUstep Apps, Frameworks, and Bundles build
 # @DESCRIPTION:
@@ -12,7 +12,7 @@
 # GNUstep packages
 
 case ${EAPI} in
-   6|7|8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -21,17 +21,9 @@ _GNUSTEP_2_ECLASS=1
 
 inherit gnustep-base
 
-case ${EAPI} in
-   6)
-   DEPEND=">=gnustep-base/gnustep-make-2.0"
-   ;;
-   *)
-   BDEPEND=">=gnustep-base/gnustep-make-2.0"
-   ;;
-esac
-
-DEPEND+=" virtual/gnustep-back"
-RDEPEND="${DEPEND}"
+RDEPEND="virtual/gnustep-back"
+DEPEND="${RDEPEND}"
+BDEPEND=">=gnustep-base/gnustep-make-2.0"
 
 # The following gnustep-based exported functions are available:
 # * gnustep-base_pkg_setup

diff --git a/eclass/gnustep-base.eclass b/eclass/gnustep-base.eclass
index b5b350106471..a0a877bf8e13 100644
--- a/eclass/gnustep-base.eclass
+++ b/eclass/gnustep-base.eclass
@@ -1,17 +1,16 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: gnustep-base.eclass
 # @MAINTAINER:
 # GNUstep Herd 
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Internal handling of GNUstep packages
 # @DESCRIPTION:
 # Inner gnustep eclass, should only be inherited directly by gnustep-base
 # packages
 
 case ${EAPI} in
-   6) inherit eutils ;;
7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-10 Thread Michał Górny
commit: 43f782d13cb3e6b661067619ced2165da4455db1
Author: Michał Górny  gentoo  org>
AuthorDate: Wed Apr 10 09:52:25 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Wed Apr 10 11:09:46 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43f782d1

llvm.org.eclass: Add 19.0.0_pre20240410 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 148408dc4730..731044d59f48 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240410)
+   
EGIT_COMMIT=ee284d2da0720dc21191d6f545504cbfcf5dcbcf
+   ;;
19.0.0_pre20240404)

EGIT_COMMIT=12735916bd3a63aa9f316af8eebfe9420cfec489
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-10 Thread Miroslav Šulc
commit: 672028056a6bb54d5550aaff1a09d752e772bc8d
Author: Manuel Mommertz  desy  de>
AuthorDate: Tue Feb 13 07:59:13 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Wed Apr 10 08:11:04 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67202805

java-pkg-simple.eclass: use --module-path for ejavadoc when applicable

Bug: https://bugs.gentoo.org/925691
Signed-off-by: Manuel Mommertz  desy.de>
Closes: https://github.com/gentoo/gentoo/pull/35302
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-pkg-simple.eclass | 15 +++
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
index 1a4bcb1b0a63..6b473ed768ed 100644
--- a/eclass/java-pkg-simple.eclass
+++ b/eclass/java-pkg-simple.eclass
@@ -417,11 +417,18 @@ java-pkg-simple_src_compile() {
einfo "JAVADOC_SRC_DIRS exists, you need to call 
ejavadoc separately"
else
mkdir -p ${apidoc}
-   ejavadoc -d ${apidoc} \
-   -encoding ${JAVA_ENCODING} -docencoding UTF-8 
-charset UTF-8 \
-   ${classpath:+-classpath ${classpath}} 
${JAVADOC_ARGS:- -quiet} \
-   @${sources} || die "javadoc failed"
+   if [[ -z ${moduleinfo} ]] || [[ ${target#1.} -lt 9 ]]; 
then
+   ejavadoc -d ${apidoc} \
+   -encoding ${JAVA_ENCODING} -docencoding 
UTF-8 -charset UTF-8 \
+   ${classpath:+-classpath ${classpath}} 
${JAVADOC_ARGS:- -quiet} \
+   @${sources} || die "javadoc failed"
+   else
+   ejavadoc -d ${apidoc} \
+   -encoding ${JAVA_ENCODING} -docencoding 
UTF-8 -charset UTF-8 \
+   ${classpath:+--module-path 
${classpath}} ${JAVADOC_ARGS:- -quiet} \
+   @${sources} || die "javadoc failed"
fi
+   fi
fi
 
# package



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-09 Thread Ulrich Müller
commit: a1f28063e0ba2192a120d15fd82a2d59ae10c892
Author: Ulrich Müller  gentoo  org>
AuthorDate: Mon Jan  8 14:11:17 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Tue Apr  9 20:03:28 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1f28063

eutils.eclass: Mark as DEAD

Signed-off-by: Ulrich Müller  gentoo.org>

 eclass/eutils.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/eutils.eclass b/eclass/eutils.eclass
index b48c18f97904..bdcc7e110fd5 100644
--- a/eclass/eutils.eclass
+++ b/eclass/eutils.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: eutils.eclass
@@ -7,6 +7,7 @@
 # @SUPPORTED_EAPIS: 6
 # @BLURB: many extra (but common) functions that are used in ebuilds
 # @DEPRECATED: native package manager functions, more specific eclasses
+# @DEAD
 
 if [[ -z ${_EUTILS_ECLASS} ]]; then
 _EUTILS_ECLASS=1



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-08 Thread Miroslav Šulc
commit: aef3658325286fbf2480bccbbece9976d5b2ccc6
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Fri Mar 29 15:48:52 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Mon Apr  8 07:14:41 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aef36583

java-vm-2.eclass: drop EAPI 6

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-vm-2.eclass | 13 +++--
 1 file changed, 3 insertions(+), 10 deletions(-)

diff --git a/eclass/java-vm-2.eclass b/eclass/java-vm-2.eclass
index 336a486c3883..e5d3159f2854 100644
--- a/eclass/java-vm-2.eclass
+++ b/eclass/java-vm-2.eclass
@@ -1,17 +1,17 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: java-vm-2.eclass
 # @MAINTAINER:
 # j...@gentoo.org
-# @SUPPORTED_EAPIS: 6 7 8
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Java Virtual Machine eclass
 # @DESCRIPTION:
 # This eclass provides functionality which assists with installing
 # virtual machines, and ensures that they are recognized by java-config.
 
 case ${EAPI} in
-   6|7|8) ;;
+   7|8) ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 
@@ -28,10 +28,6 @@ DEPEND="${RDEPEND}"
 BDEPEND="app-arch/unzip"
 IDEPEND="app-eselect/eselect-java"
 
-if [[ ${EAPI} == 6 ]]; then
-   DEPEND+=" ${BDEPEND}"
-fi
-
 export WANT_JAVA_CONFIG=2
 
 
@@ -98,9 +94,6 @@ java-vm-2_pkg_postinst() {
 # @RETURN: 0 if >=app-eselect/eselect-java-0.5 is installed, 1 otherwise.
 has_eselect_java-vm_update() {
local has_version_args="-b"
-   if [[ ${EAPI} == 6 ]]; then
-   has_version_args="--host-root"
-   fi
 
has_version "${has_version_args}" ">=app-eselect/eselect-java-0.5"
 }



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-06 Thread Michał Górny
commit: b20b9d4285a5a9d21cb9b9a3be6c14eb992184d2
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Apr  6 13:03:47 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Apr  6 13:43:52 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b20b9d42

llvm.org.eclass: Add 19.0.0_pre20240404 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 98da9997a7c7..148408dc4730 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240404)
+   
EGIT_COMMIT=12735916bd3a63aa9f316af8eebfe9420cfec489
+   ;;
19.0.0_pre20240330)

EGIT_COMMIT=a8b0ecd2605ff23f495a8af64e06c35f86834e54
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-06 Thread Michał Górny
commit: 938edf07001d51688806e1e5a4a32eebcb675dd3
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Apr  6 04:56:47 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Apr  6 09:13:36 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=938edf07

llvm.org.eclass: Remove support for old snapshots

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 6 --
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 607e3086d65a..98da9997a7c7 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
19.0.0_pre20240330)

EGIT_COMMIT=a8b0ecd2605ff23f495a8af64e06c35f86834e54
;;
-   19.0.0_pre20240322)
-   
EGIT_COMMIT=f3cfe016c5d8429c0dccfa6f85442e2ea0d45a58
-   ;;
-   19.0.0_pre20240316)
-   
EGIT_COMMIT=6d3cec01a6c29fa4e51ba129fa13dbf55d2b928e
-   ;;
*)
die "Unknown snapshot: ${PV}"
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-05 Thread Florian Schmaus
commit: ac957bc00b6bdc98a12d9164609b901ccb04e7b4
Author: Florian Schmaus  gentoo  org>
AuthorDate: Fri Apr  5 16:04:13 2024 +
Commit: Florian Schmaus  gentoo  org>
CommitDate: Fri Apr  5 16:04:13 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac957bc0

texlive-common_update_tlpdb: only run find if tlpobj dir exists

Closes: https://bugs.gentoo.org/928638
Closes: https://bugs.gentoo.org/928639
Closes: https://bugs.gentoo.org/928640
Closes: https://bugs.gentoo.org/928641
Closes: https://bugs.gentoo.org/928642
Closes: https://bugs.gentoo.org/928643
Closes: https://bugs.gentoo.org/928644
Closes: https://bugs.gentoo.org/928645
Signed-off-by: Florian Schmaus  gentoo.org>

 eclass/texlive-common.eclass | 10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/eclass/texlive-common.eclass b/eclass/texlive-common.eclass
index 66d3999bd103..b32ea2af1121 100644
--- a/eclass/texlive-common.eclass
+++ b/eclass/texlive-common.eclass
@@ -269,10 +269,12 @@ texlive-common_update_tlpdb() {
 
touch "${new_tlpdb}" || die
 
-   find "${tlpobj}" -maxdepth 1 -type f -name "*.tlpobj" -print0 |
-   sort -z |
-   xargs -0 --no-run-if-empty cat >> "${new_tlpdb}"
-   assert "generating tlpdb failed"
+   if [[ -d "${tlpobj}" ]]; then
+   find "${tlpobj}" -maxdepth 1 -type f -name "*.tlpobj" -print0 |
+   sort -z |
+   xargs -0 --no-run-if-empty cat >> "${new_tlpdb}"
+   assert "generating tlpdb failed"
+   fi
 
if [[ -f ${tlpdb} ]]; then
cmp -s "${new_tlpdb}" "${tlpdb}"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-05 Thread Hans de Graaff
commit: 94027c0a7862b306d9452320f7419875b6a4cec6
Author: Hans de Graaff  gentoo  org>
AuthorDate: Fri Apr  5 09:44:11 2024 +
Commit: Hans de Graaff  gentoo  org>
CommitDate: Fri Apr  5 09:44:11 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94027c0a

eclass/apache-2.eclass: select compatible rustls-ffi version

The apache tls module does not compile with rustls-ffi 0.12.x versions.

Bug: https://bugs.gentoo.org/928046
Signed-off-by: Hans de Graaff  gentoo.org>

 eclass/apache-2.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/apache-2.eclass b/eclass/apache-2.eclass
index e1489eb282ac..17b8b0e2a64a 100644
--- a/eclass/apache-2.eclass
+++ b/eclass/apache-2.eclass
@@ -162,7 +162,7 @@ RDEPEND="
apache2_modules_session_crypto? (
dev-libs/apr-util[openssl]
)
-   apache2_modules_tls? ( >=net-libs/rustls-ffi-0.9.2:= )
+   apache2_modules_tls? ( >=net-libs/rustls-ffi-0.9.2:= 


[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-04 Thread Ulrich Müller
commit: 0cec49dbfe44ed391f1dea5fe5b1014ec7df9c05
Author: Ulrich Müller  gentoo  org>
AuthorDate: Wed Apr  3 10:05:01 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Thu Apr  4 17:32:56 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0cec49db

elisp-common.eclass: Use EROOT instead of ROOT+EPREFIX

This was a leftover of pre-EAPI-3 compatibility.

Signed-off-by: Ulrich Müller  gentoo.org>

 eclass/elisp-common.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index bab7250a6818..1ea2aa111d7e 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: elisp-common.eclass
@@ -687,7 +687,7 @@ elisp-make-site-file() {
 # directory.
 
 elisp-site-regen() {
-   local sitelisp=${ROOT%/}${EPREFIX}${SITELISP}
+   local sitelisp=${EROOT}${SITELISP}
local sf i ret=0 null="" page=$'\f'
local -a sflist
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-04 Thread Ulrich Müller
commit: ec8f206068b3a17275d2b1a05be162c46f0e24c0
Author: Ulrich Müller  gentoo  org>
AuthorDate: Wed Apr  3 10:06:53 2024 +
Commit: Ulrich Müller  gentoo  org>
CommitDate: Thu Apr  4 17:33:01 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec8f2060

elisp-common.eclass: Drop test for existence of ${T}

This was the remnant of a 2008 workaround for Paludis (bug #517),
which didn't define T in the postrm phase.

Signed-off-by: Ulrich Müller  gentoo.org>

 eclass/elisp-common.eclass | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/eclass/elisp-common.eclass b/eclass/elisp-common.eclass
index 1ea2aa111d7e..3d99838a0221 100644
--- a/eclass/elisp-common.eclass
+++ b/eclass/elisp-common.eclass
@@ -699,9 +699,6 @@ elisp-site-regen() {
[[ -d ${sitelisp} ]] \
|| die "elisp-site-regen: Directory ${sitelisp} does not exist"
 
-   [[ -d ${T} ]] \
-   || die "elisp-site-regen: Temporary directory ${T} does not 
exist"
-
ebegin "Regenerating site-gentoo.el for GNU Emacs (${EBUILD_PHASE})"
 
for sf in "${sitelisp}"/site-gentoo.d/[0-9][0-9]*.el; do



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-04 Thread Florian Schmaus
commit: 0977b78999668cebc0aac4235ccf47d9502f1e00
Author: Florian Schmaus  gentoo  org>
AuthorDate: Thu Apr  4 08:10:03 2024 +
Commit: Florian Schmaus  gentoo  org>
CommitDate: Thu Apr  4 08:17:55 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0977b789

texlive-*.eclass: move update_tldb from texlive-module to texlive-common

The TexLive package database (tlpdb) also needs to be updated by
app-text/texlive-core, which only inherits texlive-common.eclass.

Signed-off-by: Florian Schmaus  gentoo.org>

 eclass/texlive-common.eclass | 54 
 eclass/texlive-module.eclass | 59 ++--
 2 files changed, 56 insertions(+), 57 deletions(-)

diff --git a/eclass/texlive-common.eclass b/eclass/texlive-common.eclass
index e8a740df1f27..66d3999bd103 100644
--- a/eclass/texlive-common.eclass
+++ b/eclass/texlive-common.eclass
@@ -249,4 +249,58 @@ texlive-common_append_to_src_uri() {
fi
 }
 
+# @FUNCTION: texlive-common_update_tlpdb
+# @DESCRIPTION:
+# Update the TexLive package database at /usr/share/tlpkg/texlive.tlpdb.
+texlive-common_update_tlpdb() {
+   [[ -v TL_PV && ${TL_PV} -lt 2023 ]] && return
+
+   # If we are updating this package, then there is no need to update
+   # the tlpdb in postrm, as it will be again updated in postinst.
+   [[ ${EBUILD_PHASE} == postrm && -n ${REPLACED_BY_VERSION} ]] && return
+
+   local tlpkg="${EROOT}"/usr/share/tlpkg
+   local tlpobj="${tlpkg}"/tlpobj
+   local tlpdb="${tlpkg}"/texlive.tlpdb
+
+   ebegin "Regenerating TexLive package database"
+
+   local new_tlpdb="${T}"/texlive.tlpdb
+
+   touch "${new_tlpdb}" || die
+
+   find "${tlpobj}" -maxdepth 1 -type f -name "*.tlpobj" -print0 |
+   sort -z |
+   xargs -0 --no-run-if-empty cat >> "${new_tlpdb}"
+   assert "generating tlpdb failed"
+
+   if [[ -f ${tlpdb} ]]; then
+   cmp -s "${new_tlpdb}" "${tlpdb}"
+   local ret=$?
+   case ${ret} in
+   # content equal
+   0)
+   # Nothing to do, return.
+   eend 0
+   return
+   ;;
+   # content differs
+   1)
+   ;;
+   # cmp failed with an error
+   *)
+   eend ${ret} "comparing new and existing tlpdb 
failed (exit status: ${ret})"
+   die
+   ;;
+   esac
+   fi
+
+   mv "${new_tlpdb}" "${tlpdb}"
+   eend $? "moving tlpdb into position failed (exit status: ${?})" || die
+
+   if [[ ! -s ${tlpdb} ]]; then
+   rm "${tlpdb}" || die
+   fi
+}
+
 fi

diff --git a/eclass/texlive-module.eclass b/eclass/texlive-module.eclass
index bfe5e12bf250..401b75bc4d11 100644
--- a/eclass/texlive-module.eclass
+++ b/eclass/texlive-module.eclass
@@ -420,61 +420,6 @@ texlive-module_src_install() {
texlive-common_handle_config_files
 }
 
-# @FUNCTION: texlive-module_update_tlpdb
-# @DESCRIPTION:
-# Update the TexLive package database at /usr/share/tlpkg/texlive.tlpdb.
-
-texlive-module_update_tlpdb() {
-   [[ ${TL_PV} -lt 2023 ]] && return
-
-   # If we are updating this package, then there is no need to update
-   # the tlpdb in postrm, as it will be again updated in postinst.
-   [[ ${EBUILD_PHASE} == postrm && -n ${REPLACED_BY_VERSION} ]] && return
-
-   local tlpkg="${EROOT}"/usr/share/tlpkg
-   local tlpobj="${tlpkg}"/tlpobj
-   local tlpdb="${tlpkg}"/texlive.tlpdb
-
-   ebegin "Regenerating TexLive package database"
-
-   local new_tlpdb="${T}"/texlive.tlpdb
-
-   touch "${new_tlpdb}" || die
-
-   find "${tlpobj}" -maxdepth 1 -type f -name "*.tlpobj" -print0 |
-   sort -z |
-   xargs -0 --no-run-if-empty cat >> "${new_tlpdb}"
-   assert "generating tlpdb failed"
-
-   if [[ -f ${tlpdb} ]]; then
-   cmp -s "${new_tlpdb}" "${tlpdb}"
-   local ret=$?
-   case ${ret} in
-   # content equal
-   0)
-   # Nothing to do, return.
-   eend 0
-   return
-   ;;
-   # content differs
-   1)
-   ;;
-   # cmp failed with an error
-   *)
-   eend ${ret} "comparing new and existing tlpdb 
failed (exit status: ${ret})"
-   die
-   ;;
-   esac
-   fi
-
-   mv "${new_tlpdb}" "${tlpdb}"
-   eend $? "moving tlpdb into position 

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-03 Thread Sam James
commit: 4ba5414687d20ba1369e7e2833ba563c1815fcbe
Author: Mike Gilbert  gentoo  org>
AuthorDate: Tue Mar 26 15:01:51 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Apr  4 01:06:38 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ba54146

meson.eclass: call die -n in phase helpers

This allows the ebuild author to treat some errors as nonfatal.

Signed-off-by: Mike Gilbert  gentoo.org>
Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 3240fddf7e86..3074fcb09fb0 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -425,7 +425,7 @@ meson_src_configure() {
export -n {C,CPP,CXX,F,OBJC,OBJCXX,LD}FLAGS 
PKG_CONFIG_{LIBDIR,PATH}
echo meson setup "${MESONARGS[@]}" >&2
meson setup "${MESONARGS[@]}"
-   ) || die
+   ) || die -n
 }
 
 # @FUNCTION: meson_src_compile
@@ -450,7 +450,7 @@ meson_src_compile() {
 
set -- meson compile "${mesoncompileargs[@]}"
echo "$@" >&2
-   "$@" || die "compile failed"
+   "$@" || die -n "compile failed"
 }
 
 # @FUNCTION: meson_src_test
@@ -469,7 +469,7 @@ meson_src_test() {
 
set -- meson test "${mesontestargs[@]}"
echo "$@" >&2
-   "$@" || die "tests failed"
+   "$@" || die -n "tests failed"
 }
 
 # @FUNCTION: meson_install
@@ -488,7 +488,7 @@ meson_install() {
 
set -- meson install "${mesoninstallargs[@]}"
echo "$@" >&2
-   "$@" || die "install failed"
+   "$@" || die -n "install failed"
 }
 
 # @FUNCTION: meson_src_install



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-03 Thread Sam James
commit: dbeb507f468dcc75095d54b59c165dcc70ef558d
Author: Eli Schwartz  gmail  com>
AuthorDate: Wed Apr  3 04:24:23 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Apr  4 01:06:39 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dbeb507f

meson.eclass: set working directory to BUILD_DIR

In phases where the build directory has been configured and we are
operating on it, it is better to change directories instead of passing
-C options. This allows portage to know where we are, and in the case of
errors it will then print:

 * Working directory: 
'/var/tmp/portage/www-client/elinks-0.16.1.1-r2/work/elinks-0.16.1.1-build'
 * S: '/var/tmp/portage/www-client/elinks-0.16.1.1-r2/work/elinks-0.16.1.1'

instead of simply listing both as the same directory. This is much more
convenient to copy/paste for the sake of entering the failed build and
examining it.

Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 15 ---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 3074fcb09fb0..9d7f830e58b0 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -435,8 +435,9 @@ meson_src_configure() {
 meson_src_compile() {
debug-print-function ${FUNCNAME} "$@"
 
+   pushd "${BUILD_DIR}" > /dev/null || die
+
local mesoncompileargs=(
-   -C "${BUILD_DIR}"
--jobs "$(get_makeopts_jobs 0)"
--load-average "$(get_makeopts_loadavg 0)"
)
@@ -451,6 +452,8 @@ meson_src_compile() {
set -- meson compile "${mesoncompileargs[@]}"
echo "$@" >&2
"$@" || die -n "compile failed"
+
+   popd > /dev/null || die
 }
 
 # @FUNCTION: meson_src_test
@@ -460,9 +463,10 @@ meson_src_compile() {
 meson_src_test() {
debug-print-function ${FUNCNAME} "$@"
 
+   pushd "${BUILD_DIR}" > /dev/null || die
+
local mesontestargs=(
--print-errorlogs
-   -C "${BUILD_DIR}"
--num-processes "$(makeopts_jobs "${MAKEOPTS}")"
"$@"
)
@@ -470,6 +474,8 @@ meson_src_test() {
set -- meson test "${mesontestargs[@]}"
echo "$@" >&2
"$@" || die -n "tests failed"
+
+   popd > /dev/null || die
 }
 
 # @FUNCTION: meson_install
@@ -479,8 +485,9 @@ meson_src_test() {
 meson_install() {
debug-print-function ${FUNCNAME} "$@"
 
+   pushd "${BUILD_DIR}" > /dev/null || die
+
local mesoninstallargs=(
-   -C "${BUILD_DIR}"
--destdir "${D}"
--no-rebuild
"$@"
@@ -489,6 +496,8 @@ meson_install() {
set -- meson install "${mesoninstallargs[@]}"
echo "$@" >&2
"$@" || die -n "install failed"
+
+   popd > /dev/null || die
 }
 
 # @FUNCTION: meson_src_install



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-03 Thread Florian Schmaus
commit: 92f953a24b62bcce256f3f138c98f9fbb5126cd5
Author: Florian Schmaus  gentoo  org>
AuthorDate: Tue Apr  2 14:05:29 2024 +
Commit: Florian Schmaus  gentoo  org>
CommitDate: Wed Apr  3 17:34:44 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92f953a2

texlive-module.eclass: add texlive-module_update_tlpdb

Update (or create) the tlpdb based on the contents of
/usr/share/tlpkg/tlpobj.

Closes: https://bugs.gentoo.org/928162
Signed-off-by: Florian Schmaus  gentoo.org>

 eclass/texlive-module.eclass | 57 
 1 file changed, 57 insertions(+)

diff --git a/eclass/texlive-module.eclass b/eclass/texlive-module.eclass
index 14e3280128a8..bfe5e12bf250 100644
--- a/eclass/texlive-module.eclass
+++ b/eclass/texlive-module.eclass
@@ -420,6 +420,61 @@ texlive-module_src_install() {
texlive-common_handle_config_files
 }
 
+# @FUNCTION: texlive-module_update_tlpdb
+# @DESCRIPTION:
+# Update the TexLive package database at /usr/share/tlpkg/texlive.tlpdb.
+
+texlive-module_update_tlpdb() {
+   [[ ${TL_PV} -lt 2023 ]] && return
+
+   # If we are updating this package, then there is no need to update
+   # the tlpdb in postrm, as it will be again updated in postinst.
+   [[ ${EBUILD_PHASE} == postrm && -n ${REPLACED_BY_VERSION} ]] && return
+
+   local tlpkg="${EROOT}"/usr/share/tlpkg
+   local tlpobj="${tlpkg}"/tlpobj
+   local tlpdb="${tlpkg}"/texlive.tlpdb
+
+   ebegin "Regenerating TexLive package database"
+
+   local new_tlpdb="${T}"/texlive.tlpdb
+
+   touch "${new_tlpdb}" || die
+
+   find "${tlpobj}" -maxdepth 1 -type f -name "*.tlpobj" -print0 |
+   sort -z |
+   xargs -0 --no-run-if-empty cat >> "${new_tlpdb}"
+   assert "generating tlpdb failed"
+
+   if [[ -f ${tlpdb} ]]; then
+   cmp -s "${new_tlpdb}" "${tlpdb}"
+   local ret=$?
+   case ${ret} in
+   # content equal
+   0)
+   # Nothing to do, return.
+   eend 0
+   return
+   ;;
+   # content differs
+   1)
+   ;;
+   # cmp failed with an error
+   *)
+   eend ${ret} "comparing new and existing tlpdb 
failed (exit status: ${ret})"
+   die
+   ;;
+   esac
+   fi
+
+   mv "${new_tlpdb}" "${tlpdb}"
+   eend $? "moving tlpdb into position failed (exit status: ${?})" || die
+
+   if [[ ! -s ${tlpdb} ]]; then
+   rm "${tlpdb}" || die
+   fi
+}
+
 # @FUNCTION: texlive-module_pkg_postinst
 # @DESCRIPTION:
 # exported function:
@@ -428,6 +483,7 @@ texlive-module_src_install() {
 
 texlive-module_pkg_postinst() {
etexmf-update
+   texlive-module_update_tlpdb
[[ -n ${TL_MODULE_INFORMATION} ]] && elog "${TL_MODULE_INFORMATION}"
 }
 
@@ -439,6 +495,7 @@ texlive-module_pkg_postinst() {
 
 texlive-module_pkg_postrm() {
[[ -z ${REPLACED_BY_VERSION} ]] && etexmf-update
+   texlive-module_update_tlpdb
 }
 
 fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-03 Thread Florian Schmaus
commit: cf77d7518def4b0ab7ff586eb51b65d18967
Author: Florian Schmaus  gentoo  org>
AuthorDate: Tue Apr  2 14:05:09 2024 +
Commit: Florian Schmaus  gentoo  org>
CommitDate: Wed Apr  3 17:34:44 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf77

texlive-module.eclass: only invoke etexmf-update in postinst if not replacing 
versions

Signed-off-by: Florian Schmaus  gentoo.org>

 eclass/texlive-module.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/texlive-module.eclass b/eclass/texlive-module.eclass
index 9fc4e619ff9b..14e3280128a8 100644
--- a/eclass/texlive-module.eclass
+++ b/eclass/texlive-module.eclass
@@ -438,7 +438,7 @@ texlive-module_pkg_postinst() {
 # installed texmf trees.
 
 texlive-module_pkg_postrm() {
-   etexmf-update
+   [[ -z ${REPLACED_BY_VERSION} ]] && etexmf-update
 }
 
 fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 1423ac82bf7a4ae558a0eb637b46a183235d912e
Author: Michał Górny  gentoo  org>
AuthorDate: Mon Mar 25 17:04:30 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:32 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1423ac82

distutils-r1.eclass: Remove nosetests support

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 8 
 1 file changed, 8 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 16d97501012b..44553f8da6f3 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -572,8 +572,6 @@ distutils_enable_sphinx() {
 # with the specified test runner.  Also copies the current value
 # of RDEPEND to test?-BDEPEND.  The test-runner argument must be one of:
 #
-# - nose: nosetests (dev-python/nose)
-#
 # - pytest: dev-python/pytest
 #
 # - setup.py: setup.py test (no deps included)
@@ -610,9 +608,6 @@ distutils_enable_tests() {
local test_deps=${RDEPEND}
local test_pkgs
case ${1} in
-   nose)
-   
test_pkgs='>=dev-python/nose-1.3.7_p20221026[${PYTHON_USEDEP}]'
-   ;;
pytest)
test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]'
if [[ -n ${EPYTEST_TIMEOUT} ]]; then
@@ -1594,9 +1589,6 @@ distutils-r1_python_test() {
fi
 
case ${_DISTUTILS_TEST_RUNNER} in
-   nose)
-   "${EPYTHON}" -m nose -v "${@}"
-   ;;
pytest)
epytest
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 1f35acddca01e91d4477f3d0340c47329517f474
Author: Michał Górny  gentoo  org>
AuthorDate: Fri Mar 29 15:53:11 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:35 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f35acdd

python-utils-r1.eclass: epytest, error out on missing async plugin

Explicitly error out if epytest is run without an appropriate async
plugin, and the test suite contains async tests.  Currently, these tests
are skipped with a warning but that is usually a mistake, and one can
easily miss it when pytest-asyncio or a similar plugin is installed
on the test system.  However, a missing dependency can result
in the tests being skipped afterwards on the tinderbox.

Signed-off-by: Michał Górny  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/35913
Signed-off-by: Michał Górny  gentoo.org>

 eclass/python-utils-r1.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index caa39813feec..bbf751399476 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -1349,6 +1349,9 @@ epytest() {
# override filterwarnings=error, we do not really want -Werror
# for end users, as it tends to fail on new warnings from deps
-Wdefault
+   # however, do error out if the package failed to load
+   # an appropriate async plugin
+   -Werror::pytest.PytestUnhandledCoroutineWarning
# override color output
"--color=${color}"
# count is more precise when we're dealing with a large number



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 0168114f8343530be3e879828eb6fa559aa8f936
Author: Michał Górny  gentoo  org>
AuthorDate: Mon Mar 25 18:47:39 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:33 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0168114f

distutils-r1.eclass: Fix `det unittest` with 3.12 only

Closes: https://bugs.gentoo.org/926964
Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index a1617999a037..22b28e915859 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -628,11 +628,11 @@ distutils_enable_tests() {
;;
unittest)
# unittest-or-fail is needed in py<3.12
-   test_deps+="
-   $(python_gen_cond_dep '
+   local test_pkgs="$(python_gen_cond_dep '

dev-python/unittest-or-fail[${PYTHON_USEDEP}]
-   ' 3.10 3.11)
-   "
+   ' 3.10 3.11
+   )"
+   [[ -n ${test_pkgs} ]] && test_deps+=" ${test_pkgs}"
;;
*)
die "${FUNCNAME}: unsupported argument: ${1}"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 73c49f3c00415dee99407dabba8d3b22895c9d25
Author: Michał Górny  gentoo  org>
AuthorDate: Mon Mar 25 19:01:52 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:34 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73c49f3c

distutils-r1.eclass: Remove more junk from .dist-info

Closes: https://bugs.gentoo.org/927818
Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 15 ---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 22b28e915859..7a314673a90b 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1314,14 +1314,23 @@ distutils_wheel_install() {
printf '%s\n' "${cmd[*]}"
"${cmd[@]}" || die "Wheel install failed"
 
-   # remove installed licenses
+   # remove installed licenses and other junk
find "${root}$(python_get_sitedir)" -depth \
-   \( -path '*.dist-info/COPYING*' \
-   -o -path '*.dist-info/LICENSE*' \
+   \( -ipath '*.dist-info/AUTHORS*' \
+   -o -ipath '*.dist-info/CHANGELOG*' \
+   -o -ipath '*.dist-info/CODE_OF_CONDUCT*' \
+   -o -ipath '*.dist-info/COPYING*' \
+   -o -ipath '*.dist-info/*LICEN[CS]E*' \
+   -o -ipath '*.dist-info/NOTICE*' \
+   -o -ipath '*.dist-info/*Apache*' \
+   -o -ipath '*.dist-info/*GPL*' \
+   -o -ipath '*.dist-info/*MIT*' \
+   -o -path '*.dist-info/RECORD' \
-o -path '*.dist-info/license_files/*' \
-o -path '*.dist-info/license_files' \
-o -path '*.dist-info/licenses/*' \
-o -path '*.dist-info/licenses' \
+   -o -path '*.dist-info/zip-safe' \
\) -delete || die
 }
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: d3a4df00a967d8358ab90480be77ca667e25f8c9
Author: Michał Górny  gentoo  org>
AuthorDate: Mon Mar 25 16:55:26 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:29 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3a4df00

distutils-r1.eclass: Bump minimal dep versions

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 28 ++--
 1 file changed, 14 insertions(+), 14 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 9be994595529..e4b17c433e5d 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -230,7 +230,7 @@ _distutils_set_globals() {
;;
hatchling)
bdep+='
-   
>=dev-python/hatchling-1.17.0[${PYTHON_USEDEP}]
+   
>=dev-python/hatchling-1.21.1[${PYTHON_USEDEP}]
'
;;
jupyter)
@@ -240,7 +240,7 @@ _distutils_set_globals() {
;;
maturin)
bdep+='
-   
>=dev-util/maturin-1.0.1[${PYTHON_USEDEP}]
+   
>=dev-util/maturin-1.4.0[${PYTHON_USEDEP}]
'
;;
no)
@@ -249,12 +249,12 @@ _distutils_set_globals() {
;;
meson-python)
bdep+='
-   
>=dev-python/meson-python-0.13.1[${PYTHON_USEDEP}]
+   
>=dev-python/meson-python-0.15.0[${PYTHON_USEDEP}]
'
;;
pbr)
bdep+='
-   
>=dev-python/pbr-5.11.1[${PYTHON_USEDEP}]
+   >=dev-python/pbr-6.0.0[${PYTHON_USEDEP}]
'
;;
pdm)
@@ -264,27 +264,27 @@ _distutils_set_globals() {
;;
pdm-backend)
bdep+='
-   
>=dev-python/pdm-backend-2.1.0[${PYTHON_USEDEP}]
+   
>=dev-python/pdm-backend-2.1.8[${PYTHON_USEDEP}]
'
;;
poetry)
bdep+='
-   
>=dev-python/poetry-core-1.6.1[${PYTHON_USEDEP}]
+   
>=dev-python/poetry-core-1.9.0[${PYTHON_USEDEP}]
'
;;
scikit-build-core)
bdep+='
-   
>=dev-python/scikit-build-core-0.4.6[${PYTHON_USEDEP}]
+   
>=dev-python/scikit-build-core-0.8.2[${PYTHON_USEDEP}]
'
;;
setuptools)
bdep+='
-   
>=dev-python/setuptools-67.8.0-r1[${PYTHON_USEDEP}]
+   
>=dev-python/setuptools-69.0.3[${PYTHON_USEDEP}]
'
;;
sip)
bdep+='
-   >=dev-python/sip-6.7.9[${PYTHON_USEDEP}]
+   >=dev-python/sip-6.8.3[${PYTHON_USEDEP}]
'
;;
standalone)
@@ -299,7 +299,7 @@ _distutils_set_globals() {
eqawarn "is enabled."
fi
else
-   local 
setuptools_dep='>=dev-python/setuptools-67.8.0-r1[${PYTHON_USEDEP}]'
+   local 
setuptools_dep='>=dev-python/setuptools-69.0.3[${PYTHON_USEDEP}]'
 
case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in
no|manual)
@@ -508,7 +508,7 @@ distutils_enable_sphinx() {
_DISTUTILS_SPHINX_PLUGINS=( "${@}" )
 
local deps autodoc=1 d
-   deps=">=dev-python/sphinx-5.3.0[\${PYTHON_USEDEP}]"
+   deps=">=dev-python/sphinx-7.2.6[\${PYTHON_USEDEP}]"
for d; do
if [[ ${d} == --no-autodoc ]]; then
autodoc=
@@ -532,7 +532,7 @@ distutils_enable_sphinx() {
use doc || return 0
 
local p
-   for p in ">=dev-python/sphinx-5.3.0" \
+   for p in 

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 380a5cbd2745ddfea53724246bf3b98976982064
Author: Michał Górny  gentoo  org>
AuthorDate: Mon Mar 25 18:44:50 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:32 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=380a5cbd

distutils-r1.eclass: Refactor `distutils_enable_tests pytest`

Refactor `distutils_enable_tests pytest` to move `test_pkgs` logic
straight into pytest block, as it is not used by any other variant
anymore.

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 20 +---
 1 file changed, 9 insertions(+), 11 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 44553f8da6f3..a1617999a037 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -606,16 +606,23 @@ distutils_enable_tests() {
[[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: 
test-runner"
 
local test_deps=${RDEPEND}
-   local test_pkgs
case ${1} in
pytest)
-   test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]'
+   local 
test_pkgs='>=dev-python/pytest-7.4.4[${PYTHON_USEDEP}]'
if [[ -n ${EPYTEST_TIMEOUT} ]]; then
test_pkgs+=' 
dev-python/pytest-timeout[${PYTHON_USEDEP}]'
fi
if [[ ${EPYTEST_XDIST} ]]; then
test_pkgs+=' 
dev-python/pytest-xdist[${PYTHON_USEDEP}]'
fi
+
+   if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
+   test_deps+=" 
${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}"
+   else
+   test_deps+=" $(python_gen_cond_dep "
+   ${test_pkgs}
+   ")"
+   fi
;;
setup.py)
;;
@@ -634,15 +641,6 @@ distutils_enable_tests() {
_DISTUTILS_TEST_RUNNER=${1}
python_test() { distutils-r1_python_test; }
 
-   if [[ -n ${test_pkgs} ]]; then
-   if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
-   test_deps+=" 
${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}"
-   else
-   test_deps+=" $(python_gen_cond_dep "
-   ${test_pkgs}
-   ")"
-   fi
-   fi
if [[ -n ${test_deps} ]]; then
IUSE+=" test"
RESTRICT+=" !test? ( test )"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 715da0fdbbe67cf6952831af4cf04d86d6d8b78b
Author: Michał Górny  gentoo  org>
AuthorDate: Mon Mar 25 17:01:04 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:30 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=715da0fd

distutils-r1.eclass: Run pdm.pep517.api via pdm-backend

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 21 -
 1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index e4b17c433e5d..16d97501012b 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -124,8 +124,6 @@ esac
 #
 # - pbr - pbr backend
 #
-# - pdm - pdm.pep517 backend
-#
 # - pdm-backend - pdm.backend backend
 #
 # - poetry - poetry-core backend
@@ -257,11 +255,6 @@ _distutils_set_globals() {
>=dev-python/pbr-6.0.0[${PYTHON_USEDEP}]
'
;;
-   pdm)
-   bdep+='
-   
>=dev-python/pdm-pep517-1.1.4[${PYTHON_USEDEP}]
-   '
-   ;;
pdm-backend)
bdep+='

>=dev-python/pdm-backend-2.1.8[${PYTHON_USEDEP}]
@@ -1002,12 +995,6 @@ _distutils-r1_print_package_versions() {
dev-python/wheel
)
;;
-   pdm)
-   packages+=(
-   dev-python/pdm-pep517
-   dev-python/setuptools
-   )
-   ;;
pdm-backend)
packages+=(
dev-python/pdm-backend
@@ -1214,12 +1201,9 @@ _distutils-r1_backend_to_key() {
pbr.build)
echo pbr
;;
-   pdm.backend)
+   pdm.backend|pdm.pep517.api)
echo pdm-backend
;;
-   pdm.pep517.api)
-   echo pdm
-   ;;
poetry.core.masonry.api|poetry.masonry.api)
echo poetry
;;
@@ -1280,6 +1264,9 @@ _distutils-r1_get_backend() {
flit.buildapi)
new_backend=flit_core.buildapi
;;
+   pdm.pep517.api)
+   new_backend=pdm.backend
+   ;;
poetry.masonry.api)
new_backend=poetry.core.masonry.api
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-04-01 Thread Michał Górny
commit: 838b52b4a3e44aaa2b86db7c68803d0018cfba98
Author: Sebastian Parborg  gmail  com>
AuthorDate: Mon Mar 25 15:15:17 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Mon Apr  1 09:36:28 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=838b52b4

git-r3.eclass: Add the ability to checkout ignored submodules.

If the submodules is specified in EGIT_SUBMODULES then it will ignore
the "none" check.

Signed-off-by: Sebastian Parborg  gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/35911
Signed-off-by: Michał Górny  gentoo.org>

 eclass/git-r3.eclass | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/eclass/git-r3.eclass b/eclass/git-r3.eclass
index a498bb8a5563..565f6ada8382 100644
--- a/eclass/git-r3.eclass
+++ b/eclass/git-r3.eclass
@@ -429,6 +429,7 @@ _git-r3_set_submodules() {
 
l=${l#submodule.}
local subname=${l%%.url=*}
+   local is_manually_specified=
 
# filter out on EGIT_SUBMODULES
if declare -p EGIT_SUBMODULES &>/dev/null; then
@@ -449,13 +450,14 @@ _git-r3_set_submodules() {
continue
else
einfo "Using submodule ${parent_path}${subname}"
+   is_manually_specified=1
fi
fi
 
# skip modules that have 'update = none', bug #487262.
local upd=$(echo "${data}" | git config -f /dev/fd/0 \
submodule."${subname}".update)
-   [[ ${upd} == none ]] && continue
+   [[ ${upd} == none && ! ${is_manually_specified} ]] && continue
 
# https://github.com/git/git/blob/master/refs.c#L31
# we are more restrictive than git itself but that should not



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-30 Thread Michał Górny
commit: 1fc8e5ccf427202fa2664acfe915c808590648e3
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Mar 30 10:21:25 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Mar 30 10:27:07 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1fc8e5cc

llvm.org.eclass: Add 19.0.0_pre20240330 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index a83ffa49dba5..607e3086d65a 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240330)
+   
EGIT_COMMIT=a8b0ecd2605ff23f495a8af64e06c35f86834e54
+   ;;
19.0.0_pre20240322)

EGIT_COMMIT=f3cfe016c5d8429c0dccfa6f85442e2ea0d45a58
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-29 Thread Sam James
commit: ec90f4c3a4e0ef9841dede7b18df90e2aceafd45
Author: Eli Schwartz  gmail  com>
AuthorDate: Thu Mar 28 03:47:10 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Mar 29 18:45:05 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec90f4c3

flag-o-matic.eclass: simplify implementation and work in all cases

It curently uses some magic test to decide whether handcrafted code
works with or without -latomic. But it can claim that -latomic is not
needed for that case, while it is still needed for other cases.

> okay so append-atomic-flags does not work for me in this case
> noise-suppression-for-voice is doing `struct RnNoiseStats { uint32_t a, b, c, 
> d; }; std::atomic m_stats;`
> not just a single large integer

It is simplest to always add -latomic when an ebuild gets that deep
feeling that yeah, it would like some atomics please. The downsides to
listing a linker library are exactly:

- it might be unavailable
- it might be unneeded

And the former case is trivial to solve -- this function already does so
-- while the latter case has a sanctioned approach that is already used
for other intrinsic compiler libraries, but not for atomic "because the
build system would have a hard time if we had to build atomic early on"
which isn't a very good reason to break ebuilds which aren't building
sys-devel/gcc.

As a side benefit, we now handle -latomic such that a package which
requires it, but only for parts of the installed package, does not
overlink to libatomic in *all* binaries/libraries, even if the default
LDFLAGS are overridden and the global -Wl,--as-needed disappears.

Bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81358
Bug: https://bugs.gentoo.org/820101
Bug: https://bugs.gentoo.org/925672
Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/flag-o-matic.eclass | 80 +++---
 1 file changed, 19 insertions(+), 61 deletions(-)

diff --git a/eclass/flag-o-matic.eclass b/eclass/flag-o-matic.eclass
index 5ce7601fdde2..0e5271c7824f 100644
--- a/eclass/flag-o-matic.eclass
+++ b/eclass/flag-o-matic.eclass
@@ -1015,69 +1015,27 @@ test-compile() {
 }
 
 # @FUNCTION: append-atomic-flags
-# @USAGE: [bytes]
 # @DESCRIPTION:
-# Attempts to detect if appending -latomic is required to use
-# a specific-sized atomic intrinsic, and if so, appends it.  If the bytesize
-# is not specified, then check the four most common byte sizes (1, 2, 4, 8).
-# >=16-byte atomics are not included in this default set and must be explicitly
-# passed if required.  This may require you to add a macro definition like
-# -Duint128_t=__uint128_t to your CFLAGS.
+# Attempts to detect if appending -latomic works, and does so.
 append-atomic-flags() {
-   # this implementation is as described in bug #820101
-   local code
-
-   # first, ensure we can compile a trivial program
-   # this is because we can't distinguish if test-compile
-   # fails because -latomic is actually needed or if we have a
-   # broken toolchain (like due to bad FLAGS)
-   read -r -d '' code <<- EOF
-   int main(void)
-   {
-   return 0;
-   }
-   EOF
-
-   # if toolchain is broken, just return silently.  it's better to
-   # let other pieces of the build fail later down the line than to
-   # make people think that something to do with atomic support is the
-   # cause of their problems.
-   test-compile "c+ld" "${code}" || return
-
-   local bytesizes
-   [[ "${#}" == "0" ]] && bytesizes=( "1" "2" "4" "8" ) || bytesizes="${@}"
-
-   for bytesize in ${bytesizes[@]}
-   do
-   # this sample program is informed by the great testing from the 
buildroot project:
-   # 
https://github.com/buildroot/buildroot/commit/6856e417da4f3aa77e2a814db2a89429af072f7d
-   read -r -d '' code <<- EOF
-   #include 
-   int main(void)
-   {
-   uint$((${bytesize} * 8))_t a = 0;
-   __atomic_add_fetch(, 3, __ATOMIC_RELAXED);
-   __atomic_compare_exchange_n(, , 2, 1, 
__ATOMIC_RELAXED, __ATOMIC_RELAXED);
-   return 0;
-   }
-   EOF
-
-   # do nothing if test program links fine
-   test-compile "c+ld" "${code}" && continue
-
-   # ensure that the toolchain supports -latomic
-   test-flags-CCLD "-latomic" &>/dev/null || die "-latomic is 
required but not supported by $(tc-getCC)"
-
-   append-libs "-latomic"
-
-   # verify that this did indeed fix the problem
-   test-compile "c+ld" "${code}" || \
-   die "libatomic does not include an implementation of 
${bytesize}-byte atomics for this toolchain"
-
-   

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-24 Thread Sam James
commit: e897f91e8e81b8168e7045db2f6d8dd9ebdb9ddf
Author: Sam James  gentoo  org>
AuthorDate: Sun Mar 24 17:19:46 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Mar 24 17:47:08 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e897f91e

toolchain.eclass: abort if hybrid CPU detected w/ -march=native

Unfortunately, the previous approach can't work. --param doesn't fully
wipe out the previous value added by -march=native, so we still get a failed
comparison.

Users hitting this should install app-misc/resolve-march-native, run
resolve-march-native, and use that in their *FLAGS instead of -march=native -
at least for sys-devel/gcc via package.env, if not in make.conf.

Therefore, our only real option is to just abort when we detect a problematic
situation and tell users what to do.

The only other idea I had was to try taskset in src_compile which feels super
brittle and not sure it'd even work at all.

Thanks to Andrei for testing and debugging with us on IRC & the bug.

Bug: https://bugs.gentoo.org/904426
Bug: https://bugs.gentoo.org/908523
Bug: https://bugs.gentoo.org/915389
Bug: https://bugs.gentoo.org/927688
Thanks-to: Andrei Liavonchykau  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 11 +--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 01fbd62dc12c..6a515f9b5c69 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1619,9 +1619,16 @@ gcc_do_filter_flags() {
[[ -n ${l1_cache_size} && ${l1_cache_size} =~ ^[0-9]+$ 
]] || break
l1_cache_sizes[${l1_cache_size}]=1
done
-   # If any of them are different, just pick the first one.
+   # If any of them are different, abort. We can't just pass one 
value of
+   # l1-cache-size because it doesn't cancel out the -march=native 
one.
if [[ ${#l1_cache_sizes[@]} -gt 1 ]] ; then
-   append-flags --param=l1-cache-size=${l1_cache_size}
+   eerror "Different values of l1-cache-size detected!"
+   eerror "GCC will fail to bootstrap when comparing files 
with these flags."
+   eerror "This CPU is likely big.little/hybrid hardware 
with power/efficiency cores."
+   eerror "Please install app-misc/resolve-march-native 
and run 'resolve-march-native'"
+   eerror "to find a safe value of CFLAGS for this CPU. 
Note that this may vary"
+   eerror "depending on the core it ran on. taskset can be 
used to fix the cores used."
+   die "Varying l1-cache-size found, aborting (bug 
#915389, gcc PR#111768)"
fi
fi
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-24 Thread Sam James
commit: f64da62e50ad607de3a95b6a1d0d2ed8ba8bd268
Author: Sam James  gentoo  org>
AuthorDate: Sun Mar 24 14:05:00 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Mar 24 14:05:31 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f64da62e

toolchain.eclass: improve hybrid check

Thanks to stikonas for debugging on IRC.

Bug: https://bugs.gentoo.org/904426
Bug: https://bugs.gentoo.org/908523
Bug: https://bugs.gentoo.org/915389
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 03e6a5d987d1..01fbd62dc12c 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1616,11 +1616,11 @@ gcc_do_filter_flags() {
[[ -z ${x} || ${x} -gt 64 ]] && break
l1_cache_size=$(taskset --cpu-list ${x} $(tc-getCC) -Q 
--help=params -O2 -march=native \
| awk '{ if ($1 ~ /^.*param.*l1-cache-size/) 
print $2; }' || die)
-   [[ -n ${l1_cache_size} && ${l1_cache_size} =~ 
"^[0-9]+$" ]] || break
+   [[ -n ${l1_cache_size} && ${l1_cache_size} =~ ^[0-9]+$ 
]] || break
l1_cache_sizes[${l1_cache_size}]=1
done
# If any of them are different, just pick the first one.
-   if [[ ${#l1_cache_sizes} -gt 1 ]] ; then
+   if [[ ${#l1_cache_sizes[@]} -gt 1 ]] ; then
append-flags --param=l1-cache-size=${l1_cache_size}
fi
fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-24 Thread Sam James
commit: 6a5cd02ce95c2b0b46f82fa10e77c47816124128
Author: Sam James  gentoo  org>
AuthorDate: Sun Mar 24 09:30:06 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Mar 24 09:32:09 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a5cd02c

libtool.eclass: depend on newer >=app-portage/elt-patches-20240116

--changed-deps users will get lots of rebuilds from 
18f979e09388597a04255a2f42c464cf5a05d512
anyway so let's chuck this in.

Lots of fixes since the last required version 20170815.

Signed-off-by: Sam James  gentoo.org>

 eclass/libtool.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/libtool.eclass b/eclass/libtool.eclass
index 9797b22aabff..bd6141e1ede9 100644
--- a/eclass/libtool.eclass
+++ b/eclass/libtool.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: libtool.eclass
@@ -18,8 +18,8 @@ if [[ -z ${_LIBTOOL_ECLASS} ]]; then
 _LIBTOOL_ECLASS=1
 
 case ${EAPI} in
-   6) DEPEND=">=app-portage/elt-patches-20170815" ;;
-   7|8) BDEPEND=">=app-portage/elt-patches-20170815" ;;
+   6) DEPEND=">=app-portage/elt-patches-20240116" ;;
+   7|8) BDEPEND=">=app-portage/elt-patches-20240116" ;;
*) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;;
 esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-24 Thread Sam James
commit: 18f979e09388597a04255a2f42c464cf5a05d512
Author: Sam James  gentoo  org>
AuthorDate: Sun Mar 24 09:08:48 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sun Mar 24 09:08:48 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18f979e0

autotools.eclass: require >=dev-build/libtool-2.4.7-r3

Needed for c7012f128a3c04053924fa1e96ed48a1c758fc65 wrt upgrade ordering.

Bug: https://bugs.gentoo.org/927650
Bug: https://bugs.gentoo.org/927662
Signed-off-by: Sam James  gentoo.org>

 eclass/autotools.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/autotools.eclass b/eclass/autotools.eclass
index 2290e8067813..1ced771c5345 100644
--- a/eclass/autotools.eclass
+++ b/eclass/autotools.eclass
@@ -149,7 +149,7 @@ if [[ -n ${WANT_AUTOCONF} ]] ; then
export WANT_AUTOCONF
 fi
 
-_libtool_atom=">=dev-build/libtool-2.4.7"
+_libtool_atom=">=dev-build/libtool-2.4.7-r3"
 if [[ -n ${WANT_LIBTOOL} ]] ; then
case ${WANT_LIBTOOL} in
none)   _libtool_atom="" ;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: 52fa9d334e23327ba08139f8617d3ae16adff64e
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 20:18:16 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 20:18:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=52fa9d33

toolchain.eclass: fortify hybrid workaround

* Make sure the result is non-empty before trying to use it as an index
* Make sure the result is an integer before trying to use it as an index
* Don't try to set --param ... if we had no result at all

These are good ideas anyway but they happen with gnat-gpl as apparently
older GCC didn't actually have the l1-cache-size thing (I thought it was a bit
older than 10). Whatever.

Closes: https://bugs.gentoo.org/927646
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 331e107bacf3..03e6a5d987d1 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1616,10 +1616,11 @@ gcc_do_filter_flags() {
[[ -z ${x} || ${x} -gt 64 ]] && break
l1_cache_size=$(taskset --cpu-list ${x} $(tc-getCC) -Q 
--help=params -O2 -march=native \
| awk '{ if ($1 ~ /^.*param.*l1-cache-size/) 
print $2; }' || die)
+   [[ -n ${l1_cache_size} && ${l1_cache_size} =~ 
"^[0-9]+$" ]] || break
l1_cache_sizes[${l1_cache_size}]=1
done
# If any of them are different, just pick the first one.
-   if [[ ${#l1_cache_sizes} != 1 ]] ; then
+   if [[ ${#l1_cache_sizes} -gt 1 ]] ; then
append-flags --param=l1-cache-size=${l1_cache_size}
fi
fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: 366f99366481f7f34ce30e4fc85f50e4dc7e4a48
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 19:01:06 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 19:01:30 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=366f9936

toolchain.eclass: another error handling fix

Fixes: f81ec884754b3f3d3720d40b212e12ef364821c5
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index cd63712b1f24..331e107bacf3 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2089,8 +2089,9 @@ toolchain_src_install() {
 
docompress "${DATAPATH}"/{info,man}
 
-   # Prune empty dirs left behind
-   find "${ED}" -depth -type d -delete 2>/dev/null || die
+   # Prune empty dirs left behind. It's fine not to die here as we may
+   # really have no empty dirs left.
+   find "${ED}" -depth -type d -delete 2>/dev/null
 
# libstdc++.la: Delete as it doesn't add anything useful: g++ itself
# handles linkage correctly in the dynamic & static case.  It also just



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: efc8afb3c59398c00fc42a06ec541bc481100873
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 17:03:50 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 17:04:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efc8afb3

toolchain.eclass: another error handling fix

This one seems to be part of the previous block and was missing a comment /
had misleading whitespace.

Fixes: f81ec884754b3f3d3720d40b212e12ef364821c5
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 45e175a6092e..cd63712b1f24 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2223,8 +2223,8 @@ gcc_movelibs() {
for FROMDIR in ${removedirs} ; do
rmdir "${D}"${FROMDIR} >& /dev/null
done
-
-   find -depth "${ED}" -type d -exec rmdir {} + >& /dev/null || die
+   # XXX: Intentionally no die, here to remove empty dirs
+   find -depth "${ED}" -type d -exec rmdir {} + >& /dev/null
 }
 
 # Make sure the libtool archives have libdir set to where they actually



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Michał Górny
commit: faadc0bc6bbc5bd65248446fc7b084331a4d3ec1
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Mar 23 16:07:27 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Mar 23 17:03:18 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=faadc0bc

llvm.org.eclass: Add 19.0.0_pre20240322 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index bd1b726a9a4e..a83ffa49dba5 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240322)
+   
EGIT_COMMIT=f3cfe016c5d8429c0dccfa6f85442e2ea0d45a58
+   ;;
19.0.0_pre20240316)

EGIT_COMMIT=6d3cec01a6c29fa4e51ba129fa13dbf55d2b928e
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: f02411ef0cf08c3d352e158a154f8961ec24d366
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 16:05:20 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 16:05:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f02411ef

toolchain.eclass: prettify gcc bz links

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index f01edde0287d..45e175a6092e 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -359,7 +359,7 @@ DEPEND="${RDEPEND}"
 if [[ ${PN} == gcc && ${PV} == *_p* ]] ; then
# Snapshots don't contain info pages.
# If they start to, adjust gcc_cv_prog_makeinfo_modern logic in 
toolchain_src_configure.
-   # Needed unless/until 
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106899 is fixed
+   # Needed unless/until https://gcc.gnu.org/PR106899 is fixed
BDEPEND+=" sys-apps/texinfo"
 fi
 
@@ -803,7 +803,7 @@ toolchain_src_configure() {
gcc_do_filter_flags
 
if ! tc_version_is_at_least 11 && [[ $(gcc-major-version) -ge 12 ]] ; 
then
-   # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105695
+   # https://gcc.gnu.org/PR105695
# bug #849359
export ac_cv_std_swap_in_utility=no
fi
@@ -1044,7 +1044,7 @@ toolchain_src_configure() {
fi
 
confgcc+=(
-   # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100289
+   # https://gcc.gnu.org/PR100289
# TOOD: Find a way to disable this just for stage1 
cross?
--disable-gcov
 
@@ -1374,7 +1374,7 @@ toolchain_src_configure() {
 
# TODO: Ignore RCs here (but TOOLCHAIN_IS_RC isn't yet an eclass var)
if [[ ${PV} == *_p* && -f "${S}"/gcc/doc/gcc.info ]] ; then
-   # Safeguard against 
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106899 being fixed
+   # Safeguard against https://gcc.gnu.org/PR106899 being fixed
# without corresponding ebuild changes.
eqawarn "Snapshot release with pre-generated info pages found!"
eqawarn "The BDEPEND in the ebuild should be updated to drop 
texinfo."
@@ -1989,10 +1989,10 @@ toolchain_src_install() {
# with it. Several reported bugs exist where the resulting image
# was wrong, rather than a simple compile/install failure:
# - bug #906155
-   # - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42980
-   # - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51814
-   # - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103656
-   # - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109898
+   # - https://gcc.gnu.org/PR42980
+   # - https://gcc.gnu.org/PR51814
+   # - https://gcc.gnu.org/PR103656
+   # - https://gcc.gnu.org/PR109898
S="${WORKDIR}"/build emake DESTDIR="${D}" -j1 install
 
# Punt some tools which are really only useful while building gcc



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: e9c493e228a1542c4bb0a036303102718a78b679
Author: Sam James  gentoo  org>
AuthorDate: Fri Mar 15 10:17:00 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 15:40:49 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9c493e2

toolchain.eclass: add CHOST to test data path

We get collisions for cross-compilers otherwise.

Closes: https://bugs.gentoo.org/925037
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 5fdbf47a8f3a..c8543c617ccd 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1849,10 +1849,10 @@ toolchain_src_test() {
SANDBOX_ON=0 LD_PRELOAD= nonfatal emake -k check
local success_tests=$?
 
-   if [[ ! -d "${BROOT}"/var/cache/gcc/${SLOT} ]] && ! [[ ${success_tests} 
-eq 0 ]] ; then
+   if [[ ! -d "${BROOT}"/var/cache/gcc/${CHOST}/${SLOT} ]] && ! [[ 
${success_tests} -eq 0 ]] ; then
# We have no reference data saved from a previous run to know if
# the failures are tolerable or not, so we bail out.
-   eerror "Reference test data does NOT exist at 
${BROOT}/var/cache/gcc/${SLOT}"
+   eerror "Reference test data does NOT exist at 
${BROOT}/var/cache/gcc/${CHOST}/${SLOT}"
eerror "Tests failed and nothing to compare with, so this is a 
fatal error."
eerror "(Set GCC_TESTS_IGNORE_NO_BASELINE=1 to make this 
non-fatal for initial run.)"
 
@@ -1868,14 +1868,14 @@ toolchain_src_test() {
 
# If previous results exist on the system, compare with it
# TODO: Distribute some baseline results in e.g. gcc-patches.git?
-   if [[ -d "${BROOT}"/var/cache/gcc/${SLOT} ]] ; then
-   einfo "Comparing with previous cached results at 
${BROOT}/var/cache/gcc/${SLOT}"
+   if [[ -d "${BROOT}"/var/cache/gcc/${CHOST}/${SLOT} ]] ; then
+   einfo "Comparing with previous cached results at 
${BROOT}/var/cache/gcc/${CHOST}/${SLOT}"
 
# Exit with the following values:
# 0 if there is nothing of interest
# 1 if there are errors when comparing single test case files
# N for the number of errors found when comparing directories
-   "${S}"/contrib/compare_tests "${BROOT}"/var/cache/gcc/${SLOT}/ 
. || die "Comparison for tests results failed, error code: $?"
+   "${S}"/contrib/compare_tests 
"${BROOT}"/var/cache/gcc/${CHOST}/${SLOT}/ . || die "Comparison for tests 
results failed, error code: $?"
fi
 }
 
@@ -2104,11 +2104,11 @@ toolchain_src_install() {
# more versions even after unmerged? Also would be useful for
# historical records and tracking down regressions a while
# after they first appeared, but were only just reported.
-   einfo "Copying test results to ${EPREFIX}/var/cache/gcc/${SLOT} 
for future comparison"
+   einfo "Copying test results to 
${EPREFIX}/var/cache/gcc/${CHOST}/${SLOT} for future comparison"
(
-   dodir /var/cache/gcc/${SLOT}
+   dodir /var/cache/gcc/${CHOST}/${SLOT}
cd "${WORKDIR}"/build || die
-   find . -name \*.sum -exec cp --parents -v {} 
"${ED}"/var/cache/gcc/${SLOT} \;
+   find . -name \*.sum -exec cp --parents -v {} 
"${ED}"/var/cache/gcc/${CHOST}/${SLOT} \;
)
fi
 }



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: c4eccac296c608e3fafad22d678540ddaab950d7
Author: Sam James  gentoo  org>
AuthorDate: Sun Mar 17 06:47:09 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 15:40:52 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c4eccac2

toolchain.eclass: don't install all .sum files

Just rely on the validate_failures.py manifests instead. These logs get
real big real fast. People can save build logs if they want to look at
the tests otherwise.

Bug: https://bugs.gentoo.org/214345
Bug: https://bugs.gentoo.org/253926
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 6b9b49011bce..d996d2d02770 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2339,9 +2339,8 @@ toolchain_pkg_preinst() {
if [[ -f "${T}"/${CHOST}.xfail ]] ; then
cp -v "${T}"/${CHOST}.xfail 
"${GCC_TESTS_COMPARISON_DIR}/${SLOT}" || die
fi
-   find . -name \*.sum -exec cp --parents -v {} 
"${GCC_TESTS_COMPARISON_DIR}/${SLOT}" \;
-)
-fi
+   )
+   fi
 }
 
 #>> pkg_post* <<



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: f81ec884754b3f3d3720d40b212e12ef364821c5
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 08:44:55 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 15:40:54 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f81ec884

toolchain.eclass: add various missing error handling

Prompted by Ionen.

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 34 +-
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index d996d2d02770..5f350db0fe13 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -646,7 +646,7 @@ toolchain_src_prepare() {
# Update configure files
local f
einfo "Fixing misc issues in configure files"
-   for f in $(grep -l 'autoconf version 2.13' $(find "${S}" -name 
configure)) ; do
+   for f in $(grep -l 'autoconf version 2.13' $(find "${S}" -name 
configure || die) || die) ; do
ebegin "  Updating ${f/${S}\/} [LANG]"
patch "${f}" "${FILESDIR}"/gcc-configure-LANG.patch >& 
"${T}"/configure-patch.log \
|| eerror "Please file a bug about this"
@@ -1865,7 +1865,7 @@ gcc_do_make() {
emake doc-man-doxygen
 
# Clean bogus manpages. bug #113902
-   find -name '*_build_*' -delete
+   find -name '*_build_*' -delete || die
 
# Blow away generated directory references. Newer 
versions of gcc
# have gotten better at this, but not perfect. This is 
easier than
@@ -1982,9 +1982,9 @@ toolchain_src_install() {
S="${WORKDIR}"/build-jit emake DESTDIR="${D}" -j1 install
 
# Punt some tools which are really only useful while building 
gcc
-   find "${ED}" -name install-tools -prune -type d -exec rm -rf 
"{}" \;
+   find "${ED}" -name install-tools -prune -type d -exec rm -rf 
"{}" \; || die
# This one comes with binutils
-   find "${ED}" -name libiberty.a -delete
+   find "${ED}" -name libiberty.a -delete || die
 
# Move the libraries to the proper location
gcc_movelibs
@@ -2006,9 +2006,9 @@ toolchain_src_install() {
S="${WORKDIR}"/build emake DESTDIR="${D}" -j1 install
 
# Punt some tools which are really only useful while building gcc
-   find "${ED}" -name install-tools -prune -type d -exec rm -rf "{}" \;
+   find "${ED}" -name install-tools -prune -type d -exec rm -rf "{}" \; || 
die
# This one comes with binutils
-   find "${ED}" -name libiberty.a -delete
+   find "${ED}" -name libiberty.a -delete || die
 
# Move the libraries to the proper location
gcc_movelibs
@@ -2084,9 +2084,9 @@ toolchain_src_install() {
rm -rf "${ED}"/usr/share/{man,info}
rm -rf "${D}"${DATAPATH}/{man,info}
else
-   local cxx_mandir=$(find 
"${WORKDIR}/build/${CTARGET}/libstdc++-v3" -name man)
+   local cxx_mandir=$(find 
"${WORKDIR}/build/${CTARGET}/libstdc++-v3" -name man || die)
if [[ -d ${cxx_mandir} ]] ; then
-   cp -r "${cxx_mandir}"/man? "${D}${DATAPATH}"/man/
+   cp -r "${cxx_mandir}"/man? "${D}${DATAPATH}"/man/ || die
fi
fi
 
@@ -2100,7 +2100,7 @@ toolchain_src_install() {
docompress "${DATAPATH}"/{info,man}
 
# Prune empty dirs left behind
-   find "${ED}" -depth -type d -delete 2>/dev/null
+   find "${ED}" -depth -type d -delete 2>/dev/null || die
 
# libstdc++.la: Delete as it doesn't add anything useful: g++ itself
# handles linkage correctly in the dynamic & static case.  It also just
@@ -2137,17 +2137,17 @@ toolchain_src_install() {
-name libitm.la -o \
-name libvtv.la -o \
-name 'lib*san.la' \
-   ')' -type f -delete
+   ')' -type f -delete || die
 
# Use gid of 0 because some stupid ports don't have
# the group 'root' set to gid 0.  Send to /dev/null
# for people who are testing as non-root.
-   chown -R 0:0 "${D}${LIBPATH}" 2>/dev/null
+   chown -R 0:0 "${D}${LIBPATH}" 2>/dev/null || die
 
# Installing gdb pretty-printers into gdb-specific location.
local py gdbdir=/usr/share/gdb/auto-load${LIBPATH}
-   pushd "${D}${LIBPATH}" >/dev/null
-   for py in $(find . -name '*-gdb.py') ; do
+   pushd "${D}${LIBPATH}" >/dev/null || die
+   for py in $(find . -name '*-gdb.py' || die) ; do
local multidir=${py%/*}
 
insinto "${gdbdir}/${multidir}"
@@ -2157,7 +2157,7 @@ toolchain_src_install() {
 
rm "${py}" || die
done
-   popd >/dev/null
+   popd 

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: a4be4b7c55aa58e5d034f4c35b1f0851f8dd7f39
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 16 11:20:35 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 15:40:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a4be4b7c

Revert "toolchain.eclass: default to just running the (execute) torture tests"

This reverts commit 97b5abe929550453932060bbf078bb4352b400c1.

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index dfcbd80cb283..d996d2d02770 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -122,14 +122,14 @@ tc_version_is_between() {
 # @DESCRIPTION:
 # Defaults to 'check'. Allows choosing a different test target, e.g.
 # 'test-gcc' (https://gcc.gnu.org/install/test.html).
-: "${GCC_TESTS_CHECK_TARGET:=check-gcc}"
+: "${GCC_TESTS_CHECK_TARGET:=check}"
 
 # @ECLASS_VARIABLE: GCC_TESTS_RUNTESTFLAGS
 # @DEFAULT_UNSET
 # @USER_VARIABLE
 # @DESCRIPTION:
 # Extra options to pass to DejaGnu as RUNTESTFLAGS.
-: "${GCC_TESTS_RUNTESTFLAGS:=execute.exp}"
+: "${GCC_TESTS_RUNTESTFLAGS:=}"
 
 # @ECLASS_VARIABLE: TOOLCHAIN_PATCH_DEV
 # @DEFAULT_UNSET



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: 307968a6436a5bf05b935a96127cb484e4b67759
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 15:39:40 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 15:39:40 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=307968a6

toolchain.eclass: use extglob for hybrid hack

Thanks Ionen!

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 79032416e881..5fdbf47a8f3a 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1570,7 +1570,7 @@ gcc_do_filter_flags() {
declare -A l1_cache_sizes=()
# Workaround for inconsistent cache sizes on hybrid P/E cores
# See PR111768 (and bug #904426, bug #908523, and bug #915389)
-   if [[ ${CBUILD} == x86_64* || ${CBUILD} == i?86* ]] && [[ ${CFLAGS} == 
*-march=native* ]] && tc-is-gcc ; then
+   if [[ ${CBUILD} == @(x86_64|i?86)* ]] && [[ ${CFLAGS} == 
*-march=native* ]] && tc-is-gcc ; then
local x
local l1_cache_size
# Iterate over all cores and find their L1 cache size



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: abf8e2ee55c52c8ae894e0b3845ea1cebfcfd4e8
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 16 01:38:45 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 15:40:50 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abf8e2ee

toolchain.eclass: install test results as orphaned files in /var/cache/gcc

This allows comparison across versions even after they get upgraded, which
is useful in itself (and across series), but also for looking into when 
regressions
started if they're reported but started a while ago.

Followup to 9ac3f1cf62b522236ba9efd7e923071c37df1e6d.

Bug: https://bugs.gentoo.org/214345
Bug: https://bugs.gentoo.org/253926
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 32 +---
 1 file changed, 21 insertions(+), 11 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index c8543c617ccd..699e647c693a 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -2100,16 +2100,9 @@ toolchain_src_install() {
pax-mark -r "${ED}/libexec/gcc/${CTARGET}/${GCC_CONFIG_VER}/cc1plus"
 
if use test ; then
-   # TODO: In future, install orphaned to allow comparison across
-   # more versions even after unmerged? Also would be useful for
-   # historical records and tracking down regressions a while
-   # after they first appeared, but were only just reported.
-   einfo "Copying test results to 
${EPREFIX}/var/cache/gcc/${CHOST}/${SLOT} for future comparison"
-   (
-   dodir /var/cache/gcc/${CHOST}/${SLOT}
-   cd "${WORKDIR}"/build || die
-   find . -name \*.sum -exec cp --parents -v {} 
"${ED}"/var/cache/gcc/${CHOST}/${SLOT} \;
-   )
+   mkdir "${T}"/test-results || die
+   cd "${WORKDIR}"/build || die
+   find . -name \*.sum -exec cp --parents -v {} 
"${T}"/test-results \;
fi
 }
 
@@ -2262,6 +2255,23 @@ create_revdep_rebuild_entry() {
EOF
 }
 
+#>> pkg_pre* <<
+
+toolchain_pkg_preinst() {
+   if use test ; then
+   # Install as orphaned to allow comparison across more
+   # versions even after unmerged. Also useful for historical 
records
+   # and tracking down regressions a while after they first 
appeared,
+   # but were only just reported.
+   einfo "Copying test results to 
${BROOT}/var/cache/gcc/${CHOST}/${SLOT} for future comparison"
+   (
+   mkdir -p "${BROOT}"/var/cache/gcc/${CHOST}/${SLOT} || 
die
+   cd "${T}"/test-results || die
+   find . -name \*.sum -exec cp --parents -v {} 
"${BROOT}"/var/cache/gcc/${CHOST}/${SLOT} \;
+)
+fi
+}
+
 #>> pkg_post* <<
 
 toolchain_pkg_postinst() {
@@ -2515,4 +2525,4 @@ fi
 # enabled-by-default state:
 #econf $(usex foo '' --disable-foo)
 
-EXPORT_FUNCTIONS pkg_pretend pkg_setup src_unpack src_prepare src_configure 
src_compile src_test src_install pkg_postinst pkg_postrm
+EXPORT_FUNCTIONS pkg_pretend pkg_setup src_unpack src_prepare src_configure 
src_compile src_test src_install pkg_preinst pkg_postinst pkg_postrm



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: b505998d735e8c1d0d4bb757c1967bf80cc25d4a
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 14:52:25 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 14:52:25 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b505998d

toolchain.eclass: split condition for readability

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index ec35591ec8fb..79032416e881 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1570,7 +1570,7 @@ gcc_do_filter_flags() {
declare -A l1_cache_sizes=()
# Workaround for inconsistent cache sizes on hybrid P/E cores
# See PR111768 (and bug #904426, bug #908523, and bug #915389)
-   if [[ ${CBUILD} == x86_64* || ${CBUILD} == i?86* && ${CFLAGS} == 
*-march=native* ]] && tc-is-gcc ; then
+   if [[ ${CBUILD} == x86_64* || ${CBUILD} == i?86* ]] && [[ ${CFLAGS} == 
*-march=native* ]] && tc-is-gcc ; then
local x
local l1_cache_size
# Iterate over all cores and find their L1 cache size



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: df5debfbe8308f07f426d6a8a2230bb6b9107d30
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 13:46:22 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 14:48:42 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=df5debfb

toolchain.eclass: fix whitespace

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index e962c8181693..f59b8d61f6f5 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1886,7 +1886,7 @@ toolchain_src_install() {
# See 
https://gcc.gnu.org/onlinedocs/gcc-11.3.0/jit/internals/index.html#packaging-notes
# and bug #843341.
#
-   # Both of the non-JIT and JIT builds  are configured to install 
to $(DESTDIR)
+   # Both of the non-JIT and JIT builds are configured to install 
to $(DESTDIR)
# Install the configuration with --enable-host-shared first
# *then* the one without, so that the faster build
# of "cc1" et al overwrites the slower build.



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Sam James
commit: 4fba38fc35fe2966574dd6bfd68ee82cd354976c
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 23 14:16:38 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 23 14:48:47 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4fba38fc

toolchain.eclass: add workaround for hybrid CPUs

Hybrid/big.little/PE CPUs may report an inconsistent cache size across cores
which can cause GCC's bootstrapping to fail its self-comparison.

When CBUILD is amd64 or x86 and -march=native is in CFLAGS, iterate over
all cores and record l1-cache-size. If any differ, use the first one we found.

Bug: https://gcc.gnu.org/PR111768
Closes: https://bugs.gentoo.org/904426
Closes: https://bugs.gentoo.org/908523
Closes: https://bugs.gentoo.org/915389
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 18 ++
 1 file changed, 18 insertions(+)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index f59b8d61f6f5..ec35591ec8fb 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1567,6 +1567,24 @@ gcc_do_filter_flags() {
fi
fi
 
+   declare -A l1_cache_sizes=()
+   # Workaround for inconsistent cache sizes on hybrid P/E cores
+   # See PR111768 (and bug #904426, bug #908523, and bug #915389)
+   if [[ ${CBUILD} == x86_64* || ${CBUILD} == i?86* && ${CFLAGS} == 
*-march=native* ]] && tc-is-gcc ; then
+   local x
+   local l1_cache_size
+   # Iterate over all cores and find their L1 cache size
+   for x in $(seq 0 $(($(nproc)-1))) ; do
+   [[ -z ${x} || ${x} -gt 64 ]] && break
+   l1_cache_size=$(taskset --cpu-list ${x} $(tc-getCC) -Q 
--help=params -O2 -march=native \
+   | awk '{ if ($1 ~ /^.*param.*l1-cache-size/) 
print $2; }' || die)
+   l1_cache_sizes[${l1_cache_size}]=1
+   done
+   # If any of them are different, just pick the first one.
+   if [[ ${#l1_cache_sizes} != 1 ]] ; then
+   append-flags --param=l1-cache-size=${l1_cache_size}
+   fi
+   fi
 
if ver_test -lt 13.6 ; then
# These aren't supported by the just-built compiler either.



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Arthur Zamarin
commit: 5f34586458eebda4da0e2d35da93a4bc5f13c7d0
Author: Arthur Zamarin  gentoo  org>
AuthorDate: Sat Mar 23 14:28:11 2024 +
Commit: Arthur Zamarin  gentoo  org>
CommitDate: Sat Mar 23 14:29:55 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f345864

tree-sitter-grammar.eclass: don't pre-strip library

When STRIP is set to anon empty value, it is called during build of the
shared library. By unsetting it, the strip isn't called during compile
but by the portage strip phase.

Closes: https://bugs.gentoo.org/927571
Closes: https://bugs.gentoo.org/927572
Signed-off-by: Arthur Zamarin  gentoo.org>

 eclass/tree-sitter-grammar.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/tree-sitter-grammar.eclass 
b/eclass/tree-sitter-grammar.eclass
index 74443e213b89..b5e020065547 100644
--- a/eclass/tree-sitter-grammar.eclass
+++ b/eclass/tree-sitter-grammar.eclass
@@ -163,6 +163,7 @@ tree-sitter-grammar_src_compile() {
if [[ -f "${S}/pyproject.toml" ]]; then
sed -e "/SONAME_MINOR :=/s/:=.*$/:= $(_get_tsg_abi_ver)/" -i 
"${S}/Makefile" || die
emake \
+   STRIP="" \
PREFIX="${EPREFIX}/usr" \
LIBDIR="${EPREFIX}/usr/$(get_libdir)"
else



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Michał Górny
commit: 46e22dc8317eee07acf88263c6628b9bf0e735fd
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Mar 23 06:51:24 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Mar 23 10:23:27 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46e22dc8

llvm.org.eclass: Remove old snapshot support

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 6 --
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 2086d44e7576..bd1b726a9a4e 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
19.0.0_pre20240316)

EGIT_COMMIT=6d3cec01a6c29fa4e51ba129fa13dbf55d2b928e
;;
-   19.0.0_pre20240309)
-   
EGIT_COMMIT=1c7607e8ee6ec4ca3abce1561dd39a98d4efac96
-   ;;
-   19.0.0_pre20240302)
-   
EGIT_COMMIT=597f9761c3a5ba278fa930d2fac13f156287d505
-   ;;
*)
die "Unknown snapshot: ${PV}"
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Arthur Zamarin
commit: 83e994e50f806880e1cf1b2b2d47a1d69ab18a60
Author: Arthur Zamarin  gentoo  org>
AuthorDate: Thu Mar 14 14:03:02 2024 +
Commit: Arthur Zamarin  gentoo  org>
CommitDate: Sat Mar 23 08:27:41 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83e994e5

tree-sitter-grammar.eclass: support for new upstream makefile

The build system for tree-sitters now generates a much better
Makefile we can use to build the parser and grammar into a good C
library.
This also matches the build procedure used by upstream, making our
reports easier for them to debug (we hit this issue in an old bug
report on memory leak with tree-sitter-bash).

Signed-off-by: Arthur Zamarin  gentoo.org>

 eclass/tree-sitter-grammar.eclass | 64 ++-
 1 file changed, 43 insertions(+), 21 deletions(-)

diff --git a/eclass/tree-sitter-grammar.eclass 
b/eclass/tree-sitter-grammar.eclass
index b2563220cfc2..13539daf7e61 100644
--- a/eclass/tree-sitter-grammar.eclass
+++ b/eclass/tree-sitter-grammar.eclass
@@ -1,10 +1,11 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: tree-sitter-grammar.eclass
 # @MAINTAINER:
 # Matthew Smith 
 # Nick Sarnie 
+# Arthur Zamarin 
 # @AUTHOR:
 # Matthew Smith 
 # @SUPPORTED_EAPIS: 8
@@ -22,7 +23,7 @@ inherit edo multilib toolchain-funcs
 
 SRC_URI="https://github.com/tree-sitter/${PN}/archive/${TS_PV:-v${PV}}.tar.gz
-> ${P}.tar.gz"
-S="${WORKDIR}"/${PN}-${TS_PV:-${PV}}/src
+S="${WORKDIR}"/${PN}-${TS_PV:-${PV}}
 
 BDEPEND+=" test? ( dev-util/tree-sitter-cli )"
 IUSE+=" test"
@@ -44,15 +45,16 @@ _get_tsg_abi_ver() {
# This sed script finds ABI definition string in parser source file,
# substitutes all the string until the ABI number, and prints remains
# (the ABI number itself)
-   sed -n 's/#define LANGUAGE_VERSION //p' "${S}"/parser.c ||
+   sed -n 's/#define LANGUAGE_VERSION //p' "${S}"/src/parser.c ||
die "Unable to extract ABI version for this grammar"
 }
 
-# @FUNCTION: tree-sitter-grammar_src_compile
+# @FUNCTION: _tree-sitter-grammar_legacy_compile
+# @INTERNAL
 # @DESCRIPTION:
-# Compiles the Tree Sitter parser as a shared library.
-tree-sitter-grammar_src_compile() {
-   debug-print-function ${FUNCNAME} "${@}"
+# Compiles the Tree Sitter parser as a shared library, the legacy way.
+_tree-sitter-grammar_legacy_compile() {
+   cd "${S}/src" || die
 
# Grammars always contain parser.c, and sometimes a scanner.c,
# or scanner.cc.
@@ -60,17 +62,17 @@ tree-sitter-grammar_src_compile() {
tc-export CC CXX
# We want to use the bundled parser.h, not anything lurking on the 
system, hence -I
# See 
https://github.com/tree-sitter/tree-sitter-bash/issues/199#issuecomment-1694416505
-   export CFLAGS="${CFLAGS} -fPIC -I. -Itree_sitter"
-   export CXXFLAGS="${CXXFLAGS} -fPIC -I. -Itree_sitter"
+   local -x CFLAGS="${CFLAGS} -fPIC -I. -Itree_sitter"
+   local -x CXXFLAGS="${CXXFLAGS} -fPIC -I. -Itree_sitter"
 
local objects=( parser.o )
-   if [[ -f "${S}"/scanner.c || -f "${S}"/scanner.cc ]]; then
+   if [[ -f "${S}"/src/scanner.c || -f "${S}"/src/scanner.cc ]]; then
objects+=( scanner.o )
fi
emake "${objects[@]}"
 
local link="$(tc-getCC) ${CFLAGS}"
-   if [[ -f "${S}/scanner.cc" ]]; then
+   if [[ -f "${S}/src/scanner.cc" ]]; then
link="$(tc-getCXX) ${CXXFLAGS}"
fi
 
@@ -84,10 +86,24 @@ tree-sitter-grammar_src_compile() {
edo ${link} ${LDFLAGS} \
-shared \
*.o \
-   ${soname_args} \
+   "${soname_args}" \
-o "${WORKDIR}"/${soname}
 }
 
+tree-sitter-grammar_src_compile() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   # legacy grammars don't have a pyproject.toml
+   if [[ -f "${S}/pyproject.toml" ]]; then
+   sed -e "/SONAME_MINOR :=/s/:=.*$/:= $(_get_tsg_abi_ver)/" -i 
"${S}/Makefile" || die
+   emake \
+   PREFIX="${EPREFIX}/usr" \
+   LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+   else
+   _tree-sitter-grammar_legacy_compile
+   fi
+}
+
 # @FUNCTION: tree-sitter-grammar_src_test
 # @DESCRIPTION:
 # Runs the Tree Sitter parser's test suite.
@@ -95,20 +111,26 @@ tree-sitter-grammar_src_compile() {
 tree-sitter-grammar_src_test() {
debug-print-function ${FUNCNAME} "${@}"
 
-   (cd .. && tree-sitter test) || die "Test suite failed"
+   tree-sitter test || die "Test suite failed"
 }
 
-# @FUNCTION: tree-sitter-grammar_src_install
-# @DESCRIPTION:
-# Installs the Tree Sitter parser library.
 tree-sitter-grammar_src_install() {
debug-print-function ${FUNCNAME} "${@}"
 
-   local 

[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-23 Thread Arthur Zamarin
commit: 949b5c8afe07fd5f54942d7190d963b4ccf1e38a
Author: Arthur Zamarin  gentoo  org>
AuthorDate: Thu Mar 14 14:04:04 2024 +
Commit: Arthur Zamarin  gentoo  org>
CommitDate: Sat Mar 23 08:27:42 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=949b5c8a

tree-sitter-grammar.eclass: support opt in python bindings

New tree-sitter cli generated bindings and code around grammars and
parsers now support bulding a python wheel which supply much better
API and library for consumers in python bindings.

Currently I've added only python as a binding languages, even though
rust, swift, and go are also available. We should add them when we
see a request for them. Python will be needed for pkgcheck.

When we opt in into python bindings, we call the matching distutils
phase functions when `use python` is true.

Signed-off-by: Arthur Zamarin  gentoo.org>

 eclass/tree-sitter-grammar.eclass | 86 ++-
 1 file changed, 85 insertions(+), 1 deletion(-)

diff --git a/eclass/tree-sitter-grammar.eclass 
b/eclass/tree-sitter-grammar.eclass
index 13539daf7e61..74443e213b89 100644
--- a/eclass/tree-sitter-grammar.eclass
+++ b/eclass/tree-sitter-grammar.eclass
@@ -36,6 +36,44 @@ RESTRICT+=" !test? ( test )"
 # Used to override upstream tag name if tagged differently, e.g. most releases
 # are v${PV} but some are tagged as rust-${PV}.
 
+# @ECLASS_VARIABLE: TS_BINDINGS
+# @PRE_INHERIT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Array of bindings language to build. Currently only "python" is supported.
+
+for _BINDING in "${TS_BINDINGS[@]}"; do
+   case ${_BINDING} in
+   python)
+   DISTUTILS_EXT=1
+   DISTUTILS_OPTIONAL=1
+   DISTUTILS_USE_PEP517=setuptools
+   PYTHON_COMPAT=( python3_{10..12} )
+   inherit distutils-r1
+
+   IUSE+=" python"
+   REQUIRED_USE+=" python? ( ${PYTHON_REQUIRED_USE} )"
+
+   DEPEND+=" python? (
+   ${PYTHON_DEPS}
+   )"
+   RDEPEND+=" python? (
+   ${PYTHON_DEPS}
+   
>=dev-python/tree-sitter-0.21.0[${PYTHON_USEDEP}]
+   )"
+   BDEPEND+=" python? (
+   ${PYTHON_DEPS}
+   ${DISTUTILS_DEPS}
+   dev-python/wheel[${PYTHON_USEDEP}]
+   )"
+   ;;
+   *)
+   die "Unknown binding: ${_BINDING}"
+   ;;
+   esac
+done
+unset _BINDING
+
 # @FUNCTION: _get_tsg_abi_ver
 # @INTERNAL
 # @DESCRIPTION:
@@ -49,6 +87,34 @@ _get_tsg_abi_ver() {
die "Unable to extract ABI version for this grammar"
 }
 
+tree-sitter-grammar_src_prepare() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   default
+
+   local binding
+   for binding in "${TS_BINDINGS[@]}"; do
+   case ${binding} in
+   python)
+   use python && distutils-r1_src_prepare
+   ;;
+   esac
+   done
+}
+
+tree-sitter-grammar_src_configure() {
+   debug-print-function ${FUNCNAME} "${@}"
+
+   local binding
+   for binding in "${TS_BINDINGS[@]}"; do
+   case ${binding} in
+   python)
+   use python && distutils-r1_src_configure
+   ;;
+   esac
+   done
+}
+
 # @FUNCTION: _tree-sitter-grammar_legacy_compile
 # @INTERNAL
 # @DESCRIPTION:
@@ -102,6 +168,15 @@ tree-sitter-grammar_src_compile() {
else
_tree-sitter-grammar_legacy_compile
fi
+
+   local binding
+   for binding in "${TS_BINDINGS[@]}"; do
+   case ${binding} in
+   python)
+   use python && distutils-r1_src_compile
+   ;;
+   esac
+   done
 }
 
 # @FUNCTION: tree-sitter-grammar_src_test
@@ -131,8 +206,17 @@ tree-sitter-grammar_src_install() {
dolib.so "${WORKDIR}/${soname}"
dosym "${soname}" /usr/$(get_libdir)/lib${PN}$(get_libname)
fi
+
+   local binding
+   for binding in "${TS_BINDINGS[@]}"; do
+   case ${binding} in
+   python)
+   use python && distutils-r1_src_install
+   ;;
+   esac
+   done
 }
 
 fi
 
-EXPORT_FUNCTIONS src_compile src_test src_install
+EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-19 Thread Florian Schmaus
commit: ac21aa95b7ba7dcca5bd4751cc884645d01916b6
Author: Florian Schmaus  gentoo  org>
AuthorDate: Mon Mar 18 13:51:01 2024 +
Commit: Florian Schmaus  gentoo  org>
CommitDate: Tue Mar 19 14:05:45 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac21aa95

texlive-common.eclass: etexmf-update to call 'die' for non-"dev-telive"

This also makes etexmf-update fail for packages that are outside
dev-texlive/* and don't use the TexLive version scheme like
dev-libs/kpathsea and soon dev-tex/hevea.

Signed-off-by: Florian Schmaus  gentoo.org>

 eclass/texlive-common.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/texlive-common.eclass b/eclass/texlive-common.eclass
index 1e5c8a53d5cc..e8a740df1f27 100644
--- a/eclass/texlive-common.eclass
+++ b/eclass/texlive-common.eclass
@@ -179,7 +179,8 @@ etexmf-update() {
if [[ -z ${ROOT} && -x "${EPREFIX}"/usr/sbin/texmf-update ]] ; 
then
"${EPREFIX}"/usr/sbin/texmf-update
local res="${?}"
-   if [[ "${res}" -ne 0 ]] && ver_test -ge 2023; then
+   if [[ "${res}" -ne 0 ]] &&
+  { [[ ${CATEGORY} != dev-texlive ]] || 
ver_test -ge 2023; } then
die -n "texmf-update returned non-zero exit 
status ${res}"
fi
else



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-18 Thread Sam James
commit: a987beb34abf907570d0e199fa062ad8dc929d68
Author: Kyle Elbert  gmail  com>
AuthorDate: Mon Mar 18 12:42:04 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Mar 18 13:02:35 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a987beb3

toolchain.eclass: More selectively enable cet per arch

This block enables the x86_64 specific -fcf-protection during bootstrap.
Added check to ensure its only enabled there.

Bug: https://bugs.gentoo.org/916381
Fixes: b6bf005b843e3d6ee10aa1f088d93c4f89055cc6
Signed-off-by: Kyle Elbert  gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/35816
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 59d51d9c1e38..e962c8181693 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -907,7 +907,7 @@ toolchain_src_configure() {
BUILD_CONFIG_TARGETS+=( bootstrap-lto )
fi
 
-   if tc_version_is_at_least 12 && _tc_use_if_iuse cet ; then
+   if tc_version_is_at_least 12 && _tc_use_if_iuse cet && [[ ${CTARGET} == 
x86_64-*-gnu* ]] ; then
BUILD_CONFIG_TARGETS+=( bootstrap-cet )
fi
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-17 Thread Andreas K. Hüttel
commit: 394aed402f624e26ad0e422fd9ddcaeac8ec3772
Author: Andreas K. Hüttel  gentoo  org>
AuthorDate: Sun Mar 17 09:17:28 2024 +
Commit: Andreas K. Hüttel  gentoo  org>
CommitDate: Sun Mar 17 09:18:17 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=394aed40

toolchain.eclass: Make CET auto-apply x86-64 flags also outside hardened

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

 eclass/toolchain.eclass | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 2acfad8162ac..59d51d9c1e38 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -677,6 +677,11 @@ tc_enable_hardened_gcc() {
hardened_gcc_flags+=" -DDEF_GENTOO_ZNOW"
fi
 
+   if _tc_use_if_iuse cet && [[ ${CTARGET} == *x86_64*-linux-gnu* ]] ; then
+   einfo "Updating gcc to use x86-64 control flow protection by 
default ..."
+   hardened_gcc_flags+=" -DEXTRA_OPTIONS_CF"
+   fi
+
if _tc_use_if_iuse hardened ; then
# Will add some hardened options as default, e.g. for gcc-12
# * -fstack-clash-protection
@@ -688,10 +693,6 @@ tc_enable_hardened_gcc() {
# Add -D_GLIBCXX_ASSERTIONS
hardened_gcc_flags+=" -DDEF_GENTOO_GLIBCXX_ASSERTIONS"
 
-   if _tc_use_if_iuse cet && [[ ${CTARGET} == *x86_64*-linux* ]] ; 
then
-   hardened_gcc_flags+=" -DEXTRA_OPTIONS_CF"
-   fi
-
# Rebrand to make bug reports easier
BRANDING_GCC_PKGVERSION=${BRANDING_GCC_PKGVERSION/Gentoo/Gentoo 
Hardened}
fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-16 Thread Michał Górny
commit: 98e566d20f953bae689a185776da2dd10ec58c13
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Mar 16 16:18:56 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Mar 16 16:25:03 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=98e566d2

llvm.org.eclass: Add 19.0.0_pre20240316 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 2ca04c9091a2..2086d44e7576 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240316)
+   
EGIT_COMMIT=6d3cec01a6c29fa4e51ba129fa13dbf55d2b928e
+   ;;
19.0.0_pre20240309)

EGIT_COMMIT=1c7607e8ee6ec4ca3abce1561dd39a98d4efac96
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-15 Thread Sam James
commit: ced2f28eb782e273f62d34cd4c1aa08408869826
Author: Jeremi Piotrowski  microsoft  com>
AuthorDate: Tue Mar 12 09:35:48 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 16 04:05:10 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ced2f28e

go-env.eclass: Export PKG_CONFIG

Go files may have cgo specifiers that use pkg-config to search for libraries to
link. An example of this is:

// #cgo pkg-config: gpgme

One case where this occurs is when building one of the go deps of
app-containers/podman-4.9.2.

If the ebuild doesn't export the correct PKG_CONFIG, this results in build
failures during cross-compilation. Go will find the host (CBUILD) pkg-config
instead of the CHOST version which performs the lookup in the correct sysroot.

Fix cross-compilation by exporting PKG_CONFIG in go-env_set_compile_environment.

Signed-off-by: Jeremi Piotrowski  microsoft.com>
Closes: https://github.com/gentoo/gentoo/pull/35721
Signed-off-by: Sam James  gentoo.org>

 eclass/go-env.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index 1f950db06930..08cb6380e48a 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -27,7 +27,7 @@ inherit toolchain-funcs
 # (e.g. "emerge-aarch64-cross-linux-gnu foo" run on x86_64 will emerge "foo" 
for x86_64
 #  instead of aarch64)
 go-env_set_compile_environment() {
-   tc-export CC CXX
+   tc-export CC CXX PKG_CONFIG
 
export GOARCH="$(go-env_goarch)"
use arm && export GOARM=$(go-env_goarm)



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-15 Thread Sam James
commit: 486f9fc090b28ad5cc09b39c734ebbfadb81be08
Author: Sam James  gentoo  org>
AuthorDate: Sat Mar 16 04:43:53 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Sat Mar 16 04:43:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=486f9fc0

go-env.eclass: filter LTO temporarily for gcc 14.0.1

14.0.1 won't ever be a released version, just do this as a hack because
gcc has a checking ICE w/ go LTO atm and this prohibits more testing.

Bug: https://bugs.gentoo.org/912152
Bug: https://gcc.gnu.org/PR113204
Signed-off-by: Sam James  gentoo.org>

 eclass/go-env.eclass | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index 08cb6380e48a..baba0d3ee8b3 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: go-env.eclass
@@ -14,7 +14,7 @@
 if [[ -z ${_GO_ENV_ECLASS} ]]; then
 _GO_ENV_ECLASS=1
 
-inherit toolchain-funcs
+inherit flag-o-matic toolchain-funcs
 
 # @FUNCTION: go-env_set_compile_environment
 # @DESCRIPTION:
@@ -33,6 +33,9 @@ go-env_set_compile_environment() {
use arm && export GOARM=$(go-env_goarm)
use x86 && export GO386=$(go-env_go386)
 
+   # XXX: Hack for checking ICE (bug #912152, gcc PR113204)
+   [[ $(gcc-fullversion) == 14.0.1 ]] && filter-lto
+
export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-15 Thread Sam James
commit: 411487da18816c8b04071cbcd31e3ca21549c65c
Author: Eli Schwartz  gmail  com>
AuthorDate: Fri Mar 15 20:32:14 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Mar 15 20:45:24 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=411487da

meson.eclass: crank the minimum meson for python 3.12 support

Contains the all-important commit:
https://github.com/mesonbuild/meson/commit/3c3caf5163e2efdb2bc6a7089a7f4e0c5d058efb

Which was backported from:
https://github.com/mesonbuild/meson/commit/2d6c10908b3771216e7ce086af1ee4dc77e698c2

Needed in order to avoid randomly requiring
dev-python/setuptools[python_targets_python3_12] when
building software with meson that happens to run py.find_installation()
(which cannot even be described as a dev-build/meson dependency, since
meson can target pythons other than the one meson itself uses!)

Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 85f024de1b0c..3240fddf7e86 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -43,7 +43,7 @@ _MESON_ECLASS=1
 
 inherit flag-o-matic multiprocessing ninja-utils python-utils-r1 
toolchain-funcs
 
-BDEPEND=">=dev-build/meson-1.2.1
+BDEPEND=">=dev-build/meson-1.2.3
${NINJA_DEPEND}
dev-build/meson-format-array
 "



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-11 Thread Michał Górny
commit: 920edc504064fa38caa462b4d378114599f65925
Author: Michał Górny  gentoo  org>
AuthorDate: Sun Mar 10 13:51:03 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Tue Mar 12 05:08:04 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=920edc50

distutils-r1.eclass: Set setuptools build config for all backends

Create the build config and set DIST_EXTRA_CONFIG independently
of the PEP517 backend used (but only in PEP517 mode).  This ensures
that our build directory (and parallel build) is respected when backend
values other than `setuptools` are used, particularly standalone build
in dev-python/setuptools, custom backends wrapping setuptools and other
PEP517 that might use setuptools internally.

As an immediate benefit, this stops new versions
of dev-python/setuptools from installing their `build` tree
into site-packages.  Thanks to Eli Schwartz for noticing this
and bringing to our attention.

Signed-off-by: Michał Górny  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/35695
Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 42 +++---
 1 file changed, 19 insertions(+), 23 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index e0c54d81a846..9be994595529 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1505,32 +1505,28 @@ distutils-r1_python_compile() {
 
_python_check_EPYTHON
 
-   case ${DISTUTILS_USE_PEP517:-setuptools} in
-   setuptools)
-   # call setup.py build when using setuptools (either via 
PEP517
-   # or in legacy mode)
-
-   # distutils is parallel-capable since py3.5
-   local jobs=$(makeopts_jobs "${MAKEOPTS} ${*}")
-
-   if [[ ${DISTUTILS_USE_PEP517} ]]; then
-   mkdir -p "${BUILD_DIR}" || die
-   local -x 
DIST_EXTRA_CONFIG="${BUILD_DIR}/extra-setup.cfg"
-   cat > "${DIST_EXTRA_CONFIG}" <<-EOF || die
-   [build]
-   build_base = ${BUILD_DIR}/build
-
-   [build_ext]
-   parallel = ${jobs}
-   EOF
-   else
-   _distutils-r1_copy_egg_info
-   esetup.py build -j "${jobs}" "${@}"
-   fi
-   ;;
+   case ${DISTUTILS_USE_PEP517:-unset} in
no)
return
;;
+   unset)
+   # legacy mode
+   _distutils-r1_copy_egg_info
+   esetup.py build -j "$(makeopts_jobs "${MAKEOPTS} 
${*}")" "${@}"
+   ;;
+   *)
+   # we do this for all build systems, since other backends
+   # and custom hooks may wrap setuptools
+   mkdir -p "${BUILD_DIR}" || die
+   local -x 
DIST_EXTRA_CONFIG="${BUILD_DIR}/extra-setup.cfg"
+   cat > "${DIST_EXTRA_CONFIG}" <<-EOF || die
+   [build]
+   build_base = ${BUILD_DIR}/build
+
+   [build_ext]
+   parallel = $(makeopts_jobs "${MAKEOPTS} ${*}")
+   EOF
+   ;;
esac
 
if [[ ${DISTUTILS_USE_PEP517} ]]; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-11 Thread Mike Gilbert
commit: f51cd5b64c14ddfb83488a12d538c66a4a309376
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sat Mar  9 19:16:26 2024 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Tue Mar 12 00:38:27 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f51cd5b6

linux-info.eclass: improve binpkg handling

When installing a binpkg, Portage will restore the ebuild environment
from when the binpkg was built. The stored values for KV_* may be
different from the values that would be detected on the current system.

To work around this, unset some key variables in
linux-info_get_any_version when MERGE_TYPE == binary.

Also, only look for the running kernel version: we can't possibly need
a full kernel source tree when installing a package that has already
been compiled. This gives a nice speedup as well.

Closes: https://bugs.gentoo.org/926063
Signed-off-by: Mike Gilbert  gentoo.org>

 eclass/linux-info.eclass | 16 +++-
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass
index d0a3c96e6b05..864594f607ca 100644
--- a/eclass/linux-info.eclass
+++ b/eclass/linux-info.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: linux-info.eclass
@@ -696,11 +696,17 @@ linux-info_get_any_version() {
die "${FUNCNAME}() called on non-Linux system, please fix the 
ebuild"
fi
 
-   if ! get_version; then
+   if [[ ${MERGE_TYPE} == binary && -z ${LINUX_INFO_BINARY_RESET} ]]; then
+   unset KV_FULL _LINUX_CONFIG_EXISTS_DONE KV_OUT_DIR
+   LINUX_INFO_BINARY_RESET=1
+   fi
+
+   if [[ ${MERGE_TYPE} != binary ]] && ! get_version; then
ewarn "Unable to calculate Linux Kernel version for build, 
attempting to use running version"
-   if ! get_running_version; then
-   die "Unable to determine any Linux Kernel version, 
please report a bug"
-   fi
+   fi
+
+   if [[ -z ${KV_FULL} ]] && ! get_running_version; then
+   die "Unable to determine any Linux Kernel version, please 
report a bug"
fi
 }
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-11 Thread Mike Gilbert
commit: fa0af68d68dd186767157c5b464d68a5f331efcc
Author: Mike Gilbert  gentoo  org>
AuthorDate: Tue Mar 12 00:29:07 2024 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Tue Mar 12 00:33:42 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa0af68d

toolchain.eclass: handle quoted whitespace in EXTRA_ECONF

Code taken from econf in Portage.

Signed-off-by: Mike Gilbert  gentoo.org>

 eclass/toolchain.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 1cc7000c2377..2acfad8162ac 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1347,7 +1347,8 @@ toolchain_src_configure() {
# killing the 32bit builds which want /usr/lib.
export ac_cv_have_x='have_x=yes ac_x_includes= ac_x_libraries='
 
-   confgcc+=( "$@" ${EXTRA_ECONF} )
+   eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})"
+   confgcc+=( "$@" "${EXTRA_ECONF[@]}" )
 
if ! is_crosscompile && ! tc-is-cross-compiler && [[ -n 
${BUILD_CONFIG_TARGETS} ]] ; then
# e.g. ./configure --with-build-config='bootstrap-lto 
bootstrap-cet'



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-11 Thread Andreas K. Hüttel
commit: b6bf005b843e3d6ee10aa1f088d93c4f89055cc6
Author: Andreas K. Hüttel  gentoo  org>
AuthorDate: Mon Mar 11 23:04:34 2024 +
Commit: Andreas K. Hüttel  gentoo  org>
CommitDate: Mon Mar 11 23:05:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6bf005b

toolchain.eclass: Selectively enable cet options per arch

Bug: https://bugs.gentoo.org/916381
Signed-off-by: Andreas K. Hüttel  gentoo.org>

 eclass/toolchain.eclass | 6 ++
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 5a9749804b99..1cc7000c2377 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1240,10 +1240,8 @@ toolchain_src_configure() {
fi
 
if in_iuse cet ; then
-   confgcc+=(
-   $(use_enable cet)
-   $(use_enable cet standard-branch-protection)
-   )
+   [[ ${CTARGET} == x86_64-*-gnu* ]] && confgcc+=( $(use_enable 
cet) )
+   [[ ${CTARGET} == aarch64-*-gnu* ]] && confgcc+=( $(use_enable 
cet standard-branch-protection) )
fi
 
if in_iuse systemtap ; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-11 Thread Sam James
commit: 30f3ff1918fd6ced807451130fb79c432085470b
Author: Sam James  gentoo  org>
AuthorDate: Mon Mar 11 18:59:31 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Mon Mar 11 19:20:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=30f3ff19

toolchain.eclass: pass --enable-standard-branch-detection if USE=cet

This enables BTI and PAC if supported for arm64. We decided to overload
USE=cet to avoid adding yet-another-USE flag to GCC, given it's the same
thing.

Bug: https://bugs.gentoo.org/916381
Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 05409f0fc3fa..5a9749804b99 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1240,7 +1240,10 @@ toolchain_src_configure() {
fi
 
if in_iuse cet ; then
-   confgcc+=( $(use_enable cet) )
+   confgcc+=(
+   $(use_enable cet)
+   $(use_enable cet standard-branch-protection)
+   )
fi
 
if in_iuse systemtap ; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-10 Thread Miroslav Šulc
commit: ece8a551eed30f9fa366d10f9a1e8d69451eb01c
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Thu Feb 29 06:18:36 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sun Mar 10 21:10:09 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ece8a551

ant-tasks.eclass: @DEPRECATED

all packages which inherit ant-tasks.eclass are PMASKED for removal

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/ant-tasks.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/eclass/ant-tasks.eclass b/eclass/ant-tasks.eclass
index d599238ba253..c1a82ccbab5b 100644
--- a/eclass/ant-tasks.eclass
+++ b/eclass/ant-tasks.eclass
@@ -1,6 +1,7 @@
-# Copyright 2007-2023 Gentoo Authors
+# Copyright 2007-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# @DEPRECATED:
 # @ECLASS: ant-tasks.eclass
 # @MAINTAINER:
 # j...@gentoo.org



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-10 Thread Miroslav Šulc
commit: c8b8fbed07b0046e7251f3253a079a7f961c046a
Author: Volkmar W. Pogatzki  pogatzki  net>
AuthorDate: Mon Feb 26 13:36:03 2024 +
Commit: Miroslav Šulc  gentoo  org>
CommitDate: Sun Mar 10 21:10:05 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8b8fbed

java-ant-2.eclass: change JAVA_ANT_E_DEPEND to dev-java/ant

Also removes unused eclass variable JAVA_ANT_DISABLE_ANT_CORE_DEP which
becomes obsolete by removal of old dev-java/ant-core-1.10.9-r5.

Signed-off-by: Volkmar W. Pogatzki  pogatzki.net>
Signed-off-by: Miroslav Šulc  gentoo.org>

 eclass/java-ant-2.eclass | 14 ++
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/eclass/java-ant-2.eclass b/eclass/java-ant-2.eclass
index 35fe84997563..1eccead3067f 100644
--- a/eclass/java-ant-2.eclass
+++ b/eclass/java-ant-2.eclass
@@ -1,4 +1,4 @@
-# Copyright 2004-2023 Gentoo Authors
+# Copyright 2004-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: java-ant-2.eclass
@@ -48,14 +48,12 @@ inherit java-utils-2 multilib
 #The implementation of dependencies is handled by java-utils-2.eclass
 #WANT_ANT_TASKS
 
-# @ECLASS_VARIABLE: JAVA_ANT_DISABLE_ANT_CORE_DEP
-# @DEFAULT_UNSET
+# @VARIABLE: JAVA_ANT_E_DEPEND
+# @INTERNAL
 # @DESCRIPTION:
-# Setting this variable non-empty before inheriting java-ant-2 disables adding
-# dev-java/ant-core into DEPEND.
-if [[ -z "${JAVA_ANT_DISABLE_ANT_CORE_DEP}" ]]; then
-   JAVA_ANT_E_DEPEND+=" >=dev-java/ant-core-1.8.2:0"
-fi
+# Convenience variable adding packages to DEPEND so they need not be added
+# in the ebuild.
+JAVA_ANT_E_DEPEND+=" >=dev-java/ant-1.10.14-r2:0"
 
 # add ant tasks specified in WANT_ANT_TASKS to DEPEND
 ANT_TASKS_DEPEND="$(java-pkg_ant-tasks-depend)"



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-09 Thread Michał Górny
commit: 1646a3aa80647e3b525f35cbdc2821c81fac3e5b
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Mar  9 15:12:25 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Mar  9 15:51:49 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1646a3aa

llvm.org.eclass: Add 19.0.0_pre20240309 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index c8798e1a2a76..2ca04c9091a2 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240309)
+   
EGIT_COMMIT=1c7607e8ee6ec4ca3abce1561dd39a98d4efac96
+   ;;
19.0.0_pre20240302)

EGIT_COMMIT=597f9761c3a5ba278fa930d2fac13f156287d505
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: 94d7e7e96945ed47e6d3ea6591cf498fd77994b8
Author: Eli Schwartz  gmail  com>
AuthorDate: Thu Jan 18 20:28:31 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:24 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=94d7e7e9

distutils-r1.eclass: wire up meson-python to meson.eclass

The meson-python build backend -- as the name suggests -- uses meson
under the hood. We have a meson eclass which does lots of useful things
pertinent to meson. Make sure it gets invoked, by prying out the options
that meson_src_configure would use and setting passing them as our seed
values for gpep517.

[sam: Tweak '=' style.]
[sam: Tweak mesonargs->MESONARGS for final version of 
e9189344b971f7ee0e2bec36650c57dbade4f122.]
[sam: Update local variable list.]
[mgorny: Add local variables for LTO filtering.]

Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>
Signed-off-by: Michał Górny  gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/35554
Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 16 +++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 134cb39f276a..e0c54d81a846 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -197,6 +197,10 @@ _DISTUTILS_R1_ECLASS=1
 inherit flag-o-matic
 inherit multibuild multilib multiprocessing ninja-utils toolchain-funcs
 
+if [[ ${DISTUTILS_USE_PEP517} == meson-python ]]; then
+   inherit meson
+fi
+
 if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
inherit python-r1
 else
@@ -1386,9 +1390,19 @@ distutils_pep517_install() {
)
;;
meson-python)
+   # variables defined by setup_meson_src_configure
+   local MESONARGS=() BOOST_INCLUDEDIR BOOST_LIBRARYDIR NM 
READELF
+   # it also calls filter-lto
+   local x
+   for x in $(all-flag-vars); do
+   local -x "${x}=${!x}"
+   done
+
+   setup_meson_src_configure "${DISTUTILS_ARGS[@]}"
+
local -x NINJAOPTS=$(get_NINJAOPTS)
config_settings=$(
-   "${EPYTHON}" - "${DISTUTILS_ARGS[@]}" <<-EOF || 
die
+   "${EPYTHON}" - "${MESONARGS[@]}" <<-EOF || die
import json
import os
import shlex



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: 4c1a6b824622ebecbc2b75b93e6b128ab2ce5aab
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Feb 27 19:49:45 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:22 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c1a6b82

distutils-r1.eclass: Make vars local before calling filter-lto

Make LTO filtering local to the compilation code.  This avoids disabling
LTO for non-Python parts of an ebuild.

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 4 
 1 file changed, 4 insertions(+)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index ee1dcef24ff6..134cb39f276a 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1828,6 +1828,10 @@ distutils-r1_run_phase() {
# Rust extensions are incompatible with C/C++ LTO compiler
# see e.g. https://bugs.gentoo.org/910220
if has cargo ${INHERITED}; then
+   local x
+   for x in $(all-flag-vars); do
+   local -x "${x}=${!x}"
+   done
filter-lto
fi
fi



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: 396a5939bfd6cfabca6356811b7e5e04aa4737e4
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Feb 27 12:22:01 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=396a5939

distutils-r1.eclass: Remove -Werror... hack (now in cython)

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 5 -
 1 file changed, 5 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index c0d1992ccce0..fb0c2dfaa693 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1813,11 +1813,6 @@ distutils-r1_run_phase() {
tc-export AR CC CPP CXX
 
if [[ ${DISTUTILS_EXT} ]]; then
-   if [[ ${BDEPEND} == *dev-python/cython* ]] ; then
-   # Workaround for 
https://github.com/cython/cython/issues/2747 (bug #918983)
-   local -x CFLAGS="${CFLAGS} $(test-flags-CC 
-Wno-error=incompatible-pointer-types)"
-   fi
-
local -x CPPFLAGS="${CPPFLAGS} $(usex debug '-UNDEBUG' 
'-DNDEBUG')"
# always generate .c files from .pyx files to ensure we get 
latest
# bug fixes from Cython (this works only when setup.py is using



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: 59c3eabf79595f15b091a64d649ca865441ce05d
Author: Sam James  gentoo  org>
AuthorDate: Sun Mar  3 06:42:38 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=59c3eabf

meson.eclass: move python_export_utf8_locale to meson_src_configure

We don't need it in setup_meson_src_configure as distutils-r1 uses it and
it'll get called twice then.

Signed-off-by: Sam James  gentoo.org>
Signed-off-by: Michał Górny  gentoo.org>

 eclass/meson.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 3bf0ba9ebe97..85f024de1b0c 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -393,9 +393,6 @@ setup_meson_src_configure() {
tc-export NM
tc-getPROG READELF readelf >/dev/null
 
-   # https://bugs.gentoo.org/625396
-   python_export_utf8_locale
-
# https://bugs.gentoo.org/721786
export BOOST_INCLUDEDIR="${BOOST_INCLUDEDIR-${EPREFIX}/usr/include}"
export 
BOOST_LIBRARYDIR="${BOOST_LIBRARYDIR-${EPREFIX}/usr/$(get_libdir)}"
@@ -412,6 +409,9 @@ meson_src_configure() {
 
BUILD_DIR="${BUILD_DIR:-${WORKDIR}/${P}-build}"
 
+   # https://bugs.gentoo.org/625396
+   python_export_utf8_locale
+
(
setup_meson_src_configure "$@"
MESONARGS+=(



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: 035330c42417fb6eeb920565f695877a4b20bdb7
Author: James Le Cuirot  gentoo  org>
AuthorDate: Sat Mar  2 15:20:20 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=035330c4

python-utils-r1.eclass: Fix python_doheader install location with ROOT

python_get_includedir is prefixed with ESYSROOT, not EPREFIX, so we need
to strip off the former, not the latter.

This is currently only used for dev-python/pillow, which I have tested.

Signed-off-by: James Le Cuirot  gentoo.org>
Signed-off-by: Michał Górny  gentoo.org>

 eclass/python-utils-r1.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 3af3cbdb075e..caa39813feec 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -884,7 +884,7 @@ python_doheader() {
[[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is 
null).'
 
local includedir=$(python_get_includedir)
-   local d=${includedir#${EPREFIX}}
+   local d=${includedir#${ESYSROOT}}
 
(
insopts -m 0644



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: 2fd092b4457fae45cf155a1a0e2cad00ca112851
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Feb 27 19:43:11 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:21 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2fd092b4

distutils-r1.eclass: Move filter-lto into DISTUTILS_EXT block

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 60554944a5a0..ee1dcef24ff6 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1824,17 +1824,17 @@ distutils-r1_run_phase() {
# bug fixes from Cython (this works only when setup.py is using
# cythonize() but it's better than nothing)
local -x CYTHON_FORCE_REGEN=1
+
+   # Rust extensions are incompatible with C/C++ LTO compiler
+   # see e.g. https://bugs.gentoo.org/910220
+   if has cargo ${INHERITED}; then
+   filter-lto
+   fi
fi
 
# silence warnings when pydevd is loaded on Python 3.11+
local -x PYDEVD_DISABLE_FILE_VALIDATION=1
 
-   # Rust extensions are incompatible with C/C++ LTO compiler
-   # see e.g. https://bugs.gentoo.org/910220
-   if has cargo ${INHERITED}; then
-   filter-lto
-   fi
-
# How to build Python modules in different worlds...
local ldopts
case "${CHOST}" in



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Michał Górny
commit: bd8fbec80e9217a717f70621fdd6989a9d758466
Author: Michał Górny  gentoo  org>
AuthorDate: Tue Feb 27 19:37:25 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Fri Mar  8 05:40:20 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd8fbec8

distutils-r1.eclass: Limit DISTUTILS_EXT logic to compile & test

Perform the environment modifications specific to DISTUTILS_EXT
to python_compile and python_test phases.  These are the only phases
where we expect extension builds to be called.  This allows us to
limit the scope of localized CPPFLAGS, as we both want to avoid leaking
changes to non-Python parts of the build and let ebuilds to manipulate
flags at their leisure, particularly prior to python_compile.

Signed-off-by: Michał Górny  gentoo.org>

 eclass/distutils-r1.eclass | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index fb0c2dfaa693..60554944a5a0 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -1812,7 +1812,13 @@ distutils-r1_run_phase() {
local -x AR=${AR} CC=${CC} CPP=${CPP} CXX=${CXX}
tc-export AR CC CPP CXX
 
-   if [[ ${DISTUTILS_EXT} ]]; then
+   # Perform additional environment modifications only for python_compile
+   # phase.  This is the only phase where we expect to be calling the 
Python
+   # build system.  We want to localize the altered variables to avoid them
+   # leaking to other parts of multi-language ebuilds.  However, we want
+   # to avoid localizing them in other phases, particularly
+   # python_configure_all, where the ebuild may wish to alter them 
globally.
+   if [[ ${DISTUTILS_EXT} && ( ${1} == *compile* || ${1} == *test* ) ]]; 
then
local -x CPPFLAGS="${CPPFLAGS} $(usex debug '-UNDEBUG' 
'-DNDEBUG')"
# always generate .c files from .pyx files to ensure we get 
latest
# bug fixes from Cython (this works only when setup.py is using



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-07 Thread Sam James
commit: 015591c4c4c085390dc4cf1344a6efa26fb55bd3
Author: Sam James  gentoo  org>
AuthorDate: Thu Mar  7 17:59:44 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Thu Mar  7 17:59:44 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=015591c4

toolchain.eclass: enable LTO for libgccjit build

Note that this is just about LTO support, not building it with LTO.

See https://inbox.sourceware.org/jit/dd6f69da-757b-49ba-864a-377a8dc393cf  
zoho.com/T/#t.

Signed-off-by: Sam James  gentoo.org>

 eclass/toolchain.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index fef38790922c..05409f0fc3fa 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1383,6 +1383,7 @@ toolchain_src_configure() {
local confgcc_jit=(
"${confgcc[@]}"
 
+   --enable-lto
--disable-analyzer
--disable-bootstrap
--disable-cet
@@ -1398,7 +1399,6 @@ toolchain_src_configure() {
--disable-libssp
--disable-libstdcxx-pch
--disable-libvtv
-   --disable-lto
--disable-nls
--disable-objc-gc
--disable-systemtap



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-06 Thread Michał Górny
commit: 49b8d94ff9b1ff104284a49e0250a919dfdf04db
Author: Michał Górny  gentoo  org>
AuthorDate: Wed Mar  6 16:31:20 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Wed Mar  6 17:03:19 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49b8d94f

llvm.org.eclass: Enable prebuilt manpages for LLVM 18

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 04ed226cde9f..c8798e1a2a76 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -282,6 +282,9 @@ llvm.org_set_globals() {
17*)

LLVM_MANPAGE_DIST="llvm-17.0.1-manpages.tar.bz2"
;;
+   18*)
+   
LLVM_MANPAGE_DIST="llvm-18.1.0-manpages.tar.bz2"
+   ;;
esac
fi
 



[gentoo-commits] repo/gentoo:master commit in: eclass/, kde-apps/ffmpegthumbs/

2024-03-03 Thread Andreas Sturmlechner
commit: 2573ccfcb99d806e5af2e8b50b3af02fe12e2ffe
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Sun Mar  3 18:04:06 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Sun Mar  3 18:11:55 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2573ccfc

kde-apps/ffmpegthumbs: Switch 24.02.0 to KF6

After inquiring upstream again.

Closes: https://bugs.gentoo.org/925870
Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/gear.kde.org.eclass   |  1 +
 ...mbs-24.02.0.ebuild => ffmpegthumbs-24.02.0-r1.ebuild} | 16 
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/eclass/gear.kde.org.eclass b/eclass/gear.kde.org.eclass
index e582a5add5bc..f3a3c56369ad 100644
--- a/eclass/gear.kde.org.eclass
+++ b/eclass/gear.kde.org.eclass
@@ -94,6 +94,7 @@ if $(ver_test -gt 24.01.75); then
dragon | \
elisa | \
eventviews | \
+   ffmpegthumbs | \
filelight | \
granatier | \
grantlee-editor | \

diff --git a/kde-apps/ffmpegthumbs/ffmpegthumbs-24.02.0.ebuild 
b/kde-apps/ffmpegthumbs/ffmpegthumbs-24.02.0-r1.ebuild
similarity index 58%
rename from kde-apps/ffmpegthumbs/ffmpegthumbs-24.02.0.ebuild
rename to kde-apps/ffmpegthumbs/ffmpegthumbs-24.02.0-r1.ebuild
index a2eac54e2eb2..cc077320285e 100644
--- a/kde-apps/ffmpegthumbs/ffmpegthumbs-24.02.0.ebuild
+++ b/kde-apps/ffmpegthumbs/ffmpegthumbs-24.02.0-r1.ebuild
@@ -3,25 +3,25 @@
 
 EAPI=8
 
-KFMIN=5.113.0
-QTMIN=5.15.9
+KFMIN=6.0.0
+QTMIN=6.6.2
 inherit ecm gear.kde.org
 
 DESCRIPTION="FFmpeg based thumbnail generator for video files"
 
 LICENSE="GPL-2+"
-SLOT="5"
-KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+SLOT="6"
+KEYWORDS="~amd64"
 IUSE=""
 
 DEPEND="
-   >=dev-qt/qtgui-${QTMIN}:5
-   >=kde-frameworks/kconfig-${KFMIN}:5
-   >=kde-frameworks/kio-${KFMIN}:5
+   >=dev-qt/qtbase-${QTMIN}:6[gui]
+   >=kde-frameworks/kconfig-${KFMIN}:6
+   >=kde-frameworks/kio-${KFMIN}:6
media-video/ffmpeg:0=
 "
 RDEPEND="${DEPEND}"
 BDEPEND="
-   >=kde-frameworks/kcoreaddons-${KFMIN}:5
+   >=kde-frameworks/kcoreaddons-${KFMIN}:6
virtual/pkgconfig
 "



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-02 Thread Michał Górny
commit: 551c16475257c1b1597b125bac98c97b6ea13e89
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Mar  2 11:52:40 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Mar  2 13:24:27 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=551c1647

llvm.org.eclass: Add 19.0.0_pre20240302 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 515d8adf3af2..fc278f21092d 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240302)
+   
EGIT_COMMIT=597f9761c3a5ba278fa930d2fac13f156287d505
+   ;;
19.0.0_pre20240224)

EGIT_COMMIT=60a904b2ad9842b93cc5fa0ad5bda5e22c550b7e
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-01 Thread Sam James
commit: f2e1792ded67e62edc85e92e84f65d773a8f05bd
Author: Eli Schwartz  gmail  com>
AuthorDate: Fri Mar  1 20:47:45 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Mar  1 20:50:31 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f2e1792d

meson.eclass: fix setting BUILD_DIR after the lto refactor

BUILD_DIR is an eclass variable and should be publicly, globally set.

Closes: https://bugs.gentoo.org/925939
Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 9e877be53309..3bf0ba9ebe97 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -374,8 +374,6 @@ setup_meson_src_configure() {
MESONARGS+=( --cross-file "$(_meson_create_cross_file)" )
fi
 
-   BUILD_DIR="${BUILD_DIR:-${WORKDIR}/${P}-build}"
-
# Handle quoted whitespace
eval "local -a MYMESONARGS=( ${MYMESONARGS} )"
 
@@ -412,6 +410,8 @@ meson_src_configure() {
 
[[ -n "${NINJA_DEPEND}" ]] || ewarn "Unknown value '${NINJA}' for 
\${NINJA}"
 
+   BUILD_DIR="${BUILD_DIR:-${WORKDIR}/${P}-build}"
+
(
setup_meson_src_configure "$@"
MESONARGS+=(



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-01 Thread Sam James
commit: 5e7b32c59d53f8240dfd7a17e31fc533fa811f75
Author: Eli Schwartz  gmail  com>
AuthorDate: Tue Jan 16 05:43:58 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Mar  1 19:25:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e7b32c5

meson.eclass: wire up LTO support directly into the meson options

meson's builtin LTO support allows meson to introspect whether LTO is
enabled and do some fancy things, such as forcing LTO off for a single
target that is known to be special(ly bad) and not support LTO.

Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 40 +++-
 1 file changed, 35 insertions(+), 5 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index 629bf3be4f2e..b24bb40eb0a0 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -41,7 +41,7 @@ esac
 if [[ -z ${_MESON_ECLASS} ]]; then
 _MESON_ECLASS=1
 
-inherit multiprocessing ninja-utils python-utils-r1 toolchain-funcs
+inherit flag-o-matic multiprocessing ninja-utils python-utils-r1 
toolchain-funcs
 
 BDEPEND=">=dev-build/meson-1.2.1
${NINJA_DEPEND}
@@ -283,6 +283,38 @@ meson_feature() {
 # variables. Invoke via "${MESONARGS[@]}" in the calling environment.
 # This function is called from meson_src_configure.
 setup_meson_src_configure() {
+   MESONARGS=()
+   if tc-is-lto; then
+   # We want to connect -flto in *FLAGS to the dedicated meson 
option,
+   # to ensure that meson has visibility into what the user set. 
Although
+   # it is unlikely projects will check `get_option('b_lto')` and 
change
+   # their behavior, individual targets which are broken with LTO 
can
+   # disable it per target. Injecting via *FLAGS means that meson 
cannot
+   # strip -flto from that target.
+   MESONARGS+=( -Db_lto=true )
+
+   # respect -flto value, e.g. -flto=8, -flto=thin
+   local v=$(get-flag flto)
+   case ${v} in
+   thin)
+   MESONARGS+=( -Db_lto_mode=thin )
+   ;;
+   ''|*[!0-9]*)
+   ;;
+   *)
+   MESONARGS+=( -Db_lto_threads=${v} )
+   ;;
+   esac
+   # finally, remove it from *FLAGS to avoid passing it:
+   # - twice, with potentially different values
+   # - on excluded targets
+   filter-lto
+   else
+   # Prevent projects from enabling LTO by default.  In Gentoo, 
LTO is
+   # enabled via setting *FLAGS appropriately.
+   MESONARGS+=( -Db_lto=false )
+   fi
+
local BUILD_CFLAGS=${BUILD_CFLAGS}
local BUILD_CPPFLAGS=${BUILD_CPPFLAGS}
local BUILD_CXXFLAGS=${BUILD_CXXFLAGS}
@@ -311,7 +343,7 @@ setup_meson_src_configure() {
: "${BUILD_PKG_CONFIG_PATH:=${PKG_CONFIG_PATH}}"
fi
 
-   MESONARGS=(
+   MESONARGS+=(
--libdir "$(get_libdir)"
--localstatedir "${EPREFIX}/var/lib"
--prefix "${EPREFIX}/usr"
@@ -331,9 +363,7 @@ setup_meson_src_configure() {
# an upstream development matter. bug #754279.
-Dwerror=false
 
-   # Prevent projects from enabling LTO by default.  In Gentoo, 
LTO is
-   # enabled via setting *FLAGS appropriately.
-   -Db_lto=false
+   "${ltoflags[@]}"
)
 
if [[ -n ${EMESON_BUILDTYPE} ]]; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-01 Thread Sam James
commit: b95ea11330e446d0deb89ca7d78356cb2a7d0d06
Author: Eli Schwartz  gmail  com>
AuthorDate: Tue Feb 20 05:39:51 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Mar  1 19:25:17 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b95ea113

meson.eclass: prefer -D buildtype instead of --buildtype

Because that is the logic which meson-python hardcodes, and meson needs
to match calling convention.

Signed-off-by: Eli Schwartz  gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/35528
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index b24bb40eb0a0..9e877be53309 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -367,7 +367,7 @@ setup_meson_src_configure() {
)
 
if [[ -n ${EMESON_BUILDTYPE} ]]; then
-   MESONARGS+=( --buildtype "${EMESON_BUILDTYPE}" )
+   MESONARGS+=( -Dbuildtype="${EMESON_BUILDTYPE}" )
fi
 
if tc-is-cross-compiler; then



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-03-01 Thread Sam James
commit: e9189344b971f7ee0e2bec36650c57dbade4f122
Author: Eli Schwartz  gmail  com>
AuthorDate: Tue Feb 20 05:53:34 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Fri Mar  1 19:25:16 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9189344

meson.eclass: refactor src_configure into a setter function

This is necessary in order to get at the implementation of `meson setup`
from other eclasses, which do not simply call meson_src_configure. The
intended use case is distutils-r1, where a python build backend wraps
meson and needs its arguments while calling meson on its own.

This allows distutils-r1 to invoke `setup_meson_src_configure` followed
by gpep517, and get access to:
- the preparation which needs to be done, including setting up the
  environment
- the array of setup arguments

Signed-off-by: Eli Schwartz  gmail.com>
Signed-off-by: Sam James  gentoo.org>

 eclass/meson.eclass | 55 +++--
 1 file changed, 32 insertions(+), 23 deletions(-)

diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index d8bd93082ea5..629bf3be4f2e 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -277,15 +277,12 @@ meson_feature() {
usex "$1" "-D${2-$1}=enabled" "-D${2-$1}=disabled"
 }
 
-# @FUNCTION: meson_src_configure
-# @USAGE: [extra meson arguments]
+# @FUNCTION: setup_meson_src_configure
 # @DESCRIPTION:
-# This is the meson_src_configure function.
-meson_src_configure() {
-   debug-print-function ${FUNCNAME} "$@"
-
-   [[ -n "${NINJA_DEPEND}" ]] || ewarn "Unknown value '${NINJA}' for 
\${NINJA}"
-
+# Calculate the command line which meson should use, and other relevant
+# variables. Invoke via "${MESONARGS[@]}" in the calling environment.
+# This function is called from meson_src_configure.
+setup_meson_src_configure() {
local BUILD_CFLAGS=${BUILD_CFLAGS}
local BUILD_CPPFLAGS=${BUILD_CPPFLAGS}
local BUILD_CXXFLAGS=${BUILD_CXXFLAGS}
@@ -314,8 +311,7 @@ meson_src_configure() {
: "${BUILD_PKG_CONFIG_PATH:=${PKG_CONFIG_PATH}}"
fi
 
-   local mesonargs=(
-   meson setup
+   MESONARGS=(
--libdir "$(get_libdir)"
--localstatedir "${EPREFIX}/var/lib"
--prefix "${EPREFIX}/usr"
@@ -341,11 +337,11 @@ meson_src_configure() {
)
 
if [[ -n ${EMESON_BUILDTYPE} ]]; then
-   mesonargs+=( --buildtype "${EMESON_BUILDTYPE}" )
+   MESONARGS+=( --buildtype "${EMESON_BUILDTYPE}" )
fi
 
if tc-is-cross-compiler; then
-   mesonargs+=( --cross-file "$(_meson_create_cross_file)" )
+   MESONARGS+=( --cross-file "$(_meson_create_cross_file)" )
fi
 
BUILD_DIR="${BUILD_DIR:-${WORKDIR}/${P}-build}"
@@ -353,7 +349,7 @@ meson_src_configure() {
# Handle quoted whitespace
eval "local -a MYMESONARGS=( ${MYMESONARGS} )"
 
-   mesonargs+=(
+   MESONARGS+=(
# Arguments from ebuild
"${emesonargs[@]}"
 
@@ -362,12 +358,6 @@ meson_src_configure() {
 
# Arguments from user
"${MYMESONARGS[@]}"
-
-   # Source directory
-   "${EMESON_SOURCE:-${S}}"
-
-   # Build directory
-   "${BUILD_DIR}"
)
 
# Used by symbolextractor.py
@@ -379,13 +369,32 @@ meson_src_configure() {
python_export_utf8_locale
 
# https://bugs.gentoo.org/721786
-   local -x BOOST_INCLUDEDIR="${BOOST_INCLUDEDIR-${EPREFIX}/usr/include}"
-   local -x 
BOOST_LIBRARYDIR="${BOOST_LIBRARYDIR-${EPREFIX}/usr/$(get_libdir)}"
+   export BOOST_INCLUDEDIR="${BOOST_INCLUDEDIR-${EPREFIX}/usr/include}"
+   export 
BOOST_LIBRARYDIR="${BOOST_LIBRARYDIR-${EPREFIX}/usr/$(get_libdir)}"
+}
+
+# @FUNCTION: meson_src_configure
+# @USAGE: [extra meson arguments]
+# @DESCRIPTION:
+# This is the meson_src_configure function.
+meson_src_configure() {
+   debug-print-function ${FUNCNAME} "$@"
+
+   [[ -n "${NINJA_DEPEND}" ]] || ewarn "Unknown value '${NINJA}' for 
\${NINJA}"
 
(
+   setup_meson_src_configure "$@"
+   MESONARGS+=(
+   # Source directory
+   "${EMESON_SOURCE:-${S}}"
+
+   # Build directory
+   "${BUILD_DIR}"
+   )
+
export -n {C,CPP,CXX,F,OBJC,OBJCXX,LD}FLAGS 
PKG_CONFIG_{LIBDIR,PATH}
-   echo "${mesonargs[@]}" >&2
-   "${mesonargs[@]}"
+   echo meson setup "${MESONARGS[@]}" >&2
+   meson setup "${MESONARGS[@]}"
) || die
 }
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-02-28 Thread Michał Górny
commit: 570e064dbe098d9c0ed4c7fd3aba8a0b4a8e9935
Author: Michał Górny  gentoo  org>
AuthorDate: Wed Feb 28 20:09:24 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Wed Feb 28 20:40:23 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=570e064d

llvm.org.eclass: Remove old snapshot support

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 6 --
 1 file changed, 6 deletions(-)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index 5dec284fe366..515d8adf3af2 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -75,12 +75,6 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
19.0.0_pre20240224)

EGIT_COMMIT=60a904b2ad9842b93cc5fa0ad5bda5e22c550b7e
;;
-   19.0.0_pre20240218)
-   
EGIT_COMMIT=3496927edcd0685807351ba88a7e2cfb006e1c0d
-   ;;
-   19.0.0_pre20240210)
-   
EGIT_COMMIT=8884ba43a8485bebef5c4d41e7ed457e3fa84f07
-   ;;
*)
die "Unknown snapshot: ${PV}"
;;



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-02-28 Thread Andreas Sturmlechner
commit: bebb49106db4996395c8a01a957f2daadf1a91cd
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Tue Feb 27 13:54:59 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Wed Feb 28 13:53:40 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bebb4910

frameworks.kde.org.eclass: Unsupport unstable release SRC_URIs

Will not appear again until KF7.

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/frameworks.kde.org.eclass | 10 ++
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/eclass/frameworks.kde.org.eclass b/eclass/frameworks.kde.org.eclass
index 19db30352fee..53811e339976 100644
--- a/eclass/frameworks.kde.org.eclass
+++ b/eclass/frameworks.kde.org.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: frameworks.kde.org.eclass
@@ -69,13 +69,7 @@ case ${KDE_BUILD_TYPE} in
;;
*)
if [[ -z ${KDE_ORG_COMMIT} ]]; then
-   case ${PV} in
-   5.2[4-9]?.? )
-   
_KDE_SRC_URI+="unstable/frameworks/$(ver_cut 1-3)/"
-   RESTRICT+=" mirror"
-   ;;
-   *) _KDE_SRC_URI+="stable/frameworks/$(ver_cut 
1-2)/" ;;
-   esac
+   _KDE_SRC_URI+="stable/frameworks/$(ver_cut 1-2)/"
case ${KDE_ORG_NAME} in
kdelibs4support | \
kdesignerplugin | \



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-02-28 Thread Andreas Sturmlechner
commit: 853e413a3e89272a5828a6259d017e42df5ec857
Author: Andreas Sturmlechner  gentoo  org>
AuthorDate: Tue Feb 27 13:56:20 2024 +
Commit: Andreas Sturmlechner  gentoo  org>
CommitDate: Wed Feb 28 13:53:40 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=853e413a

plasma.kde.org.eclass: Unsupport versioning scheme of Plasma 6 Betas

Won't appear again until Plasma 7.

This reverts commit fcf516962acde10c69640181257600254f3dd752.

Signed-off-by: Andreas Sturmlechner  gentoo.org>

 eclass/plasma.kde.org.eclass | 4 
 1 file changed, 4 deletions(-)

diff --git a/eclass/plasma.kde.org.eclass b/eclass/plasma.kde.org.eclass
index 69f38cb526cc..491f1fcecc8c 100644
--- a/eclass/plasma.kde.org.eclass
+++ b/eclass/plasma.kde.org.eclass
@@ -67,10 +67,6 @@ elif [[ -z ${KDE_ORG_COMMIT} ]]; then
_KDE_SRC_URI+="unstable/plasma/$(ver_cut 1-3)/"
RESTRICT+=" mirror"
;;
-   5.9?.[0-9]* )
-   _KDE_SRC_URI+="unstable/plasma/$(ver_cut 1-2).0/"
-   RESTRICT+=" mirror"
-   ;;
*) _KDE_SRC_URI+="stable/plasma/$(ver_cut 1-3)/" ;;
esac
 



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-02-27 Thread Sam James
commit: 04f3a1147f65b5bb090710cdf098d392c6f2ad51
Author: Sam James  gentoo  org>
AuthorDate: Tue Feb 27 23:52:55 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Feb 27 23:52:55 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04f3a114

go-module.eclass: fix whitespace

Signed-off-by: Sam James  gentoo.org>

 eclass/go-module.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/go-module.eclass b/eclass/go-module.eclass
index 5726d2f77d9a..2179b8e93732 100644
--- a/eclass/go-module.eclass
+++ b/eclass/go-module.eclass
@@ -14,7 +14,7 @@
 # written in the go programming language that uses modules.
 # If the software you are packaging has a file named go.mod in its top level
 # directory, it uses modules.
-# 
+#
 # Modules have been the preferred method of tracking dependencies in software
 # written in Go since version 1.16,
 # so if the software isn't using modules, it should be updated.



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-02-27 Thread Sam James
commit: 0e651d4b8db7082279b5e110c41abb2bc5293eba
Author: Sam James  gentoo  org>
AuthorDate: Tue Feb 27 23:53:31 2024 +
Commit: Sam James  gentoo  org>
CommitDate: Tue Feb 27 23:53:31 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e651d4b

go-module.eclass: update dev-go/golicense -> dev-go/lichen

As mentioned in the bug, the eclassdoc was stale and mentioned the old
and now-removed dev-go/golicense. Suggest dev-go/lichen instead.

Bug: https://bugs.gentoo.org/913755
Signed-off-by: Sam James  gentoo.org>

 eclass/go-module.eclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/eclass/go-module.eclass b/eclass/go-module.eclass
index 2179b8e93732..cad63ee6d0f0 100644
--- a/eclass/go-module.eclass
+++ b/eclass/go-module.eclass
@@ -45,7 +45,7 @@
 # Since Go programs are statically linked, it is important that your ebuild's
 # LICENSE= setting includes the licenses of all statically linked
 # dependencies. So please make sure it is accurate.
-# You can use a utility like dev-go/golicense (network connectivity is
+# You can use a utility like dev-go/lichen (network connectivity is
 # required) to extract this information from the compiled binary.
 #
 # @EXAMPLE:



[gentoo-commits] repo/gentoo:master commit in: eclass/

2024-02-24 Thread Michał Górny
commit: 6caf2e1d0ef6bf055be7569eb300fa9bd0f7ef63
Author: Michał Górny  gentoo  org>
AuthorDate: Sat Feb 24 14:52:53 2024 +
Commit: Michał Górny  gentoo  org>
CommitDate: Sat Feb 24 14:52:53 2024 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6caf2e1d

llvm.org.eclass: Add 19.0.0_pre20240224 snapshot

Signed-off-by: Michał Górny  gentoo.org>

 eclass/llvm.org.eclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/eclass/llvm.org.eclass b/eclass/llvm.org.eclass
index de07fecea8e1..5dec284fe366 100644
--- a/eclass/llvm.org.eclass
+++ b/eclass/llvm.org.eclass
@@ -72,6 +72,9 @@ if [[ -z ${_LLVM_SOURCE_TYPE+1} ]]; then
_LLVM_SOURCE_TYPE=snapshot
 
case ${PV} in
+   19.0.0_pre20240224)
+   
EGIT_COMMIT=60a904b2ad9842b93cc5fa0ad5bda5e22c550b7e
+   ;;
19.0.0_pre20240218)

EGIT_COMMIT=3496927edcd0685807351ba88a7e2cfb006e1c0d
;;



  1   2   3   4   5   6   7   8   9   10   >