mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 13:45:38 +00:00
gnulib: add getopt module
Unconditionally use gnulib's getopt module. This is needed by the bhyve driver to provide a reentrant interface for getopt. Several gnulib headers rely on features.h being included by ctype.h to provide __GNUC_PREREQ, but on systems without glibc, this is not provided. In these cases __GNUC_PREREQ gets redefined to 0, which causes build errors from checks in src/internal.h. Therefore, define __GNUC_PREREQ as early as possible. config-post.h is probably the first header that is included, before any other headers.
This commit is contained in:
parent
1edf20a9f8
commit
b436a8ae5c
@ -54,6 +54,7 @@ func
|
|||||||
getaddrinfo
|
getaddrinfo
|
||||||
getcwd-lgpl
|
getcwd-lgpl
|
||||||
gethostname
|
gethostname
|
||||||
|
getopt-posix
|
||||||
getpass
|
getpass
|
||||||
getpeername
|
getpeername
|
||||||
getsockname
|
getsockname
|
||||||
|
@ -69,3 +69,21 @@
|
|||||||
# undef WITH_SECDRIVER_APPARMOR
|
# undef WITH_SECDRIVER_APPARMOR
|
||||||
# undef WITH_CAPNG
|
# undef WITH_CAPNG
|
||||||
#endif /* LIBVIRT_NSS */
|
#endif /* LIBVIRT_NSS */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Define __GNUC__ to a sane default if it isn't yet defined.
|
||||||
|
* This is done here so that it's included as early as possible; gnulib relies
|
||||||
|
* on this to be defined in features.h, which should be included from ctype.h.
|
||||||
|
* This doesn't happen on many non-glibc systems.
|
||||||
|
* When __GNUC__ is not defined, gnulib defines it to 0, which breaks things.
|
||||||
|
*/
|
||||||
|
#ifdef __GNUC__
|
||||||
|
# ifndef __GNUC_PREREQ
|
||||||
|
# if defined __GNUC__ && defined __GNUC_MINOR__
|
||||||
|
# define __GNUC_PREREQ(maj, min) \
|
||||||
|
((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
|
||||||
|
# else
|
||||||
|
# define __GNUC_PREREQ(maj, min) 0
|
||||||
|
# endif
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
@ -52,6 +52,9 @@ AC_DEFUN([LIBVIRT_DRIVER_CHECK_BHYVE],[
|
|||||||
AM_CONDITIONAL([WITH_BHYVE], [test "$with_bhyve" = "yes"])
|
AM_CONDITIONAL([WITH_BHYVE], [test "$with_bhyve" = "yes"])
|
||||||
])
|
])
|
||||||
|
|
||||||
|
dnl Build with gnulib's getopt which contains a reentrant interface
|
||||||
|
AC_DEFUN([gl_REPLACE_GETOPT_ALWAYS], [])
|
||||||
|
|
||||||
AC_DEFUN([LIBVIRT_DRIVER_RESULT_BHYVE],[
|
AC_DEFUN([LIBVIRT_DRIVER_RESULT_BHYVE],[
|
||||||
AC_MSG_NOTICE([ Bhyve: $with_bhyve])
|
AC_MSG_NOTICE([ Bhyve: $with_bhyve])
|
||||||
])
|
])
|
||||||
|
@ -8,6 +8,7 @@ daemon/remote.c
|
|||||||
daemon/remote_dispatch.h
|
daemon/remote_dispatch.h
|
||||||
daemon/stream.c
|
daemon/stream.c
|
||||||
gnulib/lib/gai_strerror.c
|
gnulib/lib/gai_strerror.c
|
||||||
|
gnulib/lib/getopt.c
|
||||||
gnulib/lib/regcomp.c
|
gnulib/lib/regcomp.c
|
||||||
src/access/viraccessdriverpolkit.c
|
src/access/viraccessdriverpolkit.c
|
||||||
src/access/viraccessmanager.c
|
src/access/viraccessmanager.c
|
||||||
|
Loading…
Reference in New Issue
Block a user