# Bootstrap configuration.

# Copyright (C) 2006-2008 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/>.


# We don't need these modules, even though gnulib-tool mistakenly
# includes them because of gettext and fchdir dependencies.
avoided_gnulib_modules='
	--avoid=lock
	--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 memchr memcmp memcpy memmove memset rename
	strcspn strtod strtol utime
'

# gnulib modules used by this package.
gnulib_modules="
	$avoided_gnulib_modules
	$obsolete_gnulib_modules
	acl alloca announce-gen argmatch assert
	autobuild
	backupfile base64
	c-strcase c-strtod
	c-strtold calloc canonicalize chown cloexec
	config-h configmake
	closein closeout
	crypto/md5
	crypto/sha1
	crypto/sha256
	crypto/sha512
	cycle-check
	d-ino d-type diacrit dirfd dirname dup2
	error exclude exitfail fchdir fcntl fcntl-safer fdl
	file-type fileblocks filemode filenamecat fnmatch-gnu
	fopen-safer
	fprintftime
	fseeko
	fsusage ftruncate
	ftello
	fts getdate getgroups gethrxtime
	getline getloadavg getndelim2 getopt getpagesize getpass-gnu
	gettext gettime gettimeofday
	git-version-gen
	gitlog-to-changelog
	gnu-make gnumakefile gnupload
	hard-locale hash hash-pjw host-os human idcache
	inttostr inttypes isapipe
	lchmod lchown lib-ignore linebuffer link-follow
	long-options lstat malloc mbswidth memcasecmp mempcpy
	memrchr 
	mkancesdirs mkdir mkdir-p mkstemp mktime modechange
	mountlist mpsort obstack pathmax perl
	posix-shell
	posixtm
	posixver
	propername
	putenv
	quote quotearg raise readlink areadlink-with-size
	randint
	randperm
	readtokens
	readtokens0 readutmp
	realloc rename-dest-slash rmdir rmdir-errno
	root-dev-ino
	rpmatch
	safe-read same
	save-cwd savedir savewd
	settime sig2str ssize_t stat-macros
	stat-time stdbool stdlib-safer stpcpy
	stpncpy
	strftime
	strpbrk strtoimax strtoumax strverscmp sys_stat timespec tzset
	unicodeio unistd-safer unlink-busy unlinkdir unlocked-io
	uptime
	useless-if-before-free
	userspec utimecmp utimens
	vasprintf-posix
	vc-list-files
	verify version-etc-fsf
	wcwidth winsz-ioctl winsz-termios write-any-file
	xalloc xgetcwd
	xmemcoll xnanosleep
	xprintf
	xprintf-posix
	xstrtod xstrtoimax
	xstrtol xstrtold xstrtoumax
"

# Other locale categories that need message catalogs.
EXTRA_LOCALE_CATEGORIES=LC_TIME

# Additional xgettext options to use.  Use "\\\newline" to break lines.
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
 --from-code=UTF-8\\\
 --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\\\
'

# 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 "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=$bt/gnulib-tests --with-tests"

# Automake requires that ChangeLog exist.
touch ChangeLog
