svn commit: samba r22731 - in branches/SAMBA_3_0/source: . tests
Stefan (metze) Metzmacher
metze at samba.org
Mon May 7 07:12:18 GMT 2007
-----BEGIN PGP SIGNED MESSAGE-----
derrell at samba.org schrieb:
> Author: derrell
> Date: 2007-05-07 03:02:24 +0000 (Mon, 07 May 2007)
> New Revision: 22731
> WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=22731
> - Fix bug #4594.
> configure.in determines if -Werror-implicit-function-declaration is
> available, and if so it enables that flag if --enable-developer is
> specified. Since the configure tests themselves did not use that flag, it
> was possible for a configure test to succeed, followed by a failed
> compilation due to a facility being available but not having a proper
> declaration in a header file. (This bit me with readahead().) This patch
> ensures that if implicit function declarations will kill the build, the
> feature being tested is deselected so the build will succeed.
> The autoconf manual suggests using return instead of exit in configure
> tests because the declaration for exit is often missing. We require this
> now, since we error if prototypes are missing. See section 5.5.1 of
> http://www.gnu.org/software/autoconf/manual/autoconf.html. This patch makes
> these changes, because in fact, an external declaration for exit is missing
> here (and likely elsewhere).
> I've verified that the features selected (here) with the original
> configure.in and the new one are the same except for, in my case,
> readahead. I've also confirmed that the generated Makefile is identical.
> These changes are not being applied to the 3.0.26 branch because it does not
> exhibit the initial problem this patch is supposed to solve since it doesn't
> attempt to use -Werror-implicit-function-declaration.
I don't think it's correct to use -Werror-implicit-function-declaration
within the configure checks. Because the configure result now may
differs between the normal and developer build.
The correct fix would be to use a AC_CHECK_DECL() or AC_HAVE_DECL()
for the specific function.
(But I like the exit -> return cleanups :-)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
More information about the samba-technical