commit:     2db1831deae8eadfb7e92d13cb2540c6916b1155
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon May  6 05:27:34 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon May  6 05:28:21 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2db1831d

sys-libs/glibc: allow -O3

After 0fdf4ba48ccce5abf567340b0ab8fa8ed8a9bc6e, 
5a2cf833f5772d6c37c7adac388dd9af9cc1c4b9,
and ded2e0753e9c46debeb2e0d26c5e560d2581d314 upstream, glibc builds fine
with -O3 on amd64. Allow that too.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/glibc/glibc-2.39-r5.ebuild | 11 ++++++++---
 sys-libs/glibc/glibc-9999.ebuild    | 11 ++++++++---
 2 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/sys-libs/glibc/glibc-2.39-r5.ebuild 
b/sys-libs/glibc/glibc-2.39-r5.ebuild
index 26b5a207975e..8d816148ab46 100644
--- a/sys-libs/glibc/glibc-2.39-r5.ebuild
+++ b/sys-libs/glibc/glibc-2.39-r5.ebuild
@@ -447,9 +447,14 @@ setup_flags() {
                # relating to failed builds, we strip most CFLAGS out to ensure 
as few
                # problems as possible.
                strip-flags
-               # Lock glibc at -O2; we want to be conservative here.
-               filter-flags '-O?'
-               append-flags -O2
+
+               # Allow -O2 and -O3, but nothing else for now.
+               # TODO: Test -Os, -Oz.
+               if ! is-flagq '-O@(2|3)' ; then
+                       # Lock glibc at -O2. We want to be conservative here.
+                       filter-flags '-O?'
+                       append-flags -O2
+               fi
        fi
 
        strip-unsupported-flags

diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 3a053a9de724..0cbc0a06f45e 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -447,9 +447,14 @@ setup_flags() {
                # relating to failed builds, we strip most CFLAGS out to ensure 
as few
                # problems as possible.
                strip-flags
-               # Lock glibc at -O2; we want to be conservative here.
-               filter-flags '-O?'
-               append-flags -O2
+
+               # Allow -O2 and -O3, but nothing else for now.
+               # TODO: Test -Os, -Oz.
+               if ! is-flagq '-O@(2|3)' ; then
+                       # Lock glibc at -O2. We want to be conservative here.
+                       filter-flags '-O?'
+                       append-flags -O2
+               fi
        fi
 
        strip-unsupported-flags

Reply via email to