maint: use gnulib's gettext-h, not the gettext module
[coreutils.git] / bootstrap.conf
blob92385281403f4710b3548246e5c559fd44539f0f
1 # Bootstrap configuration.
3 # Copyright (C) 2006-2011 Free Software Foundation, Inc.
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
19 # We don't need these modules.
20 avoided_gnulib_modules='
21   --avoid=canonicalize-lgpl
22   --avoid=dummy
25 # gnulib modules used by this package.
26 gnulib_modules="
27   $avoided_gnulib_modules
28   acl
29   alignof
30   alloca
31   announce-gen
32   areadlink-with-size
33   argmatch
34   argv-iter
35   assert
36   autobuild
37   backupfile
38   base64
39   c-strcase
40   c-strtod
41   c-strtold
42   calloc-gnu
43   canon-host
44   canonicalize
45   chown
46   cloexec
47   closein
48   closeout
49   config-h
50   configmake
51   crypto/md5
52   crypto/sha1
53   crypto/sha256
54   crypto/sha512
55   cycle-check
56   d-ino
57   d-type
58   di-set
59   diacrit
60   dirfd
61   dirname
62   do-release-commit-and-tag
63   dtoastr
64   dup2
65   environ
66   error
67   euidaccess
68   exclude
69   exitfail
70   faccessat
71   fadvise
72   fchdir
73   fchmodat
74   fchownat
75   fclose
76   fcntl
77   fcntl-safer
78   fdl
79   fdutimensat
80   file-type
81   fileblocks
82   filemode
83   filenamecat
84   filevercmp
85   fnmatch-gnu
86   fopen-safer
87   fprintftime
88   freopen
89   freopen-safer
90   fseeko
91   fstatat
92   fsusage
93   fsync
94   ftello
95   ftoastr
96   fts
97   full-read
98   full-write
99   getgroups
100   gethrxtime
101   getline
102   getloadavg
103   getndelim2
104   getopt-gnu
105   getpagesize
106   getpass-gnu
107   gettext-h
108   gettime
109   gettimeofday
110   getugroups
111   getusershell
112   git-version-gen
113   gitlog-to-changelog
114   gnu-make
115   gnu-web-doc-update
116   gnumakefile
117   gnupload
118   group-member
119   hard-locale
120   hash
121   hash-pjw
122   heap
123   host-os
124   human
125   idcache
126   ignore-value
127   inttostr
128   inttypes
129   isapipe
130   isblank
131   largefile
132   lchmod
133   lchown
134   ldtoastr
135   lib-ignore
136   linebuffer
137   link
138   link-follow
139   linkat
140   long-options
141   lstat
142   maintainer-makefile
143   malloc-gnu
144   manywarnings
145   mbrlen
146   mbrtowc
147   mbsalign
148   mbswidth
149   memcasecmp
150   memchr
151   memcmp2
152   mempcpy
153   memrchr
154   mgetgroups
155   mkancesdirs
156   mkdir
157   mkdir-p
158   mkstemp
159   mktime
160   modechange
161   mountlist
162   mpsort
163   netinet_in
164   nproc
165   obstack
166   parse-datetime
167   perl
168   physmem
169   posix-shell
170   posixtm
171   posixver
172   priv-set
173   progname
174   propername
175   pthread
176   putenv
177   quote
178   quotearg
179   randint
180   randperm
181   read-file
182   readlink
183   readtokens
184   readtokens0
185   readutmp
186   realloc-gnu
187   regex
188   remove
189   rename
190   rmdir
191   root-dev-ino
192   rpmatch
193   safe-read
194   same
195   save-cwd
196   savedir
197   savewd
198   selinux-at
199   settime
200   sig2str
201   sigaction
202   ssize_t
203   stat-macros
204   stat-size
205   stat-time
206   stdbool
207   stdlib-safer
208   stpcpy
209   stpncpy
210   strdup-posix
211   strftime
212   strsignal
213   strtod
214   strtoimax
215   strtoumax
216   symlink
217   sys_ioctl
218   sys_stat
219   sys_wait
220   termios
221   timer-time
222   timespec
223   tzset
224   uname
225   unicodeio
226   unistd-safer
227   unlinkat
228   unlink-busy
229   unlocked-io
230   unsetenv
231   update-copyright
232   uptime
233   useless-if-before-free
234   userspec
235   utimecmp
236   utimens
237   vasprintf-posix
238   vc-list-files
239   verify
240   verror
241   version-etc-fsf
242   wcwidth
243   wcswidth
244   winsz-ioctl
245   winsz-termios
246   write-any-file
247   xalloc
248   xfreopen
249   xgetcwd
250   xgetgroups
251   xgethostname
252   xmemcoll
253   xnanosleep
254   xprintf
255   xprintf-posix
256   xreadlink
257   xstrtod
258   xstrtoimax
259   xstrtol
260   xstrtold
261   xstrtoumax
262   yesno
265 # Other locale categories that need message catalogs.
266 EXTRA_LOCALE_CATEGORIES=LC_TIME
268 # Additional xgettext options to use.  Use "\\\newline" to break lines.
269 XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
270  --flag=asnprintf:3:c-format\\\
271  --flag=asprintf:2:c-format\\\
272  --flag=error:3:c-format\\\
273  --flag=error_at_line:5:c-format\\\
274  --flag=vasnprintf:3:c-format\\\
275  --flag=vasprintf:2:c-format\\\
276  --flag=verror:3:c-format\\\
277  --flag=verror_at_line:5:c-format\\\
278  --flag=wrapf:1:c-format\\\
279  --flag=xasprintf:1:c-format\\\
280  --flag=xfprintf:2:c-format\\\
281  --flag=xprintf:1:c-format\\\
282  --from-code=UTF-8\\\
285 # Append these, since we use the propername module.
286 see_manual='"This is a proper name. See the gettext manual, section Names."'
287 see_manual=\'"$see_manual"\'
288 XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
289  --keyword=proper_name:1,'"$see_manual"'\\\
290  --keyword=proper_name_utf8:1,'"$see_manual"'\\\
293 gnulib_tool_option_extras="--tests-base=$bt/gnulib-tests --with-tests"
295 # Build prerequisites
296 buildreq="\
297 autoconf   2.62
298 automake   1.11.1
299 autopoint  -
300 bison      -
301 gettext    0.17
302 git        1.4.4
303 gperf      -
304 gzip       -
305 makeinfo   4.13
306 patch      -
307 perl       5.5
308 rsync      -
309 tar        -
310 xz         -
313 # Automake requires that ChangeLog exist.
314 touch ChangeLog || exit 1
316 bootstrap_epilogue()
318   # Change paths in gnulib-tests/gnulib.mk from "../.." to "..".
319   m=gnulib-tests/gnulib.mk
320   sed 's,\.\./\.\.,..,g' $m > $m-t
321   mv -f $m-t $m
323   # Since this is a "GNU" package, replace this line
324   #   if LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null \
325   #      | grep -v 'libtool:' >/dev/null; then
326   # with this:
327   #   if true; then
328   # Why?  That pipeline searches all files in $(top_srcdir), and if you
329   # happen to have large files (or apparently large sparse files), the
330   # first grep may well run out of memory.
331   perl -pi -e 's/if LC_ALL=C grep .GNU .PACKAGE.*; then/if true; then/' \
332     po/Makefile.in.in
334   # Install our git hooks, as long as "cp" accepts the --backup option,
335   # so that we can back up any existing files.
336   case $(cp --help) in *--backup*) backup=1;; *) backup=0;; esac
337   if test $backup = 1; then
338     hooks=$(cd scripts/git-hooks && git ls-files)
339     for f in $hooks; do
340       # If it is identical, skip it.
341       cmp scripts/git-hooks/$f .git/hooks/$f > /dev/null \
342         && continue
343       cp --backup=numbered scripts/git-hooks/$f .git/hooks
344       chmod a-w .git/hooks/$f
345     done
346   fi