# Bootstrap configuration.
-# Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2006-2012 Free Software Foundation, Inc.
-# This program is free software; you can redistribute it and/or modify
+# 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, or (at your option)
-# any later version.
+# 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
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# We don't need these modules, even though gnulib-tool mistakenly
-# includes them because of gettext and fchdir dependencies.
+# We don't need these modules.
avoided_gnulib_modules='
- --avoid=lock
- --avoid=size_max
- --avoid=xsize
- --avoid=canonicalize-lgpl
-'
-
-# These modules are obsolete and can probably be removed soon,
-# but leave them in for now to minimize changes.
-obsolete_gnulib_modules='
- atexit free memchr memcmp memcpy memmove memset rename
- strcspn strtod strtol utime
+ --avoid=dummy
'
# gnulib modules used by this package.
gnulib_modules="
- $avoided_gnulib_modules
- $obsolete_gnulib_modules
- alloca announce-gen assert
- calloc config-h configmake
- closeout
- fdl
- gettext
- git-version-gen
- gitlog-to-changelog
- gnumakefile gnupload
- inttypes
- lib-ignore
- long-options
- malloc
- realloc
- rpmatch
- safe-read
- stdbool
- version-etc-fsf
+ $avoided_gnulib_modules
+ alloca
+ announce-gen
+ argmatch
+ assert
+ c-ctype
+ c-strcase
+ calloc-gnu
+ canonicalize-lgpl
+ close
+ closeout
+ config-h
+ configmake
+ dirname
+ do-release-commit-and-tag
+ fdl
+ fsync
+ gettext-h
+ git-version-gen
+ gitlog-to-changelog
+ gnu-web-doc-update
+ gnumakefile
+ gnupload
+ inttypes
+ lib-ignore
+ long-options
+ lseek
+ maintainer-makefile
+ malloc-gnu
+ manywarnings
+ mkstemp
+ mktempd
+ progname
+ realloc-gnu
+ rpmatch
+ safe-read
+ stdbool
+ strdup-posix
+ unlink
+ update-copyright
+ useless-if-before-free
+ usleep
+ vc-list-files
+ version-etc-fsf
+ warnings
+ xstrtol
+ xstrtoll
"
# 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=asprintf:2:c-format\\\
+ --flag=asnprintf:3:c-format\\\
+ --flag=error:3:c-format\\\
+ --flag=error_at_line:5:c-format\\\
+ --flag=vasprintf:2:c-format\\\
+ --flag=vasnprintf:3:c-format\\\
--flag=wrapf:1:c-format\\\
+ --flag=xasprintf:1:c-format\\\
+ --flag=xfprintf:2:c-format\\\
+ --flag=xprintf:1:c-format\\\
'
-# 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/lock.m4
- m4/printf-posix.m4
- m4/size_max.m4
- m4/uintmax_t.m4
- m4/ulonglong.m4
- m4/visibility.m4
- m4/xsize.m4
+# Append these, since we use the propername module.
+see_manual='"This is a proper name. See the gettext manual, section Names."'
+see_manual=\'"$see_manual"\'
+XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
+ --keyword=proper_name:1,'"$see_manual"'\\\
+ --keyword=proper_name_utf8:1,'"$see_manual"'\\\
'
-# If there is no ChangeLog file, create it.
-if test -d .git; then
- test -e ChangeLog ||
- git log --pretty=medium | fold -s > ChangeLog
+# 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/lock.m4
+ m4/uintmax_t.m4
+ m4/ulonglong.m4
+ m4/visibility.m4
+ '
fi
+
+gnulib_tool_option_extras="--tests-base=gnulib-tests --with-tests --symlink\
+ --makefile-name=gnulib.mk
+"
+mkdir -p gnulib-tests
+
+# Build prerequisites
+buildreq="\
+autoconf 2.61
+automake 1.11
+autopoint -
+bc -
+gettext -
+git 1.4.4
+gperf 3.0.3
+gzip -
+makeinfo -
+perl 5.5
+rsync -
+tar -
+"
+
+# Automake requires that ChangeLog exist.
+touch ChangeLog || exit 1
+
+gnulib_name=libgnulib