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