Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: "Michał Górny" <mgorny@g.o>
Subject: [gentoo-dev] [PATCH autotools-utils] Deprecate automagic $(use_enable static-libs static).
Date: Sun, 18 Sep 2011 21:18:38
Message-Id: 1316380797-7076-1-git-send-email-mgorny@gentoo.org
In Reply to: [gentoo-dev] Please don't use IUSE=static-libs unless really necessary by "Michał Górny"
---
 eclass/autotools-utils.eclass |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/eclass/autotools-utils.eclass b/eclass/autotools-utils.eclass
index 76ad6fc..489efd9 100644
--- a/eclass/autotools-utils.eclass
+++ b/eclass/autotools-utils.eclass
@@ -28,7 +28,7 @@
 # LICENSE="LGPL-2.1"
 # KEYWORDS=""
 # SLOT="0"
-# IUSE="debug doc examples qt4 static-libs tiff"
+# IUSE="debug doc examples qt4 tiff"
 #
 # CDEPEND="
 # 	media-libs/libpng:0
@@ -220,9 +220,6 @@ autotools-utils_src_prepare() {
 # directory and runs econf there. Configuration parameters defined
 # in myeconfargs are passed here to econf. Additionally following USE
 # flags are known:
-#
-# IUSE="static-libs" passes --enable-shared and either --disable-static/--enable-static
-# to econf respectively.
 autotools-utils_src_configure() {
 	debug-print-function ${FUNCNAME} "$@"
 
@@ -244,10 +241,21 @@ autotools-utils_src_configure() {
 
 	# Handle static-libs found in IUSE, disable them by default
 	if has static-libs ${IUSE//+}; then
-		econfargs+=(
-			--enable-shared
-			$(use_enable static-libs static)
-		)
+		local staticarg=$(use_enable static-libs static)
+		if ! has "${staticarg}" "${myeconfargs[@]}"; then
+			eqawarn 'Implicit $(use_enable static-libs static) for IUSE="static-libs"'
+			eqawarn 'is no longer supported. Please add the necessary args to myeconfargs'
+			eqawarn 'if requested or simply drop IUSE=static-libs if unnecessary.'
+			eqawarn
+			eqawarn 'For details, please see:'
+			eqawarn 'http://archives.gentoo.org/gentoo-dev/msg_f67ae0e7733869ef7cc35dd8542871d4.xml';
+			eqawarn 'The autotools-utils eclass will stop supporting this on Nov 1st.'
+
+			econfargs+=(
+				--enable-shared
+				$(use_enable static-libs static)
+			)
+		fi
 	fi
 
 	# Append user args
-- 
1.7.6.1