mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-24 14:45:24 +00:00
aa2f6f96dd
The current code for "nodeinfo" is pretty naive about socket and thread information. To determine the sockets, it just takes the number of cpus and divides by the number of cores. For the thread count, it always sets it to 1. With more recent Intel machines, however, hyperthreading is again an option, meaning that these heuristics no longer work and give bogus numbers. This patch goes through /sys to get the additional information so we properly report it. Note that I had to edit the tests not to report on socket and thread counts, since these are determined dynamically now. v2: As pointed out by Eric Blake, gnulib provides count-one-bits (which is LGPLv2+). Use it instead of a hand-coded popcnt. Signed-off-by: Chris Lalancette <clalance@redhat.com>
147 lines
3.3 KiB
Plaintext
147 lines
3.3 KiB
Plaintext
# Bootstrap configuration.
|
|
|
|
# Copyright (C) 2010 Red Hat, Inc.
|
|
|
|
# This library is free software; you can redistribute it and/or
|
|
# modify it under the terms of the GNU Lesser General Public
|
|
# License as published by the Free Software Foundation; either
|
|
# version 2.1 of the License, or (at your option) any later version.
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
|
|
# You should have received a copy of the GNU Lesser General Public
|
|
# License along with this library; if not, write to the Free Software
|
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
|
|
# gnulib modules used by this package.
|
|
gnulib_modules='
|
|
areadlink
|
|
base64
|
|
c-ctype
|
|
canonicalize-lgpl
|
|
close
|
|
connect
|
|
count-one-bits
|
|
dirname-lgpl
|
|
getaddrinfo
|
|
gethostname
|
|
getpass
|
|
gettext
|
|
gitlog-to-changelog
|
|
gnumakefile
|
|
ignore-value
|
|
inet_pton
|
|
ioctl
|
|
maintainer-makefile
|
|
mkstemp
|
|
mktempd
|
|
perror
|
|
physmem
|
|
poll
|
|
posix-shell
|
|
recv
|
|
random_r
|
|
send
|
|
setsockopt
|
|
socket
|
|
stpcpy
|
|
strchrnul
|
|
strndup
|
|
strerror
|
|
strsep
|
|
sys_stat
|
|
time_r
|
|
useless-if-before-free
|
|
vasprintf
|
|
verify
|
|
vc-list-files
|
|
'
|
|
|
|
# Additional xgettext options to use. Use "\\\newline" to break lines.
|
|
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
|
|
--flag=virAsprintf:2:c-format\\\
|
|
--from-code=UTF-8\\\
|
|
'
|
|
|
|
# This is not a GNU package, so the default bug address is invalid,
|
|
# and the translation project is not in use.
|
|
MSGID_BUGS_ADDRESS=libvir-list@redhat.com
|
|
COPYRIGHT_HOLDER='Red Hat, Inc.'
|
|
SKIP_PO=true
|
|
|
|
# If "AM_GNU_GETTEXT(external" or "AM_GNU_GETTEXT([external]"
|
|
# appears in configure.ac, exclude some unnecessary files.
|
|
# Without grep's -E option (not portable enough, pre-configure),
|
|
# the following test is ugly. Also, this depends on the existence
|
|
# of configure.ac, not the obsolescent-named configure.in. But if
|
|
# you're using this infrastructure, you should care about such things.
|
|
|
|
gettext_external=0
|
|
grep '^[ ]*AM_GNU_GETTEXT(external\>' configure.ac > /dev/null &&
|
|
gettext_external=1
|
|
grep '^[ ]*AM_GNU_GETTEXT(\[external\]' configure.ac > /dev/null &&
|
|
gettext_external=1
|
|
|
|
if test $gettext_external = 1; then
|
|
# Gettext supplies these files, but we don't need them since
|
|
# we don't have an intl subdirectory.
|
|
excluded_files='
|
|
m4/glibc2.m4
|
|
m4/intdiv0.m4
|
|
m4/lcmessage.m4
|
|
m4/uintmax_t.m4
|
|
m4/ulonglong.m4
|
|
m4/visibility.m4
|
|
'
|
|
fi
|
|
|
|
# Tell gnulib to:
|
|
# require LGPLv2+
|
|
# put *.m4 files in new gnulib/m4/ dir
|
|
# put *.[ch] files in new gnulib/lib/ dir.
|
|
# import gnulib tests in new gnulib/tests/ dir.
|
|
gnulib_name=libgnu
|
|
m4_base=gnulib/m4
|
|
source_base=gnulib/lib
|
|
tests_base=gnulib/tests
|
|
gnulib_mk=Makefile.am
|
|
gnulib_tool_option_extras="\
|
|
--lgpl=2\
|
|
--with-tests\
|
|
"
|
|
|
|
# Convince bootstrap to use multiple m4 directories.
|
|
: ${ACLOCAL=aclocal}
|
|
ACLOCAL="$ACLOCAL -I gnulib/m4"
|
|
export ACLOCAL
|
|
|
|
# Build prerequisites
|
|
buildreq="\
|
|
autoconf 2.59
|
|
automake 1.9.6
|
|
autopoint -
|
|
gettext -
|
|
git 1.5.5
|
|
gzip -
|
|
libtool -
|
|
perl 5.5
|
|
rsync -
|
|
tar -
|
|
"
|
|
|
|
# Automake requires that ChangeLog exist.
|
|
touch ChangeLog || exit 1
|
|
|
|
|
|
bootstrap_epilogue()
|
|
{
|
|
# Change paths in gnulib/tests/Makefile.am from "../../.." to "../..".
|
|
m=gnulib/tests/Makefile.am
|
|
sed 's,\.\./\.\./\.\.,../..,g' $m > $m-t
|
|
mv -f $m-t $m
|
|
}
|