mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-27 03:33:33 +08:00
stdio-common: tests: don't double-define _FORTIFY_SOURCE
Exactly the same as 35bcb08eaa
.
If using -D_FORITFY_SOURCE=3 (in my case, I've patched GCC to add
=3 instead of =2 (we've done =2 for years in Gentoo)), building
glibc tests will fail on tst-bz11319-fortify2 like:
```
<command-line>: error: "_FORTIFY_SOURCE" redefined [-Werror]
<built-in>: note: this is the location of the previous definition
cc1: all warnings being treated as errors
```
It's just because we're always setting -D_FORTIFY_SOURCE=2
rather than unsetting it first. If F_S is already 2, it's harmless,
but if it's another value (say, 1, or 3), the compiler will bawk.
(I'm not aware of a reason this couldn't be tested with =3,
but the toolchain support is limited for that (too new), and we want
to run the tests everywhere possible.)
As Siddhesh noted previously, we could implement some fallback
logic to determine the maximal F_S value supported by the toolchain,
which is a bit easier now that autoconf-archive has been updated for F_S=3
(https://github.com/autoconf-archive/autoconf-archive/pull/269), but let's
revisit this if it continues to crop up.
Signed-off-by: Sam James <sam@gentoo.org>
Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
This commit is contained in:
parent
952b7630c7
commit
ecf8ae6704
@ -450,7 +450,7 @@ CFLAGS-tst-gets.c += -Wno-deprecated-declarations
|
||||
|
||||
# BZ #11319 was first fixed for regular vdprintf, then reopened because
|
||||
# the fortified version had the same bug.
|
||||
CFLAGS-tst-bz11319-fortify2.c += -D_FORTIFY_SOURCE=2
|
||||
CFLAGS-tst-bz11319-fortify2.c += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
|
||||
|
||||
CFLAGS-tst-memstream-string.c += -fno-builtin-fprintf
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user