mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-11 23:37:42 +00:00
14b4b1e2cb
I noticed that in a fresh checkout, autogen.sh generated the following output, but continued on with execution: autoreconf: running: automake --add-missing --copy --force-missing gnulib/tests/Makefile.am:28: TESTS was already defined in condition TRUE, which includes condition WITH_EXPENSIVE_TESTS ... gnulib/tests/gnulib.mk:28: ... `TESTS' previously defined here gnulib/tests/Makefile.am:19: `gnulib/tests/gnulib.mk' included from here and after the run, line 28 of gnulib.mk lists GNULIB_TESTS, not TESTS. After more investigation, I found that it is because gnulib bootstrap provides two hooks, one before automake, and the other after; we used the one that ran after, and were then rerunning automake ourselves; and the warning was from the first run. But a manual second run is pointless if we use the right hook in the first place. The wrong function name has been latent since commit 38c9440, and we tried to work around it in commit 6cbab7c, but it took commit 70363ea to finally change output enough for me to realize the root cause. * bootstrap.conf (bootstrap_epilogue): Rename... (bootstrap_post_import_hook): ...so that it gets run before automake. Signed-off-by: Eric Blake <eblake@redhat.com>
252 lines
5.2 KiB
Plaintext
252 lines
5.2 KiB
Plaintext
# Bootstrap configuration.
|
|
|
|
# Copyright (C) 2010-2013 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-one-bits
|
|
crypto/md5
|
|
crypto/sha256
|
|
dirname-lgpl
|
|
environ
|
|
execinfo
|
|
fclose
|
|
fcntl
|
|
fcntl-h
|
|
fdatasync
|
|
ffs
|
|
ffsl
|
|
fnmatch
|
|
fsync
|
|
func
|
|
getaddrinfo
|
|
getcwd-lgpl
|
|
gethostname
|
|
getpass
|
|
getpeername
|
|
getsockname
|
|
gettext-h
|
|
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
|
|
random_r
|
|
sched
|
|
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
|
|
useless-if-before-free
|
|
usleep
|
|
vasprintf
|
|
verify
|
|
vc-list-files
|
|
vsnprintf
|
|
waitpid
|
|
warnings
|
|
'
|
|
|
|
# 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
|
|
|
|
# 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
|
|
|
|
# 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+
|
|
# apply any local diffs in gnulib/local/ dir
|
|
# 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_tool_option_extras="\
|
|
--lgpl=2\
|
|
--with-tests\
|
|
--makefile-name=gnulib.mk\
|
|
--avoid=pt_chown\
|
|
--avoid=lock-tests\
|
|
"
|
|
local_gl_dir=gnulib/local
|
|
|
|
# Convince bootstrap to use multiple m4 directories.
|
|
: ${ACLOCAL=aclocal}
|
|
ACLOCAL="$ACLOCAL -I m4"
|
|
export ACLOCAL
|
|
|
|
# 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. As a special case, we want
|
|
# to require the equivalent of the Fedora python-devel package, but
|
|
# RHEL 5 lacks the witness python-config package; we hack around that
|
|
# old environment below.
|
|
buildreq="\
|
|
autoconf 2.59
|
|
automake 1.9.6
|
|
autopoint -
|
|
gettext 0.17
|
|
git 1.5.5
|
|
gzip -
|
|
libtool -
|
|
patch -
|
|
perl 5.5
|
|
pkg-config -
|
|
python-config -
|
|
rpcgen -
|
|
tar -
|
|
xmllint -
|
|
xsltproc -
|
|
"
|
|
# Use rpm as a fallback to bypass the bootstrap probe for python-config,
|
|
# for the sake of RHEL 5; without requiring it on newer systems that
|
|
# have python-config to begin with.
|
|
if `(${PYTHON_CONFIG-python-config} --version;
|
|
test $? -lt 126 || rpm -q python-devel) >/dev/null 2>&1`; then
|
|
PYTHON_CONFIG=true
|
|
fi
|
|
|
|
# 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
|
|
}
|