From 261e7581b11505479f9113bc433ea959a4b91b56 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Wed, 5 Dec 2007 21:31:07 +0000 Subject: [PATCH] Use gnulib, starting with its physmem and getaddrinfo modules. New files go into these directories: gnulib/lib gnulib/m4 gnulib/tests * bootstrap: A wrapper around gnulib-tool. * configure.in: Invoke gl_EARLY and gl_INIT, being careful to put gl_EARLY before any macro that uses AC_COMPILE_IFELSE. (AC_OUTPUT): Add lib/Makefile and gl-tests/Makefile. Remove m4/Makefile. * Makefile.am (SUBDIRS): Add gnulib/lib and remove m4. Add gnulib/tests early enough that those tests run before any libvirt unit tests. * m4/Makefile.am: Remove file. Not needed. * src/Makefile.am (INCLUDES): Add -I$(top_srcdir)/gnulib/lib -I../gnulib/lib. (LDADDS, libvirt_la_LIBADD): Add ../gnulib/lib/libgnu.la. * src/nodeinfo.c: Include "physmem.h". * qemud/qemud.c, src/remote_internal.c: Include "getaddrinfo.h". (MEMINFO_PATH, linuxNodeInfoMemPopulate): Remove definitions. (virNodeInfoPopulate): Use physmem_total, not linuxNodeInfoMemPopulate. * tests/Makefile.am (INCLUDES): Add -I$(top_srcdir)/gnulib/lib -I../gnulib/lib. (LDADDS): Add ../gnulib/lib/libgnu.la. * qemud/Makefile.am (libvirtd_LDADD): Add ../gnulib/lib/libgnu.la. * tests/nodeinfotest.c (linuxTestCompareFiles): No longer read total memory from a file. Update expected output not to include "Memory: NNNN" * tests/nodeinfodata/linux-nodeinfo-1.txt: * tests/nodeinfodata/linux-nodeinfo-2.txt: * tests/nodeinfodata/linux-nodeinfo-3.txt: * tests/nodeinfodata/linux-nodeinfo-4.txt: * tests/nodeinfodata/linux-nodeinfo-5.txt: * tests/nodeinfodata/linux-nodeinfo-6.txt: * src/test.c [WITH_TEST]: Remove definition of _GNU_SOURCE that would conflict with the one now in "config.h". * autogen.sh: Add -I gnulib/m4. * src/conf.c, src/sexpr.c: Don't define _GNU_SOURCE. Instead, include "config.h". * qemud/qemud.c: Remove definition of _GNU_SOURCE. * src/openvz_driver.c: Likewise. * src/qemu_driver.c: Likewise. * src/remote_internal.c: Likewise. * configure.in: Use AC_CONFIG_AUX_DIR(build-aux), so that a bunch of gettextize-generated files go into build-aux/, rather than in the top-level directory. * .cvsignore: Adjust. * build-aux/.cvsignore: New file. Author: Jim Meyering --- .cvsignore | 9 -- ChangeLog | 50 ++++++++++ Makefile.am | 5 +- autogen.sh | 2 +- bootstrap | 117 ++++++++++++++++++++++++ build-aux/.cvsignore | 9 ++ configure.in | 12 ++- m4/Makefile.am | 3 - qemud/Makefile.am | 3 +- qemud/qemud.c | 3 +- src/Makefile.am | 8 +- src/conf.c | 3 +- src/nodeinfo.c | 55 ++--------- src/openvz_driver.c | 2 - src/qemu_driver.c | 2 - src/remote_internal.c | 3 +- src/sexpr.c | 2 +- src/test.c | 2 - tests/Makefile.am | 5 +- tests/nodeinfodata/linux-nodeinfo-1.txt | 2 +- tests/nodeinfodata/linux-nodeinfo-2.txt | 2 +- tests/nodeinfodata/linux-nodeinfo-3.txt | 2 +- tests/nodeinfodata/linux-nodeinfo-4.txt | 2 +- tests/nodeinfodata/linux-nodeinfo-5.txt | 2 +- tests/nodeinfodata/linux-nodeinfo-6.txt | 2 +- tests/nodeinfotest.c | 23 +---- 26 files changed, 225 insertions(+), 105 deletions(-) create mode 100755 bootstrap create mode 100644 build-aux/.cvsignore delete mode 100644 m4/Makefile.am diff --git a/.cvsignore b/.cvsignore index 90819147fd..a35d5ea14c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -9,27 +9,18 @@ config.cache config.h config.h.in config.log -config.guess config.status -config.sub stamp-h stamp-h1 libtool ltconfig -ltmain.sh update.log libvirt.pc libvirt.spec COPYING m4 ABOUT-NLS -config.rpath -mkinstalldirs coverage results.log libvirt-*.tar.gz INSTALL -compile -depcomp -install-sh -missing diff --git a/ChangeLog b/ChangeLog index 60c0a9d6e9..a18ac2a2b6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,53 @@ +Wed Dec 5 22:30:03 CET 2007 Jim Meyering + + Use gnulib, starting with its physmem and getaddrinfo modules. + New files go into these directories: + gnulib/lib + gnulib/m4 + gnulib/tests + * bootstrap: A wrapper around gnulib-tool. + * configure.in: Invoke gl_EARLY and gl_INIT, being careful to put + gl_EARLY before any macro that uses AC_COMPILE_IFELSE. + (AC_OUTPUT): Add lib/Makefile and gl-tests/Makefile. Remove m4/Makefile. + * Makefile.am (SUBDIRS): Add gnulib/lib and remove m4. Add gnulib/tests + early enough that those tests run before any libvirt unit tests. + * m4/Makefile.am: Remove file. Not needed. + * src/Makefile.am (INCLUDES): Add -I$(top_srcdir)/gnulib/lib + -I../gnulib/lib. + (LDADDS, libvirt_la_LIBADD): Add ../gnulib/lib/libgnu.la. + * src/nodeinfo.c: Include "physmem.h". + * qemud/qemud.c, src/remote_internal.c: Include "getaddrinfo.h". + (MEMINFO_PATH, linuxNodeInfoMemPopulate): Remove definitions. + (virNodeInfoPopulate): Use physmem_total, not linuxNodeInfoMemPopulate. + * tests/Makefile.am (INCLUDES): Add -I$(top_srcdir)/gnulib/lib + -I../gnulib/lib. + (LDADDS): Add ../gnulib/lib/libgnu.la. + * qemud/Makefile.am (libvirtd_LDADD): Add ../gnulib/lib/libgnu.la. + * tests/nodeinfotest.c (linuxTestCompareFiles): No longer read total + memory from a file. + Update expected output not to include "Memory: NNNN" + * tests/nodeinfodata/linux-nodeinfo-1.txt: + * tests/nodeinfodata/linux-nodeinfo-2.txt: + * tests/nodeinfodata/linux-nodeinfo-3.txt: + * tests/nodeinfodata/linux-nodeinfo-4.txt: + * tests/nodeinfodata/linux-nodeinfo-5.txt: + * tests/nodeinfodata/linux-nodeinfo-6.txt: + * src/test.c [WITH_TEST]: Remove definition of _GNU_SOURCE that + would conflict with the one now in "config.h". + * autogen.sh: Add -I gnulib/m4. + * src/conf.c, src/sexpr.c: Don't define _GNU_SOURCE. + Instead, include "config.h". + * qemud/qemud.c: Remove definition of _GNU_SOURCE. + * src/openvz_driver.c: Likewise. + * src/qemu_driver.c: Likewise. + * src/remote_internal.c: Likewise. + + * configure.in: Use AC_CONFIG_AUX_DIR(build-aux), so that a bunch + of gettextize-generated files go into build-aux/, rather than in + the top-level directory. + * .cvsignore: Adjust. + * build-aux/.cvsignore: New file. + Wed Dec 5 21:44:17 CET 2007 Daniel Veillard * qemud/remote.c: rename remoteDispatchAuthPolkitInit to diff --git a/Makefile.am b/Makefile.am index 03e80627df..c49c533c2c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,8 +1,9 @@ ## Process this file with automake to produce Makefile.in -SUBDIRS = include src qemud proxy docs @PYTHON_SUBDIR@ tests po m4 scripts +SUBDIRS = gnulib/lib include src qemud proxy docs gnulib/tests \ + @PYTHON_SUBDIR@ tests po scripts -ACLOCAL_AMFLAGS = -I m4 +ACLOCAL_AMFLAGS = -I m4 -I gnulib/m4 EXTRA_DIST = libvirt.spec.in libvirt.spec COPYING.LIB \ libvirt.pc.in libvirt.pc TODO AUTHORS ChangeLog \ diff --git a/autogen.sh b/autogen.sh index 97b636dac7..3bcffd3d94 100755 --- a/autogen.sh +++ b/autogen.sh @@ -57,7 +57,7 @@ fi autopoint --force #rm -rf m4 libtoolize --copy --force -aclocal -I m4 +aclocal -I m4 -I gnulib/m4 autoheader automake --add-missing autoconf diff --git a/bootstrap b/bootstrap new file mode 100755 index 0000000000..73ad3f6d26 --- /dev/null +++ b/bootstrap @@ -0,0 +1,117 @@ +#!/bin/sh +# Run this after autogen.sh, to pull in all of the gnulib-related bits. +# It's important to run *after* autogen.sh, since it updates some of +# the same files autogen.sh does, yet those from gnulib are newer, +# and match the tests. So if a gnulib bug has been fixed since the +# snapshot taken for whatever gettext release you're using, yet you +# run "make check" against the wrong version, the corresponding unit +# test in gl-tests/ may well fail. + +usage() { + echo >&2 "\ +Usage: $0 [OPTION]... +Bootstrap this package from the checked-out sources. + +Options: + --gnulib-srcdir=DIRNAME Specify the local directory where gnulib + sources reside. Use this if you already + have gnulib sources on your machine, and + do not want to waste your bandwidth downloading + them again. + +If the file bootstrap.conf exists in the current working directory, its +contents are read as shell variables to configure the bootstrap. + +Running without arguments will suffice in most cases. +" +} + +for option +do + case $option in + --help) + usage + exit;; + --gnulib-srcdir=*) + GNULIB_SRCDIR=`expr "$option" : '--gnulib-srcdir=\(.*\)'`;; + *) + echo >&2 "$0: $option: unknown option" + exit 1;; + esac +done + +cleanup_gnulib() { + st=$? + rm -fr .gnulib + exit $st +} + +case ${GNULIB_SRCDIR--} in +-) + if [ ! -d gnulib ]; then + echo "$0: getting gnulib files..." + + trap cleanup_gnulib 1 2 13 15 + + git clone --depth 1 git://git.sv.gnu.org/gnulib .gnulib || + cleanup_gnulib + + trap - 1 2 13 15 + fi + GNULIB_SRCDIR=.gnulib +esac + +gnulib_tool=$GNULIB_SRCDIR/gnulib-tool +<$gnulib_tool || exit + +# Tell gnulib to: +# put tests in new gnulib/tests/ dir +# put *.m4 files in new gnulib/m4/ dir +# put *.[ch] files in new gnulib/lib/ dir. +# With --avoid=snprintf, we drop support for systems (many!) with +# losing snprintf but pull in about 30 fewer files +# With the current gnulib and gettext-0.17, the following +# files are added to m4/ by both. But gnulib is stable enough +# and gettext-0.16.1 is new enough that they are identical. +# compiler-flags.m4 +# inttypes_h.m4 +# longlong.m4 +# size_max.m4 +# stdint_h.m4 +# wchar_t.m4 +# wint_t.m4 +# xsize.m4 + +# Note that if we don't exclude the snprintf module, there are two tests +# that have incompatible licenses, so we would have to exclude them. Even +# excluding those two test modules, find reports a total of 94 added files. +# Yes, snprintf has some heavy-duty dependents. +# --avoid=snprintf-tests +# --avoid=vasnprintf-tests + +avoid='--avoid=snprintf' + +avoid=' + --avoid=snprintf-tests + --avoid=vasnprintf-tests + --avoid=alloca-opt-tests +' + +$gnulib_tool \ + --lgpl \ + $avoid \ + --with-tests \ + --m4-base=gnulib/m4 \ + --source-base=gnulib/lib \ + --tests-base=gnulib/tests \ + --import physmem getaddrinfo + +rm -f \ + .gitignore \ + gnulib/lib/.gitignore \ + gnulib/m4/.gitignore \ + gnulib/tests/.gitignore + +(cd gnulib/lib && + (cat .cvsignore; \ + ls -1 *.in.h|sed 's/\.in\.h/.h/') | sort -u > .t; mv .t .cvsignore) diff --git a/build-aux/.cvsignore b/build-aux/.cvsignore new file mode 100644 index 0000000000..1798f40d35 --- /dev/null +++ b/build-aux/.cvsignore @@ -0,0 +1,9 @@ +compile +config.guess +config.rpath +config.sub +depcomp +install-sh +ltmain.sh +missing +mkinstalldirs diff --git a/configure.in b/configure.in index b11458b187..7c014cfbf1 100644 --- a/configure.in +++ b/configure.in @@ -2,6 +2,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(libvirt, 0.3.3) AC_CONFIG_SRCDIR(src/libvirt.c) +AC_CONFIG_AUX_DIR(build-aux) AM_CONFIG_HEADER(config.h) dnl Make automake keep quiet about wildcards & other GNUmake-isms AM_INIT_AUTOMAKE([-Wno-portability]) @@ -29,11 +30,15 @@ POLKIT_REQUIRED="0.6" dnl Checks for C compiler. AC_PROG_CC -AM_PROG_CC_STDC -AC_C_CONST AC_PROG_INSTALL AC_PROG_CPP +gl_EARLY +gl_INIT + +AM_PROG_CC_STDC +AC_C_CONST + dnl Make sure we have an ANSI compiler AM_C_PROTOTYPES test "x$U" != "x" && AC_MSG_ERROR(Compiler not ANSI compliant) @@ -626,11 +631,12 @@ cp COPYING.LIB COPYING AC_OUTPUT(Makefile src/Makefile include/Makefile docs/Makefile \ docs/examples/Makefile docs/devhelp/Makefile \ docs/examples/python/Makefile \ + gnulib/lib/Makefile tests/gnulib/Makefile \ libvirt.pc libvirt.spec \ po/Makefile.in scripts/Makefile \ include/libvirt/Makefile include/libvirt/libvirt.h \ python/Makefile python/tests/Makefile \ - qemud/Makefile m4/Makefile \ + qemud/Makefile \ tests/Makefile proxy/Makefile \ tests/xml2sexprdata/Makefile \ tests/sexpr2xmldata/Makefile \ diff --git a/m4/Makefile.am b/m4/Makefile.am deleted file mode 100644 index 188b2fe01d..0000000000 --- a/m4/Makefile.am +++ /dev/null @@ -1,3 +0,0 @@ - -EXTRA_DIST = compiler-flags.m4 - diff --git a/qemud/Makefile.am b/qemud/Makefile.am index c605e1f9f3..ef940014b7 100644 --- a/qemud/Makefile.am +++ b/qemud/Makefile.am @@ -28,6 +28,7 @@ libvirtd_SOURCES = \ #-D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=1 -D_POSIX_C_SOURCE=199506L libvirtd_CFLAGS = \ + -I$(top_srcdir)/gnulib/lib -I../gnulib/lib \ -I$(top_srcdir)/include -I$(top_builddir)/include \ $(LIBXML_CFLAGS) $(GNUTLS_CFLAGS) $(SASL_CFLAGS) \ $(POLKIT_CFLAGS) \ @@ -40,7 +41,7 @@ libvirtd_CFLAGS = \ libvirtd_LDFLAGS = $(WARN_CFLAGS) $(LIBXML_LIBS) $(GNUTLS_LIBS) $(SASL_LIBS) \ $(POLKIT_LIBS) libvirtd_DEPENDENCIES = ../src/libvirt.la -libvirtd_LDADD = ../src/libvirt.la +libvirtd_LDADD = ../src/libvirt.la ../gnulib/lib/libgnu.la if HAVE_POLKIT diff --git a/qemud/qemud.c b/qemud/qemud.c index 657b6ffa07..20a3b08a9a 100644 --- a/qemud/qemud.c +++ b/qemud/qemud.c @@ -23,8 +23,6 @@ #include "config.h" -#define _GNU_SOURCE /* for asprintf */ - #include #include #include @@ -53,6 +51,7 @@ #include "libvirt/virterror.h" #include "internal.h" +#include "getaddrinfo.h" #include "../src/internal.h" #include "../src/remote_internal.h" #include "../src/conf.h" diff --git a/src/Makefile.am b/src/Makefile.am index 532c7da1c4..a14b9b6eac 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,6 +1,8 @@ ## Process this file with automake to produce Makefile.in -INCLUDES = -I$(top_builddir)/include \ +INCLUDES = \ + -I$(top_srcdir)/gnulib/lib -I../gnulib/lib \ + -I../include \ -I@top_srcdir@/include \ -I@top_srcdir@/qemud \ $(LIBXML_CFLAGS) \ @@ -15,7 +17,7 @@ INCLUDES = -I$(top_builddir)/include \ $(WARN_CFLAGS) \ $(LIBVIRT_FEATURES) DEPS = libvirt.la -LDADDS = @STATIC_BINARIES@ $(WARN_CFLAGS) libvirt.la +LDADDS = @STATIC_BINARIES@ $(WARN_CFLAGS) libvirt.la ../gnulib/lib/libgnu.la VIRSH_LIBS = @VIRSH_LIBS@ confdir = $(sysconfdir)/libvirt/ @@ -61,7 +63,7 @@ SERVER_SOURCES = \ libvirt_la_SOURCES = $(CLIENT_SOURCES) $(SERVER_SOURCES) libvirt_la_LIBADD = $(LIBXML_LIBS) $(GNUTLS_LIBS) $(SASL_LIBS) \ - @CYGWIN_EXTRA_LIBADD@ + @CYGWIN_EXTRA_LIBADD@ ../gnulib/lib/libgnu.la libvirt_la_LDFLAGS = -Wl,--version-script=$(srcdir)/libvirt_sym.version \ -version-info @LIBVIRT_VERSION_INFO@ \ $(COVERAGE_CFLAGS:-f%=-Wc,-f%) \ diff --git a/src/conf.c b/src/conf.c index 635792c689..4c725bf046 100644 --- a/src/conf.c +++ b/src/conf.c @@ -8,7 +8,8 @@ * Daniel Veillard */ -#define _GNU_SOURCE /* want strndup ! */ +#include "config.h" + #include #include diff --git a/src/nodeinfo.c b/src/nodeinfo.c index a0a26eb16b..2ef49cb655 100644 --- a/src/nodeinfo.c +++ b/src/nodeinfo.c @@ -29,14 +29,14 @@ #include #include "nodeinfo.h" +#include "physmem.h" #ifdef __linux__ -#define MEMINFO_PATH "/proc/meminfo" #define CPUINFO_PATH "/proc/cpuinfo" /* NB, these are not static as we need to call them from testsuite */ -int linuxNodeInfoCPUPopulate(virConnectPtr conn, FILE *cpuinfo, virNodeInfoPtr nodeinfo); -int linuxNodeInfoMemPopulate(virConnectPtr conn, FILE *meminfo, virNodeInfoPtr nodeinfo); +int linuxNodeInfoCPUPopulate(virConnectPtr conn, FILE *cpuinfo, + virNodeInfoPtr nodeinfo); int linuxNodeInfoCPUPopulate(virConnectPtr conn, FILE *cpuinfo, virNodeInfoPtr nodeinfo) { char line[1024]; @@ -114,44 +114,11 @@ int linuxNodeInfoCPUPopulate(virConnectPtr conn, FILE *cpuinfo, virNodeInfoPtr n return 0; } - -int linuxNodeInfoMemPopulate(virConnectPtr conn, FILE *meminfo, - virNodeInfoPtr nodeinfo) { - char line[1024]; - - nodeinfo->memory = 0; - - while (fgets(line, sizeof(line), meminfo) != NULL) { - if (STREQLEN(line, "MemTotal:", 9)) { - char *p; - unsigned int ui; - if (xstrtol_ui(line + 10, &p, 10, &ui) == 0 - && (*p == '\0' || isspace(*p))) { - nodeinfo->memory = ui; - break; - } - } - } - if (!nodeinfo->memory) { - __virRaiseError(conn, NULL, NULL, 0, VIR_ERR_INTERNAL_ERROR, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, - "no memory found"); - return -1; - } - - return 0; -} - - #endif int virNodeInfoPopulate(virConnectPtr conn, virNodeInfoPtr nodeinfo) { struct utsname info; -#ifdef __linux__ - int ret; - FILE *cpuinfo, *meminfo; -#endif if (uname(&info) < 0) { __virRaiseError(conn, NULL, NULL, 0, VIR_ERR_INTERNAL_ERROR, @@ -164,7 +131,9 @@ int virNodeInfoPopulate(virConnectPtr conn, nodeinfo->model[sizeof(nodeinfo->model)-1] = '\0'; #ifdef __linux__ - cpuinfo = fopen(CPUINFO_PATH, "r"); + { + int ret; + FILE *cpuinfo = fopen(CPUINFO_PATH, "r"); if (!cpuinfo) { __virRaiseError(conn, NULL, NULL, 0, VIR_ERR_INTERNAL_ERROR, VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, @@ -176,17 +145,11 @@ int virNodeInfoPopulate(virConnectPtr conn, if (ret < 0) return -1; - meminfo = fopen(MEMINFO_PATH, "r"); - if (!meminfo) { - __virRaiseError(conn, NULL, NULL, 0, VIR_ERR_INTERNAL_ERROR, - VIR_ERR_ERROR, NULL, NULL, NULL, 0, 0, - "cannot open %s %s", MEMINFO_PATH, strerror(errno)); - return -1; - } - ret = linuxNodeInfoMemPopulate(conn, meminfo, nodeinfo); - fclose(meminfo); + /* Convert to KB. */ + nodeinfo->memory = physmem_total () / 1024; return ret; + } #else /* XXX Solaris will need an impl later if they port QEMU driver */ __virRaiseError(conn, NULL, NULL, 0, VIR_ERR_INTERNAL_ERROR, diff --git a/src/openvz_driver.c b/src/openvz_driver.c index f51725df66..7f6d0cd3d0 100644 --- a/src/openvz_driver.c +++ b/src/openvz_driver.c @@ -29,8 +29,6 @@ #include -#define _GNU_SOURCE /* for asprintf */ - #include #include #include diff --git a/src/qemu_driver.c b/src/qemu_driver.c index dfed446559..8c3e0af423 100644 --- a/src/qemu_driver.c +++ b/src/qemu_driver.c @@ -25,8 +25,6 @@ #ifdef WITH_QEMU -#define _GNU_SOURCE /* for asprintf */ - #include #include #include diff --git a/src/remote_internal.c b/src/remote_internal.c index edadc5622f..8be86abc78 100644 --- a/src/remote_internal.c +++ b/src/remote_internal.c @@ -21,8 +21,6 @@ * Author: Richard Jones */ -#define _GNU_SOURCE /* for asprintf */ - #include "config.h" #include @@ -55,6 +53,7 @@ #include "internal.h" #include "driver.h" +#include "getaddrinfo.h" #include "remote_internal.h" #include "remote_protocol.h" diff --git a/src/sexpr.c b/src/sexpr.c index 8412f22c26..97d5ca2c51 100644 --- a/src/sexpr.c +++ b/src/sexpr.c @@ -10,7 +10,7 @@ * archive for more details. */ -#define _GNU_SOURCE /* for strndup */ +#include "config.h" #include "sexpr.h" #include "internal.h" diff --git a/src/test.c b/src/test.c index e7f069cfa1..9926ac1735 100644 --- a/src/test.c +++ b/src/test.c @@ -25,8 +25,6 @@ #ifdef WITH_TEST -#define _GNU_SOURCE /* for asprintf */ - #include #include #include diff --git a/tests/Makefile.am b/tests/Makefile.am index cf96419ea7..bec8b05be6 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,6 +1,7 @@ ## Process this file with automake to produce Makefile.in -SUBDIRS = virshdata confdata sexpr2xmldata xml2sexprdata xmconfigdata xencapsdata +SUBDIRS = virshdata confdata sexpr2xmldata \ + xml2sexprdata xmconfigdata xencapsdata # Wierd libtool related juju... # @@ -11,6 +12,7 @@ SUBDIRS = virshdata confdata sexpr2xmldata xml2sexprdata xmconfigdata xencapsdat LIBVIRT = $(wildcard $(top_builddir)/src/.libs/libvirt_la-*.o) INCLUDES = \ + -I$(top_srcdir)/gnulib/lib -I../gnulib/lib \ -I$(top_builddir)/include \ -I$(top_builddir)/src \ -I$(top_srcdir)/include \ @@ -31,6 +33,7 @@ LDADDS = \ $(SASL_LIBS) \ $(WARN_CFLAGS) \ $(LIBVIRT) \ + ../gnulib/lib/libgnu.la \ $(COVERAGE_LDFLAGS) EXTRA_DIST = \ diff --git a/tests/nodeinfodata/linux-nodeinfo-1.txt b/tests/nodeinfodata/linux-nodeinfo-1.txt index 1a38ad1822..e52e20ab72 100644 --- a/tests/nodeinfodata/linux-nodeinfo-1.txt +++ b/tests/nodeinfodata/linux-nodeinfo-1.txt @@ -1 +1 @@ -CPUs: 2, MHz: 2800, Nodes: 1, Sockets: 1, Cores: 2, Threads: 1, Memory: 2053960 +CPUs: 2, MHz: 2800, Nodes: 1, Sockets: 1, Cores: 2, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-2.txt b/tests/nodeinfodata/linux-nodeinfo-2.txt index 1c31a0c82c..12e819ba7d 100644 --- a/tests/nodeinfodata/linux-nodeinfo-2.txt +++ b/tests/nodeinfodata/linux-nodeinfo-2.txt @@ -1 +1 @@ -CPUs: 2, MHz: 2211, Nodes: 1, Sockets: 1, Cores: 2, Threads: 1, Memory: 4059540 +CPUs: 2, MHz: 2211, Nodes: 1, Sockets: 1, Cores: 2, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-3.txt b/tests/nodeinfodata/linux-nodeinfo-3.txt index e2cc841172..d285781507 100644 --- a/tests/nodeinfodata/linux-nodeinfo-3.txt +++ b/tests/nodeinfodata/linux-nodeinfo-3.txt @@ -1 +1 @@ -CPUs: 4, MHz: 1595, Nodes: 1, Sockets: 2, Cores: 2, Threads: 1, Memory: 4059272 +CPUs: 4, MHz: 1595, Nodes: 1, Sockets: 2, Cores: 2, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-4.txt b/tests/nodeinfodata/linux-nodeinfo-4.txt index 2c75ea3552..991d4f93e0 100644 --- a/tests/nodeinfodata/linux-nodeinfo-4.txt +++ b/tests/nodeinfodata/linux-nodeinfo-4.txt @@ -1 +1 @@ -CPUs: 4, MHz: 1000, Nodes: 1, Sockets: 1, Cores: 4, Threads: 1, Memory: 4059272 +CPUs: 4, MHz: 1000, Nodes: 1, Sockets: 1, Cores: 4, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-5.txt b/tests/nodeinfodata/linux-nodeinfo-5.txt index 01fee523ac..dce7ada3e4 100644 --- a/tests/nodeinfodata/linux-nodeinfo-5.txt +++ b/tests/nodeinfodata/linux-nodeinfo-5.txt @@ -1 +1 @@ -CPUs: 4, MHz: 2814, Nodes: 1, Sockets: 2, Cores: 2, Threads: 1, Memory: 4059272 +CPUs: 4, MHz: 2814, Nodes: 1, Sockets: 2, Cores: 2, Threads: 1 diff --git a/tests/nodeinfodata/linux-nodeinfo-6.txt b/tests/nodeinfodata/linux-nodeinfo-6.txt index a7a2cfe5cf..75cdaa9722 100644 --- a/tests/nodeinfodata/linux-nodeinfo-6.txt +++ b/tests/nodeinfodata/linux-nodeinfo-6.txt @@ -1 +1 @@ -CPUs: 4, MHz: 1000, Nodes: 1, Sockets: 2, Cores: 2, Threads: 1, Memory: 4059272 +CPUs: 4, MHz: 1000, Nodes: 1, Sockets: 2, Cores: 2, Threads: 1 diff --git a/tests/nodeinfotest.c b/tests/nodeinfotest.c index 1caef11d98..969b85c5f0 100644 --- a/tests/nodeinfotest.c +++ b/tests/nodeinfotest.c @@ -16,14 +16,13 @@ static char *abs_top_srcdir; #ifdef __linux__ extern int linuxNodeInfoCPUPopulate(virConnectPtr conn, FILE *cpuinfo, virNodeInfoPtr nodeinfo); -extern int linuxNodeInfoMemPopulate(virConnectPtr conn, FILE *meminfo, virNodeInfoPtr nodeinfo); -static int linuxTestCompareFiles(const char *cpuinfofile, const char *meminfofile, const char *outputfile) { +static int linuxTestCompareFiles(const char *cpuinfofile, const char *outputfile) { char actualData[MAX_FILE]; char expectData[MAX_FILE]; char *expect = &expectData[0]; virNodeInfo nodeinfo; - FILE *cpuinfo, *meminfo; + FILE *cpuinfo; if (virtTestLoadFile(outputfile, &expect, MAX_FILE) < 0) return -1; @@ -37,19 +36,10 @@ static int linuxTestCompareFiles(const char *cpuinfofile, const char *meminfofil } fclose(cpuinfo); - meminfo = fopen(meminfofile, "r"); - if (!meminfo) - return -1; - if (linuxNodeInfoMemPopulate(NULL, meminfo, &nodeinfo) < 0) { - fclose(meminfo); - return -1; - } - fclose(meminfo); - snprintf(actualData, MAX_FILE, - "CPUs: %u, MHz: %u, Nodes: %u, Sockets: %u, Cores: %u, Threads: %u, Memory: %lu\n", + "CPUs: %u, MHz: %u, Nodes: %u, Sockets: %u, Cores: %u, Threads: %u\n", nodeinfo.cpus, nodeinfo.mhz, nodeinfo.nodes, nodeinfo.sockets, - nodeinfo.cores, nodeinfo.threads, nodeinfo.memory); + nodeinfo.cores, nodeinfo.threads); if (STRNEQ(actualData, expectData)) { if (getenv("DEBUG_TESTS")) { @@ -65,15 +55,12 @@ static int linuxTestCompareFiles(const char *cpuinfofile, const char *meminfofil static int linuxTestNodeInfo(const void *data) { char cpuinfo[PATH_MAX]; - char meminfo[PATH_MAX]; char output[PATH_MAX]; snprintf(cpuinfo, PATH_MAX, "%s/tests/nodeinfodata/linux-%s.cpuinfo", abs_top_srcdir, (const char*)data); - snprintf(meminfo, PATH_MAX, "%s/tests/nodeinfodata/linux-%s.meminfo", - abs_top_srcdir, (const char*)data); snprintf(output, PATH_MAX, "%s/tests/nodeinfodata/linux-%s.txt", abs_top_srcdir, (const char*)data); - return linuxTestCompareFiles(cpuinfo, meminfo, output); + return linuxTestCompareFiles(cpuinfo, output); } #endif