1 | # Configure template for GNU tar.
|
---|
2 |
|
---|
3 | # Copyright (C) 1991, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
|
---|
4 | # 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
---|
5 |
|
---|
6 | # This program is free software; you can redistribute it and/or modify
|
---|
7 | # it under the terms of the GNU General Public License as published by
|
---|
8 | # the Free Software Foundation; either version 2, or (at your option)
|
---|
9 | # any later version.
|
---|
10 |
|
---|
11 | # This program is distributed in the hope that it will be useful,
|
---|
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
14 | # GNU General Public License for more details.
|
---|
15 |
|
---|
16 | # You should have received a copy of the GNU General Public License
|
---|
17 | # along with this program; if not, write to the Free Software
|
---|
18 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
---|
19 | # 02110-1301, USA.
|
---|
20 |
|
---|
21 | AC_INIT([GNU tar], [1.16.1], [bug-tar@gnu.org])
|
---|
22 | AC_CONFIG_SRCDIR([src/tar.c])
|
---|
23 | AC_CONFIG_AUX_DIR([build-aux])
|
---|
24 | AC_CONFIG_HEADERS([config.h:config.hin])
|
---|
25 | AC_PREREQ([2.60])
|
---|
26 | AM_INIT_AUTOMAKE([1.9 gnits tar-ustar dist-bzip2 dist-shar std-options])
|
---|
27 |
|
---|
28 | AC_PROG_CC
|
---|
29 | AC_EXEEXT
|
---|
30 | AC_PROG_RANLIB
|
---|
31 | AC_PROG_YACC
|
---|
32 | gl_EARLY
|
---|
33 |
|
---|
34 | AC_SYS_LARGEFILE
|
---|
35 | AC_ISC_POSIX
|
---|
36 | AC_C_INLINE
|
---|
37 |
|
---|
38 | AC_CHECK_HEADERS_ONCE(fcntl.h linux/fd.h memory.h net/errno.h \
|
---|
39 | sgtty.h string.h stropts.h \
|
---|
40 | sys/param.h sys/device.h sys/filio.h sys/gentape.h \
|
---|
41 | sys/inet.h sys/io/trioctl.h \
|
---|
42 | sys/mtio.h sys/time.h sys/tprintf.h sys/tape.h \
|
---|
43 | unistd.h locale.h)
|
---|
44 |
|
---|
45 | AC_CHECK_HEADERS([sys/buf.h], [], [],
|
---|
46 | [#if HAVE_SYS_PARAM_H
|
---|
47 | #include <sys/param.h>
|
---|
48 | #endif])
|
---|
49 |
|
---|
50 | AC_HEADER_SYS_WAIT
|
---|
51 | AM_STDBOOL_H
|
---|
52 |
|
---|
53 | AC_HEADER_DIRENT
|
---|
54 | AC_HEADER_MAJOR
|
---|
55 | AC_HEADER_STAT
|
---|
56 | AC_HEADER_STDC
|
---|
57 |
|
---|
58 | AC_MSG_CHECKING([for st_fstype string in struct stat])
|
---|
59 | AC_CACHE_VAL(diff_cv_st_fstype_string,
|
---|
60 | [AC_TRY_COMPILE([#include <sys/types.h>
|
---|
61 | #include <sys/stat.h>], [struct stat s; s.st_fstype[0] = 'x';],
|
---|
62 | diff_cv_st_fstype_string=yes,
|
---|
63 | diff_cv_st_fstype_string=no)])
|
---|
64 | AC_MSG_RESULT($diff_cv_st_fstype_string)
|
---|
65 | if test $diff_cv_st_fstype_string = yes; then
|
---|
66 | AC_DEFINE(HAVE_ST_FSTYPE_STRING, 1,
|
---|
67 | [Define if struct stat has a char st_fstype[] member.])
|
---|
68 | fi
|
---|
69 |
|
---|
70 | AC_TYPE_SIGNAL
|
---|
71 | AC_TYPE_MODE_T
|
---|
72 | AC_TYPE_PID_T
|
---|
73 | AC_TYPE_OFF_T
|
---|
74 | AC_TYPE_SIZE_T
|
---|
75 | AC_TYPE_UID_T
|
---|
76 | AC_CHECK_TYPE(major_t, , AC_DEFINE(major_t, int,
|
---|
77 | [Type of major device numbers.]))
|
---|
78 | AC_CHECK_TYPE(minor_t, , AC_DEFINE(minor_t, int,
|
---|
79 | [Type of minor device numbers.]))
|
---|
80 | AC_CHECK_TYPE(dev_t, unsigned)
|
---|
81 | AC_CHECK_TYPE(ino_t, unsigned)
|
---|
82 |
|
---|
83 | gt_TYPE_SSIZE_T
|
---|
84 |
|
---|
85 | # gnulib modules
|
---|
86 | gl_INIT
|
---|
87 | # paxutils modules
|
---|
88 | tar_PAXUTILS
|
---|
89 |
|
---|
90 | AC_CHECK_FUNCS(fsync getdtablesize lstat mkfifo readlink strerror symlink setlocale utimes)
|
---|
91 | AC_CHECK_DECLS([getgrgid],,, [#include <grp.h>])
|
---|
92 | AC_CHECK_DECLS([getpwuid],,, [#include <pwd.h>])
|
---|
93 | AC_CHECK_DECLS([time],,, [#include <time.h>])
|
---|
94 |
|
---|
95 | AC_REPLACE_FUNCS(waitpid)
|
---|
96 |
|
---|
97 | AC_CACHE_CHECK(for remote shell, tar_cv_path_RSH,
|
---|
98 | [if test -n "$RSH"; then
|
---|
99 | tar_cv_path_RSH=$RSH
|
---|
100 | else
|
---|
101 | tar_cv_path_RSH=no
|
---|
102 | for ac_file in /usr/ucb/rsh /usr/bin/remsh /usr/bin/rsh /usr/bsd/rsh \
|
---|
103 | /usr/bin/nsh /usr/bin/rcmd
|
---|
104 | do
|
---|
105 | # Prefer a non-symlink rsh to a symlink one, so that binaries built
|
---|
106 | # on AIX 4.1.4, where /usr/ucb/rsh is a symlink to /usr/bin/rsh
|
---|
107 | # will run on AIX 4.3.0, which has only /usr/bin/rsh.
|
---|
108 | if test -f $ac_file; then
|
---|
109 | if (test -h $ac_file) 2>/dev/null; then
|
---|
110 | test $tar_cv_path_RSH = no && tar_cv_path_RSH=$ac_file
|
---|
111 | else
|
---|
112 | tar_cv_path_RSH=$ac_file
|
---|
113 | break
|
---|
114 | fi
|
---|
115 | fi
|
---|
116 | done
|
---|
117 | fi])
|
---|
118 | if test $tar_cv_path_RSH = no; then
|
---|
119 | AC_CHECK_HEADERS(netdb.h)
|
---|
120 | else
|
---|
121 | AC_DEFINE_UNQUOTED(REMOTE_SHELL, "$tar_cv_path_RSH",
|
---|
122 | [Define to the full path of your rsh, if any.])
|
---|
123 | fi
|
---|
124 |
|
---|
125 | AC_MSG_CHECKING(for default archive format)
|
---|
126 |
|
---|
127 | AC_ARG_VAR([DEFAULT_ARCHIVE_FORMAT],
|
---|
128 | [Set the default archive format. Allowed values are: V7, OLDGNU, USTAR, POSIX, GNU. Default is GNU])
|
---|
129 |
|
---|
130 | if test -z "$DEFAULT_ARCHIVE_FORMAT"; then
|
---|
131 | DEFAULT_ARCHIVE_FORMAT="GNU"
|
---|
132 | fi
|
---|
133 | case $DEFAULT_ARCHIVE_FORMAT in
|
---|
134 | V7|OLDGNU|USTAR|POSIX|GNU) ;;
|
---|
135 | *) AC_MSG_ERROR(Invalid format name);;
|
---|
136 | esac
|
---|
137 | AC_DEFINE_UNQUOTED(DEFAULT_ARCHIVE_FORMAT, ${DEFAULT_ARCHIVE_FORMAT}_FORMAT,
|
---|
138 | [By default produce archives of this format])
|
---|
139 | AC_MSG_RESULT($DEFAULT_ARCHIVE_FORMAT)
|
---|
140 |
|
---|
141 | AC_MSG_CHECKING(for default archive)
|
---|
142 |
|
---|
143 | AC_ARG_VAR([DEFAULT_ARCHIVE],
|
---|
144 | [Set the name of the default archive (default: -)])
|
---|
145 | if test -z "$DEFAULT_ARCHIVE"; then
|
---|
146 | DEFAULT_ARCHIVE=-
|
---|
147 | else
|
---|
148 | if test -z "`ls $DEFAULT_ARCHIVE 2>/dev/null`"; then
|
---|
149 | AC_MSG_WARN(DEFAULT_ARCHIVE \`$DEFAULT_ARCHIVE' not found on this system)
|
---|
150 | fi
|
---|
151 | # FIXME: Look for DEFTAPE in <sys/mtio.h>.
|
---|
152 | # FIXME: Let DEVICE_PREFIX be configured from the environment.
|
---|
153 | # FIXME: Rearrange, here.
|
---|
154 | case $DEFAULT_ARCHIVE in
|
---|
155 | *[[0-7][lmh]])
|
---|
156 | AC_DEFINE(DENSITY_LETTER, 1,
|
---|
157 | [Define to 1 if density may be indicated by [lmh] at end of device.])
|
---|
158 | device_prefix=`echo $DEFAULT_ARCHIVE | sed 's/[0-7][lmh]$//'`
|
---|
159 | ;;
|
---|
160 | *[[0-7]])
|
---|
161 | device_prefix=`echo $DEFAULT_ARCHIVE | sed 's/[0-7]$//'`
|
---|
162 | ;;
|
---|
163 | *)
|
---|
164 | device_prefix=
|
---|
165 | ;;
|
---|
166 | esac
|
---|
167 | case "$device_prefix" in
|
---|
168 | ?*)
|
---|
169 | AC_DEFINE_UNQUOTED(DEVICE_PREFIX, "$device_prefix",
|
---|
170 | [Define to a string giving the prefix of the default device, without the part specifying the unit and density.])
|
---|
171 | ;;
|
---|
172 | esac
|
---|
173 | fi
|
---|
174 | AC_DEFINE_UNQUOTED(DEFAULT_ARCHIVE, "$DEFAULT_ARCHIVE",
|
---|
175 | [Define to a string giving the full name of the default archive file.])
|
---|
176 | AC_MSG_RESULT($DEFAULT_ARCHIVE)
|
---|
177 |
|
---|
178 | AC_ARG_VAR([DEFAULT_BLOCKING],
|
---|
179 | [Define default blocking factor (default: 20)])
|
---|
180 | AC_MSG_CHECKING(for default blocking)
|
---|
181 | DEFAULT_BLOCKING=${DEFAULT_BLOCKING-20}
|
---|
182 | AC_DEFINE_UNQUOTED(DEFAULT_BLOCKING, $DEFAULT_BLOCKING,
|
---|
183 | [Define to a number giving the default blocking size for archives.])
|
---|
184 | AC_MSG_RESULT($DEFAULT_BLOCKING)
|
---|
185 |
|
---|
186 | AC_MSG_CHECKING(for default quoting style)
|
---|
187 |
|
---|
188 | m4_define([QUOTING_STYLES],dnl
|
---|
189 | [literal|shell|shell-always|c|escape|locale|clocale])
|
---|
190 | DEFAULT_QUOTING_STYLE="escape"
|
---|
191 | AC_ARG_VAR([DEFAULT_QUOTING_STYLE],
|
---|
192 | [Set the default quoting style. Allowed values are: ] m4_bpatsubst(QUOTING_STYLES,[|], [[, ]]) [. Default is "escape".])
|
---|
193 |
|
---|
194 | case $DEFAULT_QUOTING_STYLE in
|
---|
195 | QUOTING_STYLES) ;;
|
---|
196 | *) AC_MSG_ERROR(Invalid quoting style);;
|
---|
197 | esac
|
---|
198 | AC_MSG_RESULT($DEFAULT_QUOTING_STYLE)
|
---|
199 | DEFAULT_QUOTING_STYLE=`echo ${DEFAULT_QUOTING_STYLE}|sed 's/-/_/g'`_quoting_style
|
---|
200 | AC_DEFINE_UNQUOTED(DEFAULT_QUOTING_STYLE, $DEFAULT_QUOTING_STYLE,
|
---|
201 | [Define to a default quoting style (see lib/quoteargs.c for the list)])
|
---|
202 |
|
---|
203 | # Iconv
|
---|
204 | AM_ICONV
|
---|
205 | AC_CHECK_HEADERS(iconv.h)
|
---|
206 | AC_CHECK_TYPE(iconv_t,:,
|
---|
207 | AC_DEFINE(iconv_t, int,
|
---|
208 | [Conversion descriptor type]),
|
---|
209 | [
|
---|
210 | #ifdef HAVE_ICONV_H
|
---|
211 | # include <iconv.h>
|
---|
212 | #endif
|
---|
213 | ])
|
---|
214 |
|
---|
215 | # Gettext.
|
---|
216 | AM_GNU_GETTEXT([external], [need-formatstring-macros])
|
---|
217 | AM_GNU_GETTEXT_VERSION([0.16])
|
---|
218 |
|
---|
219 | # Initialize the test suite.
|
---|
220 | AC_CONFIG_TESTDIR(tests)
|
---|
221 | AC_CONFIG_FILES([tests/Makefile tests/atlocal]) # FIXME: tests/preset?
|
---|
222 | AM_MISSING_PROG([AUTOM4TE], [autom4te])
|
---|
223 |
|
---|
224 | AC_SUBST(BACKUP_LIBEXEC_SCRIPTS)
|
---|
225 | AC_SUBST(BACKUP_SBIN_SCRIPTS)
|
---|
226 | AC_ARG_ENABLE(backup-scripts,
|
---|
227 | AC_HELP_STRING([--enable-backup-scripts],
|
---|
228 | [Create and install backup and restore scripts]),
|
---|
229 | [case $enableval in
|
---|
230 | yes) BACKUP_LIBEXEC_SCRIPTS='$(BACKUP_LIBEXEC_SCRIPTS_LIST)'
|
---|
231 | BACKUP_SBIN_SCRIPTS='$(BACKUP_SBIN_SCRIPTS_LIST)'
|
---|
232 | ;;
|
---|
233 | esac])
|
---|
234 |
|
---|
235 | AC_SUBST(BACKUP_SED_COND)
|
---|
236 | if date +%Y-%m-%d 2>/dev/null >&2; then
|
---|
237 | BACKUP_SED_COND='/^\#ELSE_DATE_FORMAT_OK/,/^\#ENDIF_DATE_FORMAT_OK/d;/^\#IF_DATE_FORMAT_OK/d'
|
---|
238 | else
|
---|
239 | BACKUP_SED_COND='/^\#IF_DATE_FORMAT_OK/,/^\#ELSE_DATE_FORMAT_OK/d;/^\#ENDIF_DATE_FORMAT_OK/d'
|
---|
240 | fi
|
---|
241 |
|
---|
242 | AC_OUTPUT([Makefile\
|
---|
243 | doc/Makefile\
|
---|
244 | lib/Makefile\
|
---|
245 | po/Makefile.in\
|
---|
246 | scripts/Makefile\
|
---|
247 | rmt/Makefile\
|
---|
248 | src/Makefile])
|
---|