commit:     e6308710dff6e3e7469e536d5e947494ca080fd4
Author:     Eli Schwartz <eschwartz93 <AT> gmail <DOT> com>
AuthorDate: Sun Apr  7 22:24:11 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Apr  7 23:33:45 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6308710

media-libs/kvazaar: don't manually enable -Werror

autotools is genius software. When you add a flag called
--disable-werror, it isn't actually a flag called --disable-werror. It's
a flag called AC_ARG_ENABLE(werror), which expands "code if argument
was passed on the command line" and "code if argument was not passed on
the command line" blocks. When you say "--disable-werror" all you
actually do is add a formatted help text, which is otherwise totally
ignored by autoconf.

kvazaar had an AC_ARG_ENABLE that defined an
action-if-argument-was-defined-on-the-command-line of nothing, and an
action-if-argument-was-excluded-on-the-command-line of adding -Werror to
CFLAGS.

Back in commit 019c44a86ad017ea54703b7594b076cb0b840707, this was then
used to work around the default addition of -Werror. Logical.

In the very next release, upstream changed the help text to advertise
the --enable-* form, and switched it to
action-if-argument-was-defined-on-the-command-line of adding -Werror,
action-if-argument-was-excluded-on-the-command-line of nothing.

See:
https://github.com/ultravideo/kvazaar/commit/033bc6bc45b0c6b200a4227208d2fa6263e09166

This naturally meant that passing --disable-werror would add -Werror, in
addition to setting the ignored shell variable enable_werror=no. So for
seven years, we've been building with -Werror. Yay!

During that very version bump, --disable-werror was never removed.
Instead, append-flags was used to add an additional gcc switch back off,
per the redundancy requirements of the Department of Redundancy Department's
required approach to redundantly specifying redundant flags.

This also appears to tickle edge cases in LTO due to libtool dropping
some, but not all flags... sometimes. Leading to LTO being performed
with global -Werror.

Bug: https://bugs.gentoo.org/618434
Closes: https://bugs.gentoo.org/907263
Closes: https://bugs.gentoo.org/924296
Signed-off-by: Eli Schwartz <eschwartz93 <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-libs/kvazaar/kvazaar-2.1.0.ebuild    | 5 +----
 media-libs/kvazaar/kvazaar-2.2.0.ebuild    | 5 +----
 media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild | 3 ---
 media-libs/kvazaar/kvazaar-9999.ebuild     | 3 ---
 4 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/media-libs/kvazaar/kvazaar-2.1.0.ebuild 
b/media-libs/kvazaar/kvazaar-2.1.0.ebuild
index a7afed91e28b..283eebc2ce30 100644
--- a/media-libs/kvazaar/kvazaar-2.1.0.ebuild
+++ b/media-libs/kvazaar/kvazaar-2.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -48,8 +48,6 @@ src_prepare() {
                rmdir "${S}/greatest" || die
                mv "${WORKDIR}/greatest-${GREATEST_PV}" "${S}/greatest" || die
        fi
-       # Some m4 macros append Werror, we do not want that.
-       append-flags "-Wno-error"
 
        # valgrind isn't available on all archs
        # also, the valgrind tests fail with new ffmpeg (upstream only tests 
again ffmpeg 2.6.3)
@@ -59,7 +57,6 @@ src_prepare() {
 
 multilib_src_configure() {
        ECONF_SOURCE="${S}" econf \
-               --disable-werror \
                $(use_enable static-libs static)
 }
 

diff --git a/media-libs/kvazaar/kvazaar-2.2.0.ebuild 
b/media-libs/kvazaar/kvazaar-2.2.0.ebuild
index 3c29fd0726eb..c3452c489cda 100644
--- a/media-libs/kvazaar/kvazaar-2.2.0.ebuild
+++ b/media-libs/kvazaar/kvazaar-2.2.0.ebuild
@@ -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
 
 EAPI=8
@@ -47,13 +47,10 @@ src_prepare() {
                rmdir "${S}/greatest" || die
                mv "${WORKDIR}/greatest-${GREATEST_PV}" "${S}/greatest" || die
        fi
-       # Some m4 macros append Werror, we do not want that.
-       append-flags "-Wno-error"
 }
 
 multilib_src_configure() {
        ECONF_SOURCE="${S}" econf \
-               --disable-werror \
                $(use_enable static-libs static)
 }
 

diff --git a/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild 
b/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild
index bfc868061071..8589ad2921ad 100644
--- a/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild
+++ b/media-libs/kvazaar/kvazaar-2.3.0-r1.ebuild
@@ -51,13 +51,10 @@ src_prepare() {
                rmdir "${S}/greatest" || die
                mv "${WORKDIR}/greatest-${GREATEST_PV}" "${S}/greatest" || die
        fi
-       # Some m4 macros append Werror, we do not want that.
-       append-flags "-Wno-error"
 }
 
 multilib_src_configure() {
        ECONF_SOURCE="${S}" econf \
-               --disable-werror \
                $(use_enable static-libs static)
 }
 

diff --git a/media-libs/kvazaar/kvazaar-9999.ebuild 
b/media-libs/kvazaar/kvazaar-9999.ebuild
index 1945903e00c4..c009eaa4ec63 100644
--- a/media-libs/kvazaar/kvazaar-9999.ebuild
+++ b/media-libs/kvazaar/kvazaar-9999.ebuild
@@ -45,13 +45,10 @@ src_prepare() {
                rmdir "${S}/greatest" || die
                mv "${WORKDIR}/greatest-${GREATEST_PV}" "${S}/greatest" || die
        fi
-       # Some m4 macros append Werror, we do not want that.
-       append-flags "-Wno-error"
 }
 
 multilib_src_configure() {
        ECONF_SOURCE="${S}" econf \
-               --disable-werror \
                $(use_enable static-libs static)
 }
 

Reply via email to