Re: [PATCH] Make sure sys/types.h is included after sys/sysmacros.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09/06/2016 08:46 AM, Michal Privoznik wrote:
> In the latest glibc, major() and minor() functions are marked as
> deprecated (glibc commit dbab6577):

Not only that, but there's a thread on the autoconf list about how to
fix AC_HEADER_MAJOR to work.  I may be releasing autoconf 2.70 in the
near future because of this glibc change, although there is still the
issue that it will only benefit programs that are configured with
new-enough autoconf with the fixed macro.  Gnulib, of course, will
backport any autoconf fix, and we'll at least pick it up via gnulib if
we update the submodule, once everything settles upstream in autoconf,
but it may be a few days before I know how best to tackle it among all
the related projects.

> 
> This still won't solve the build issue completely as AC_HEADER_MAJOR still
> reports that major() is defined by sys/types.h instead of sys/sysmacros.h.
> But once they fix it, we are good too. Or we can use the following
> workaround in configure.ac:
> 
>   +old_CFLAGS=$CFLAGS
>   +CFLAGS+=" -Werror "
>    AC_HEADER_MAJOR
>   +CFLAGS=$old_CFLAGS
> 

I don't think we need to worry about working around it in our
configure.ac; once upstream autoconf and gnulib figure out what they
want to do, we can inherit that.

> +++ b/src/conf/domain_audit.c
> @@ -24,7 +24,6 @@
>  #include <config.h>
>  
>  #include <sys/stat.h>
> -#include <sys/types.h>
>  
>  #ifdef MAJOR_IN_MKDEV
>  # include <sys/mkdev.h>
> @@ -32,6 +31,8 @@
>  # include <sys/sysmacros.h>
>  #endif
>  
> +#include <sys/types.h>
> +

For the purposes of immediate compilation, this looks correct to me, so
you have my ACK.


-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]