mirror of
https://https.git.savannah.gnu.org/git/diffutils.git
synced 2026-01-27 01:44:20 +00:00
* bootstrap.conf (gnulib_modules): Add vararrays. (needed_gnulib_files, unnecessary_gettext_files): New vars. (bootstrap_post_import_hook): New function, to implement these vars. (excluded_files): Remove; 'bootstrap' no longer supports this. Its function is now performed by unnecessary_gettext_files. (buildreq): Update automake to 1.12.2, to avoid CVE-2012-3386. * configure.ac (AM_GNU_GETTEXT_VERSION): Bump from 0.17 to 0.18.2, to lessen the probability that we'll have outlandishly old files during a build. * m4/vararrays.m4: Remove from repository, as we now use the gnulib version.
180 lines
3.8 KiB
Plaintext
180 lines
3.8 KiB
Plaintext
# Bootstrap configuration.
|
|
|
|
# Copyright (C) 2006-2013 Free Software Foundation, Inc.
|
|
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 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 General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
|
# gnulib modules used by this package.
|
|
gnulib_modules='
|
|
announce-gen
|
|
binary-io
|
|
c-stack
|
|
config-h
|
|
diffseq
|
|
dirname
|
|
do-release-commit-and-tag
|
|
dup2
|
|
error
|
|
exclude
|
|
exitfail
|
|
extensions
|
|
fcntl
|
|
fdl
|
|
file-type
|
|
filenamecat
|
|
fnmatch-gnu
|
|
getopt
|
|
gettext-h
|
|
gettime
|
|
git-version-gen
|
|
gitlog-to-changelog
|
|
gnu-make
|
|
gnu-web-doc-update
|
|
gnumakefile
|
|
gnupload
|
|
hard-locale
|
|
inttostr
|
|
inttypes
|
|
largefile
|
|
lstat
|
|
maintainer-makefile
|
|
manywarnings
|
|
mbrtowc
|
|
mkstemp
|
|
mktime
|
|
progname
|
|
propername
|
|
readme-release
|
|
regex
|
|
sh-quote
|
|
signal
|
|
stat
|
|
stat-macros
|
|
stat-time
|
|
stdint
|
|
strcase
|
|
strftime
|
|
strptime
|
|
strtoumax
|
|
sys_wait
|
|
system-quote
|
|
unistd
|
|
unlocked-io
|
|
update-copyright
|
|
vararrays
|
|
verify
|
|
version-etc
|
|
version-etc-fsf
|
|
wcwidth
|
|
xalloc
|
|
xfreopen
|
|
xreadlink
|
|
xstrtoumax
|
|
xvasprintf
|
|
'
|
|
|
|
# Additional xgettext options to use. Use "\\\newline" to break lines.
|
|
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
|
|
--from-code=UTF-8\\\
|
|
--flag=asprintf:2:c-format --flag=vasprintf:2:c-format\\\
|
|
--flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format\\\
|
|
--flag=message:1:c-format --flag=message5:1:c-format\\\
|
|
--flag=try_help:1:c-format\\\
|
|
'
|
|
|
|
# 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
|
|
|
|
needed_gnulib_files=
|
|
unnecessary_gettext_files=
|
|
|
|
if test $gettext_external = 1; then
|
|
# Gettext supplies these files, but we don't need them since
|
|
# we don't have an intl subdirectory.
|
|
unnecessary_gettext_files='
|
|
m4/glibc2.m4
|
|
m4/intdiv0.m4
|
|
m4/intl.m4
|
|
m4/intldir.m4
|
|
m4/intmax.m4
|
|
m4/lcmessage.m4
|
|
m4/lock.m4
|
|
m4/printf-posix.m4
|
|
m4/threadlib.m4
|
|
m4/uintmax_t.m4
|
|
m4/visibility.m4
|
|
'
|
|
|
|
# Gettext supplies these files, but the gnulib version of these files
|
|
# typically is more up-to-date. We don't use gnulib's gettext module,
|
|
# as it's too heavyweight, so grab the files one at a time instead.
|
|
needed_gnulib_files='
|
|
m4/gettext.m4
|
|
m4/intlmacosx.m4
|
|
m4/nls.m4
|
|
m4/po.m4
|
|
m4/progtest.m4
|
|
'
|
|
fi
|
|
|
|
gnulib_tool_option_extras="--tests-base=gnulib-tests --with-tests
|
|
--avoid=localename
|
|
--avoid=lock
|
|
--symlink
|
|
--makefile-name=gnulib.mk
|
|
"
|
|
|
|
# Build prerequisites
|
|
buildreq="\
|
|
autoconf 2.61
|
|
automake 1.12.2
|
|
autopoint -
|
|
gettext -
|
|
git 1.4.4
|
|
gzip -
|
|
help2man -
|
|
makeinfo -
|
|
perl 5.5
|
|
rsync -
|
|
tar -
|
|
"
|
|
|
|
# Automake requires that ChangeLog exist.
|
|
touch ChangeLog || exit 1
|
|
|
|
bootstrap_post_import_hook()
|
|
{
|
|
for file in $needed_gnulib_files; do
|
|
echo "$0: $gnulib_tool --copy-file $file $file ..."
|
|
$gnulib_tool --copy-file $file $file || exit
|
|
done
|
|
rm -f $unnecessary_gettext_files || exit
|
|
}
|
|
|
|
bootstrap_epilogue()
|
|
{
|
|
perl -pi -e "s/\@PACKAGE\@/$package/g" README-release
|
|
}
|