mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-11-03 20:01:16 +00:00
60da4a1148
Now that we have strong PRNG generator implemented in virRandomBytes() let's use that instead of gnulib's random_r. Problem with the latter is in way we seed it: current UNIX time and libvirtd's PID are not that random as one might think. Imagine two hosts booting at the same time. There's a fair chance that those hosts spawn libvirtds at the same time and with the same PID. This will result in both daemons generating the same sequence of say MAC addresses [1]. 1: https://www.redhat.com/archives/libvirt-users/2018-May/msg00097.html Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
199 lines
3.3 KiB
Plaintext
199 lines
3.3 KiB
Plaintext
# Bootstrap configuration.
|
|
|
|
# Copyright (C) 2010-2014 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, see
|
|
# <http://www.gnu.org/licenses/>.
|
|
|
|
# gnulib modules used by this package.
|
|
gnulib_modules='
|
|
accept
|
|
areadlink
|
|
autobuild
|
|
base64
|
|
bind
|
|
bitrotate
|
|
byteswap
|
|
c-ctype
|
|
c-strcase
|
|
c-strcasestr
|
|
calloc-posix
|
|
canonicalize-lgpl
|
|
chown
|
|
clock-time
|
|
close
|
|
connect
|
|
configmake
|
|
count-leading-zeros
|
|
count-one-bits
|
|
dirname-lgpl
|
|
environ
|
|
execinfo
|
|
fclose
|
|
fcntl
|
|
fcntl-h
|
|
fdatasync
|
|
ffs
|
|
ffsl
|
|
fnmatch
|
|
fsync
|
|
func
|
|
getaddrinfo
|
|
getcwd-lgpl
|
|
gethostname
|
|
getopt-posix
|
|
getpass
|
|
getpeername
|
|
getsockname
|
|
gettimeofday
|
|
gitlog-to-changelog
|
|
gnumakefile
|
|
ignore-value
|
|
inet_pton
|
|
intprops
|
|
ioctl
|
|
isatty
|
|
largefile
|
|
ldexp
|
|
listen
|
|
localeconv
|
|
maintainer-makefile
|
|
manywarnings
|
|
mgetgroups
|
|
mkdtemp
|
|
mkostemp
|
|
mkostemps
|
|
mktempd
|
|
net_if
|
|
netdb
|
|
nonblocking
|
|
openpty
|
|
passfd
|
|
perror
|
|
physmem
|
|
pipe-posix
|
|
pipe2
|
|
poll
|
|
posix-shell
|
|
pthread
|
|
pthread_sigmask
|
|
recv
|
|
regex
|
|
sched
|
|
secure_getenv
|
|
send
|
|
setenv
|
|
setsockopt
|
|
sigaction
|
|
sigpipe
|
|
snprintf
|
|
socket
|
|
stat-time
|
|
stdarg
|
|
stpcpy
|
|
strchrnul
|
|
strdup-posix
|
|
strndup
|
|
strerror
|
|
strerror_r-posix
|
|
strptime
|
|
strsep
|
|
strtok_r
|
|
sys_stat
|
|
sys_wait
|
|
termios
|
|
time_r
|
|
timegm
|
|
ttyname_r
|
|
uname
|
|
unsetenv
|
|
useless-if-before-free
|
|
usleep
|
|
vasprintf
|
|
verify
|
|
vc-list-files
|
|
vsnprintf
|
|
waitpid
|
|
warnings
|
|
'
|
|
|
|
SKIP_PO=true
|
|
|
|
# Enable copy-mode for MSYS/MinGW. MSYS' ln doesn't work well in the way
|
|
# bootstrap uses it with relative paths.
|
|
if test -n "$MSYSTEM"; then
|
|
copy=true
|
|
fi
|
|
|
|
|
|
# Tell gnulib to:
|
|
# require LGPLv2+
|
|
# apply any local diffs in gnulib/local/ dir
|
|
# put *.m4 files in m4/ dir
|
|
# put *.[ch] files in new gnulib/lib/ dir
|
|
# import gnulib tests in new gnulib/tests/ dir
|
|
gnulib_name=libgnu
|
|
m4_base=m4
|
|
source_base=gnulib/lib
|
|
tests_base=gnulib/tests
|
|
gnulib_tool_option_extras="\
|
|
--lgpl=2\
|
|
--with-tests\
|
|
--makefile-name=gnulib.mk\
|
|
--avoid=pt_chown\
|
|
--avoid=lock-tests\
|
|
"
|
|
local_gl_dir=gnulib/local
|
|
|
|
# Build prerequisites
|
|
# Note that some of these programs are only required for 'make dist' to
|
|
# succeed from a fresh git checkout; not all of these programs are
|
|
# required to run 'make dist' on a tarball.
|
|
buildreq="\
|
|
autoconf 2.59
|
|
automake 1.9.6
|
|
git 1.5.5
|
|
gzip -
|
|
libtool -
|
|
patch -
|
|
perl 5.5
|
|
pkg-config -
|
|
rpcgen -
|
|
tar -
|
|
xmllint -
|
|
xsltproc -
|
|
"
|
|
|
|
# Automake requires that ChangeLog and AUTHORS exist.
|
|
touch AUTHORS ChangeLog || exit 1
|
|
|
|
# Override bootstrap's list - we don't use mdate-sh or texinfo.tex.
|
|
gnulib_extra_files="
|
|
build-aux/install-sh
|
|
build-aux/depcomp
|
|
build-aux/config.guess
|
|
build-aux/config.sub
|
|
doc/INSTALL
|
|
"
|
|
|
|
|
|
bootstrap_post_import_hook()
|
|
{
|
|
# Change paths in gnulib/tests/gnulib.mk from "../../.." to "../..",
|
|
# and make tests conditional by changing "TESTS" to "GNULIB_TESTS".
|
|
m=gnulib/tests/gnulib.mk
|
|
sed 's,\.\./\.\./\.\.,../..,g; s/^TESTS /GNULIB_TESTS /' $m > $m-t
|
|
mv -f $m-t $m
|
|
}
|