diff options
| author | Kenjiro Nakayama <nakayamakenjiro@gmail.com> | 2026-04-30 15:00:14 +0900 |
|---|---|---|
| committer | Kenjiro Nakayama <nakayamakenjiro@gmail.com> | 2026-04-30 15:53:44 +0900 |
| commit | 75e62709f161d4f5f2bc1202bb7e4e906b4aaa91 (patch) | |
| tree | fd1a0a141dd8c64031d807a3898ee2f60f8efcaf /configure.ac | |
| parent | b56b582a049d194a14064b36212f81645deeec22 (diff) | |
| download | portable-75e62709f161d4f5f2bc1202bb7e4e906b4aaa91.tar.gz portable-75e62709f161d4f5f2bc1202bb7e4e906b4aaa91.tar.bz2 portable-75e62709f161d4f5f2bc1202bb7e4e906b4aaa91.zip | |
Do not override user CFLAGS/LDFLAGS in hardening flag detection
`CHECK_CFLAG` / `CHECK_LDFLAG` overwrote `CFLAGS`/`LDFLAGS` with only
the flag under test, so feature detection ran with a different target
than the real build.
For example `CFLAGS=-march=i586 ./configure` accepted
`-fcf-protection=full` (detected under the toolchain's i686 default)
but then failed to compile because GCC 15 rejects `-fcf-protection` on
i586.
Prepend `$USER_CFLAGS` / `$USER_LDFLAGS` (saved before `AC_PROG_CC`)
to the detection command so the probe matches the real build.
Fixes #1268
Diffstat (limited to 'configure.ac')
| -rw-r--r-- | configure.ac | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index eb2b9ce..c0ad033 100644 --- a/configure.ac +++ b/configure.ac | |||
| @@ -26,6 +26,7 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) | |||
| 26 | 26 | ||
| 27 | # This must be saved before AC_PROG_CC | 27 | # This must be saved before AC_PROG_CC |
| 28 | USER_CFLAGS="$CFLAGS" | 28 | USER_CFLAGS="$CFLAGS" |
| 29 | USER_LDFLAGS="$LDFLAGS" | ||
| 29 | 30 | ||
| 30 | AC_PROG_CC([cc gcc]) | 31 | AC_PROG_CC([cc gcc]) |
| 31 | AM_PROG_CC_C_O | 32 | AM_PROG_CC_C_O |
