On 2012年05月09日 12:58, Daniel Veillard wrote:
On Wed, May 09, 2012 at 12:28:45PM +0800, Osier Yang wrote:
> Since now we pre-set memory policy using libnuma to fully
> drive numad, it needs to check numactl-devel if "with_numad"
> is "yes".
>
> configure with groups "--with-numad=yes --with-numactl=yes",
> "--with-numad=no --with-numactl=yes", "--with-numad=yes
> --with-numactl=yes" works fine after the change.
> ---
> configure.ac | 46 +++++++++++++++++++++++++++++++---------------
> 1 files changed, 31 insertions(+), 15 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 30eff91..93cc3e8 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -1505,13 +1505,6 @@ if test "$with_qemu" = "yes"&&
test "$with_numactl" != "no"; then
> CFLAGS="$old_cflags"
> LIBS="$old_libs"
> fi
> -if test "$with_numactl" = "yes"; then
> - NUMACTL_LIBS="-lnuma"
> - AC_DEFINE_UNQUOTED([HAVE_NUMACTL], 1, [whether numactl is available for topology
info])
> -fi
> -AM_CONDITIONAL([HAVE_NUMACTL], [test "$with_numactl" != "no"])
> -AC_SUBST([NUMACTL_CFLAGS])
> -AC_SUBST([NUMACTL_LIBS])
>
> dnl numad
> AC_ARG_WITH([numad],
> @@ -1520,22 +1513,45 @@ AC_ARG_WITH([numad],
> [with_numad=check])
>
> if test "$with_numad" != "no" ; then
> + old_cflags="$CFLAGS"
> + old_libs="$LIBS"
> + fail=0
> +
> AC_PATH_PROG([NUMAD], [numad], [], [/bin:/usr/bin])
> - if test -z "$NUMAD" ; then
> - if test "$with_numad" = "check"; then
> +
> + if test "$with_numad" = "check"; then
> + AC_CHECK_HEADER([numa.h], [], [fail=1])
> + AC_CHECK_LIB([numa], [numa_available], [], [fail=1])
> + if test -z "$NUMAD" || test $fail = 1; then
> with_numad="no"
> else
> - AC_MSG_ERROR([You must install the 'numad' to manage CPU placement
dynamically])
> + with_nuamd="yes"
> fi
> else
> - with_numad="yes"
> - fi
> - if test "$with_numad" = "yes"; then
> - AC_DEFINE_UNQUOTED([HAVE_NUMAD], 1, [whether numad is available])
> - AC_DEFINE_UNQUOTED([NUMAD],["$NUMAD"], [Location or name of the numad
program])
> + test -z "$NUMAD"&&
> + AC_MSG_ERROR([You must install numad package to manage CPU and memory
placement dynamically])
> +
> + AC_CHECK_HEADER([numa.h], [], [fail=1])
> + AC_CHECK_LIB([numa], [numa_available], [], [fail=1])
> + test $fail = 1&&
> + AC_MSG_ERROR([You must install the numactl development package in order to
compile and run libvirt])
> fi
> +
> + CFLAGS="$old_cflags"
> + LIBS="$old_libs"
> +fi
> +if test "$with_numad" = "yes"; then
> + AC_DEFINE_UNQUOTED([HAVE_NUMAD], 1, [whether numad is available])
> + AC_DEFINE_UNQUOTED([NUMAD],["$NUMAD"], [Location or name of the numad
program])
> +fi
> +if test "$with_numactl" = "yes" || test "$with_numad"
= "yes"; then
> + NUMACTL_LIBS="-lnuma"
> + AC_DEFINE_UNQUOTED([HAVE_NUMACTL], 1, [whether numactl-devel is available])
> fi
> AM_CONDITIONAL([HAVE_NUMAD], [test "$with_numad" != "no"])
> +AM_CONDITIONAL([HAVE_NUMACTL], [test "$with_numad" != "no" ||
test "$with_numactl" != "no"])
> +AC_SUBST([NUMACTL_CFLAGS])
> +AC_SUBST([NUMACTL_LIBS])
>
> dnl pcap lib
> LIBPCAP_CONFIG="pcap-config"
Okay, ACK,
Daniel
Thanks, pushed 5/5 and 6/5.
Regards,
Osier