[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-commits
Subject:    [gentoo-commits] proj/portage:master commit in: bin/, /
From:       "Sam James" <sam () gentoo ! org>
Date:       2022-11-30 22:29:05
Message-ID: 1669847338.669b3d757cd287e193c04f910b5ebc8b74ad35b7.sam () gentoo
[Download RAW message or body]

commit:     669b3d757cd287e193c04f910b5ebc8b74ad35b7
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 30 11:24:49 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 30 22:28:58 2022 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=669b3d75

Make EAPI 8 `--disable-static` logic libtool-specific

* The intention has always been to only target `configure` scripts that use
  libtool, not just any script with a `--disable-static*` option.

* libtool has been using the same `configure` format for at least
  the past 15 years (going back to libtool 1.5.22):

  1. shared and static libraries enabled (the main use case):
       --enable-shared[=PKGS]  build shared libraries [default=yes]
       --enable-static[=PKGS]  build static libraries [default=yes]

  2. shared libraries enabled and static libraries disabled:
       --enable-static[=PKGS]  build static libraries [default=no]
       --enable-shared[=PKGS]  build shared libraries [default=yes]

  3. shared libraries disabled and static libraries enabled:
       --enable-shared[=PKGS]  build shared libraries [default=no]
       --enable-static[=PKGS]  build static libraries [default=yes]

Bug: https://bugs.gentoo.org/814380
Signed-off-by: David Seifert <soap <AT> gentoo.org>
Closes: https://github.com/gentoo/portage/pull/936
Signed-off-by: Sam James <sam <AT> gentoo.org>

 NEWS                 | 4 ++++
 bin/phase-helpers.sh | 4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/NEWS b/NEWS
index 57d9c92ee..923b95a43 100644
--- a/NEWS
+++ b/NEWS
@@ -49,6 +49,10 @@ Bug fixes:
 * env-update: Also generate PATH definition in systemd user environment file
   /etc/environment.d/10-gentoo-env.conf
 
+* --disable-static is only passed for libtool-enabled configure scripts in EAPI 8.
+  This avoids annoying warnings when a configure script has a flag such as
+  --disable-static_link that would then trigger a QA warning (bug #814380).
+
 portage-3.0.39 (2022-11-20)
 --------------
 

diff --git a/bin/phase-helpers.sh b/bin/phase-helpers.sh
index 2217e5a0b..a0fe599fd 100644
--- a/bin/phase-helpers.sh
+++ b/bin/phase-helpers.sh
@@ -655,8 +655,8 @@ econf() {
 			fi
 
 			if ___eapi_econf_passes_--disable-static; then
-				if [[ ${conf_help} == *--disable-static* || \
-						${conf_help} == *--enable-static* ]]; then
+				if [[ ${conf_help} == *--enable-shared[^A-Za-z0-9+_.-]* &&
+						${conf_help} == *--enable-static[^A-Za-z0-9+_.-]* ]]; then
 					conf_args+=( --disable-static )
 				fi
 			fi

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic