[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2"
From: |
Allan McRae |
Subject: |
Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2" |
Date: |
Thu, 09 May 2013 14:24:46 +1000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130428 Thunderbird/17.0.5 |
On 09/05/13 13:36, Eric Blake wrote:
> On 05/08/2013 09:19 PM, Allan McRae wrote:
>> I believe autoconf uses "CPP CPPFLAGS" to detect headers mainly because
>> of "-I" flags needing to be considered. Would an acceptable solution at
>> the autoconf level be to split the CPPFLAGS into -I flags and others
>> (-D, -U) and just use the -I ones in the header test?
>>
>> If that is fine in principle, I can attempt to implement it.
>
> But that won't help you instantly fix the hundreds of existing packages
> whose configure script was generated with an earlier version of
> autoconf. While I am open to making future autoconf have saner behavior
> by default, you MUST consider the fact that your distro's choice of
> CFLAGS vs. CPPFLAGS is the real problem here ("if it hurts, don't do
> it"), rather than waiting for a patched autoconf to trickle down into
> fixed configure scripts on boatloads of packages.
I'm not worried about my distros choice of CPPFLAGS/CFLAGS. The flags
are being defined where they should be defined and working around it in
the relatively few software packages that this causes issues is a single
sed in the build script. Hiding the issue only delays it actually being
fixed at the source.
Saying that, it is really only an issue in a few places... I have
looked into why and it seems to be due to a choice of which
ac_fn_c_check_header_* functions is used. Looking in binutils (where
all configure files are generated with autoconf 2.64), the configure
files that fail use "ac_fn_c_check_header_preproc" while the ones that
succeed use "ac_fn_c_check_header_mongrel" or
"ac_fn_c_check_header_compile".
How is it determined which of those is used? From what I can tell
looking at the latest binutils source the working and failing
(libiberty) configure.ac files all use AC_CHECK_HEADERS.
Allan
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", (continued)
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Paul Eggert, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Allan McRae, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Ralf Corsepius, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Anatol Pomozov, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Paul Eggert, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Allan McRae, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Eric Blake, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2",
Allan McRae <=
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Paul Eggert, 2013/05/08
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Zack Weinberg, 2013/05/09
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Paul Eggert, 2013/05/09
- Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Mike Frysinger, 2013/05/09
Re: Autoconf does not like "-D_FORTIFY_SOURCE=2 -O2", Mike Frysinger, 2013/05/08