Re: C99 fixes for the configure script
"Todd C. Miller via sudo-workers" <[email protected]> Wed, 26 Apr 2023 13:01:12 -0600
| Newsgroups | gmane.comp.tools.sudo.devel |
|---|---|
| Message-ID | <[email protected]> |
On Wed, 26 Apr 2023 11:58:22 +0200, Florian Weimer via sudo-workers wrote: > We are trying to build Fedora with more C misuse turned into errors: > > <https://fedoraproject.org/wiki/Changes/PortingToModernC> > <https://fedoraproject.org/wiki/Toolchain/PortingToModernC> Great. I fixed a number of compiler warnings from the configure tests several years ago but there are probably more lurking. Are you running configure with "CC=gcc -Werror=implicit-function-declaration" to test this? > The first issue is a bit tricky. The lber.h probe also calso ldap_init, > but it's deprecated in our <ldap.h> header and only declared if > LDAP_DEPRECATED is defined. So with a C99 compiler without implicit > function declaration support, this probe checks for a declaration > ldap_init, and not just for <ldap.h> usability without <lber.h>. Thanks, I've committed a change to just call ldap_msgfree(NULL). > The second issue is in the fortify probe. It calls sprintf without > including <stdio.h>, which also relies on implicit function > declarations. I committed the change to include stdio.h. A long time ago I ran into a platform where the gcc headers had some support for _FORTIFY_SOURCE but the native libc did not. It was not a Linux/glibc platform. Unfortunately, the details are lost to time but I think it still makes sense to verify that a simple test program can build with _FORTIFY_SOURCE=2. - todd ____________________________________________________________ sudo-workers mailing list <[email protected]> For list information, options, or to unsubscribe, visit: https://www.sudo.ws/mailman/listinfo/sudo-workers