[PATCH 5/6] ecm.eclass: Disable unwanted CMake options (ENABLE_PCH, WARNINGS_AS_ERRORS)

Andreas Sturmlechner <[email protected]> Sat, 06 Jun 2026 00:59:08 +0200
Newsgroups gmane.linux.gentoo.devel
Message-ID <[email protected]>
Courtesy of PIM, but the list may grow larger over time ...

Signed-off-by: Andreas Sturmlechner <[email protected]>
---
 eclass/ecm.eclass | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/eclass/ecm.eclass b/eclass/ecm.eclass
index 1580322237b3..d31700de8ff1 100644
--- a/eclass/ecm.eclass
+++ b/eclass/ecm.eclass
@@ -314,6 +314,18 @@ _ecm_buildqch_optional() {
 	fi
 }
 
+# @FUNCTION: _ecm_disable_unwanted
+# @DESCRIPTION:
+# Disable unwanted CMake options if they are present.
+_ecm_disable_unwanted() {
+	if grep -Eq "option.*ENABLE_PCH" CMakeLists.txt; then
+		echo "-DENABLE_PCH=OFF"
+	fi
+	if grep -Eq "option.*WARNINGS_AS_ERRORS" CMakeLists.txt; then
+		echo "-DWARNINGS_AS_ERRORS=OFF"
+	fi
+}
+
 # @FUNCTION: _ecm_strip_handbook_translations
 # @INTERNAL
 # @DESCRIPTION:
@@ -579,6 +591,11 @@ ecm_src_configure() {
 		cmakeargs+=( $(_ecm_buildqch_optional) )
 	fi
 
+	# disable upstream CMake settings ... currently mostly PIM
+	if [[ -n ${_GEAR_KDE_ORG_ECLASS} ]]; then
+		cmakeargs+=( $(_ecm_disable_unwanted) )
+	fi
+
 	if in_iuse designer && [[ ${ECM_DESIGNERPLUGIN} = true ]]; then
 		cmakeargs+=( -DBUILD_DESIGNERPLUGIN=$(usex designer) )
 	fi
-- 
2.54.0
signature.asc (application/pgp-signature, 829 B)
-----BEGIN PGP SIGNATURE-----

iQIvBAABCgCZFiEE34gXUSooizdYNDu3S5FW4z0PgBkFAmojVLwbFIAAAAAABAAO
bWFudTIsMi41KzEuMTIsMiwyXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25z
Lm9wZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRERjg4MTc1MTJBMjg4QjM3NTgzNDNC
Qjc0QjkxNTZFMzNEMEY4MDE5AAoJEEuRVuM9D4AZGdIL/i9ZqHKN6qmdxBjJlzHg
UD/77EDggL1UsKVo/maKs5vGFlwutURIE9ebfOiLlwrsOccovq89R3hQ9w4/66DC
7fiOaaAeO1Ca5VOn1gZpw3BFprn1moSPinxM4h3dEAhbrAvfcrt0vnLHGeAqzeKZ
RNM368uI6/Wiv5ZHKNo53tuF6hkW8VVlnfOY1js2i9wzqSybqSatheUCxvva2Glk
mQKjU0uhnnsLGw6tmFc44ikoIVkp2iWcmegmgxFZ8AlIJpNDRsqEwm/W+Z+qQD8X
wReDLHOQWfWOImTiMWr2YMLyO6ltT6t/fOnf71QINm0c+dEvxv7vWFjwNZgkqpSg
Vaww38NevCGNe/y3lgMmfFmeEnmj3Eo7Jb30UMsLLta10wWf+VJEnubRYD6qBepx
nH2MT44lBK2qB2VGHty3qQM064QROlBJzCcw8hxHKzHUi2MoKX/f1zAotPT8zC9x
AxHrS0U4ODWsQdTCwh5nWdyySzxbTpCQpPaHmGZDJR1QKA==
=QWFU
-----END PGP SIGNATURE-----