On Mon, 2011-05-23 at 16:10 +0200, Sumit Bose wrote: > On Sun, May 22, 2011 at 05:21:23PM -0400, Stephen Gallagher wrote: > > > > > > On May 22, 2011, at 12:37 PM, Jakub Hrozek <jhro...@redhat.com> wrote: > > > > > On 05/20/2011 09:44 AM, Sumit Bose wrote: > > >> On Fri, May 20, 2011 at 09:34:06AM +0200, Jakub Hrozek wrote: > > >>> On 05/19/2011 05:12 PM, Sumit Bose wrote: > > >>>> Hi, > > >>>> > > >>>> there are a couple of places where we set _GNU_SOURCE in the source > > >>>> files to enable glibc specific extensions. If by chance > > >>>> '-D_GNU_SOURCE=1' is set on the gcc command line, e.g. by using the > > >>>> CFLAGS from a pkg-config output (yes, there are examples :-), we get > > >>>> '"_GNU_SOURCE" redefined' message during compilation. With the attached > > >>>> patch _GNU_SOURCE is only defined in the sources if not already set. > > >>>> > > >>>> An alternative fix would be to remove all defines of _GNU_SOURCE from > > >>>> the source code and add AC_USE_SYSTEM_EXTENSIONS/AC_GNU_SOURCE to > > >>>> configure.ac . I'm not sure if there is a recommended way how to handle > > >>>> _GNU_SOURCE and friends. > > >>>> > > >>>> bye, > > >>>> Sumit > > >>>> > > >>>> > > >>> > > >>> This patch works fine. > > >>> > > >>> I think I would prefer to use something like > > >>> AC_USE_SYSTEM_EXTENSIONS/AC_GNU_SOURCE simply because it would rule out > > >>> the possibility of forgetting to ifdef _GNU_SOURCE. > > >>> > > >>> But the problem seems to be that AC_GNU_SOURCE is obsolete in newer > > >>> versions of autoconf (and also throws an error on F14). At the same > > >>> time, AC_USE_SYSTEM_EXTENSIONS requires autoconf>= 2.60 while RHEL5 is > > >>> still on 2.59 > > >>> > > >> > > >> To solve this I have found the following: > > >> > > >> m4_ifdef([AC_USE_SYSTEM_EXTENSIONS], > > >> [AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])], > > >> [AC_REQUIRE([AC_GNU_SOURCE])]) > > >> > > >> Shall I prepare a patch with this in configure.ac? > > >> > > > > > > To me this seems like a more systematic solution. So unless anyone > > > objects, I vote for this little autoconf trickery. > > > > > > > I concur > > ok, this new version set _GNU_SOURCE safely in config.h. I had to add or > move some #include "config.h" and came across a 'shadows global' warning > I hadn't see before. > > Additionally I added a patch to remove some AC_DEFUN from configure.ac > which were not used anywhere in our code.
Ack to both
signature.asc
Description: This is a digitally signed message part
_______________________________________________ sssd-devel mailing list sssd-devel@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/sssd-devel