mirror of https://gitee.com/openkylin/libvirt.git
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
|
||||
getcwd-lgpl
|
||||
gethostname
|
||||
getopt-posix
|
||||
getpass
|
||||
getpeername
|
||||
getsockname
|
||||
|
|
|
@ -69,3 +69,21 @@
|
|||
# undef WITH_SECDRIVER_APPARMOR
|
||||
# undef WITH_CAPNG
|
||||
#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"])
|
||||
])
|
||||
|
||||
dnl Build with gnulib's getopt which contains a reentrant interface
|
||||
AC_DEFUN([gl_REPLACE_GETOPT_ALWAYS], [])
|
||||
|
||||
AC_DEFUN([LIBVIRT_DRIVER_RESULT_BHYVE],[
|
||||
AC_MSG_NOTICE([ Bhyve: $with_bhyve])
|
||||
])
|
||||
|
|
|
@ -8,6 +8,7 @@ daemon/remote.c
|
|||
daemon/remote_dispatch.h
|
||||
daemon/stream.c
|
||||
gnulib/lib/gai_strerror.c
|
||||
gnulib/lib/getopt.c
|
||||
gnulib/lib/regcomp.c
|
||||
src/access/viraccessdriverpolkit.c
|
||||
src/access/viraccessmanager.c
|
||||
|
|
Loading…
Reference in New Issue