3 dnl Process this file with autoconf to produce a configure script.
5 AM_INIT_AUTOMAKE(mdsms, 1.5.3)
6 AM_CONFIG_HEADER(config.h)
9 dnl Configuration switches.
11 AC_MSG_CHECKING([whether debugging is requested])
13 [ --enable-debug enable debugging output to stderr],
14 enable_debug=$enableval, enable_debug=no)
15 AC_MSG_RESULT($enable_debug)
17 AC_MSG_CHECKING([whether included getopt is requested])
18 AC_ARG_WITH(included-getopt,
19 [ --with-included-getopt use included getopt(3)],
20 with_getopt=$withval, with_getopt=no)
21 AC_MSG_RESULT($with_getopt)
23 AC_MSG_CHECKING([for user-specified lock directory])
24 AC_ARG_WITH(lock-directory,
25 [ --with-lock-directory override default search for modem lock directory],
26 with_lock_directory=$withval, with_lock_directory=)
27 AC_MSG_RESULT($with_lock_directory)
30 [ --without-efence disable use of Electric Fence in maintainer-mode],
31 efence=$withval, efence=yes)
33 dnl Checks for programs.
35 if test "$USE_MAINTAINER_MODE" = yes;then
36 if test "$GCC" = yes;then
37 CFLAGS="$CFLAGS -Wall -ansi -pedantic -ggdb3"
38 if test x$efence != xno;then
39 AC_CHECK_LIB(efence, EF_Exit)
49 dnl Checks for pathnames.
53 AC_CHECK_HEADERS(libintl.h)
55 AC_MSG_CHECKING([for modem lock directory])
57 if test "$with_lock_directory" = no;then
58 AC_MSG_RESULT([user disabled])
60 if test yes = "$with_lock_directory" \
61 -o -z "$with_lock_directory";then
62 for dira in /usr /var ;do
63 for dirb in /spool "" ;do
64 for dirc in /uucp /locks /lock;do
65 dir="${dira}${dirb}${dirc}"
66 if test -d "$dir";then dirx="$dir";fi
68 if test -z "$dirx";then
69 AC_MSG_RESULT([none found, disabled])
71 AC_MSG_RESULT([$dirx])
74 dirx="$with_lock_directory"
75 if test -d "$dirx";then AC_MSG_RESULT([$dirx])
76 else AC_MSG_RESULT([warning - directory doesn't exist: $dirx])
80 if test -z "$dirx";then AC_DEFINE(DEF_LOCKFILE,[""])
81 else AC_DEFINE_UNQUOTED(DEF_LOCKFILE,"${dirx}/LCK..%s")
84 dnl Checks for libraries.
86 dnl Checks for header files.
89 dnl Checks for typedefs, structures, and compiler characteristics.
94 dnl Checks for library functions.
96 if test "$with_getopt" = no;then
97 AC_CHECK_FUNCS(getopt_long)
100 if test "$enable_debug" = yes;then
104 AC_MSG_CHECKING(whether to use included getopt)
105 if test "$with_getopt" = yes -o "$ac_cv_func_getopt_long" != yes ;then
108 AC_LIBSOURCE(getopt.h)
110 else AC_MSG_RESULT(no)
113 AC_CHECK_HEADERS(assert.h ctype.h errno.h fcntl.h limits.h signal.h stdarg.h)
114 AC_CHECK_HEADERS(stdio.h stdlib.h string.h sys/poll.h sys/stat.h sys/time.h)
115 AC_CHECK_HEADERS(sys/types.h sys/wait.h termios.h time.h unistd.h)
117 AC_MSG_CHECKING([for LINE_MAX])
121 #endif], [LINE_MAX;],
122 AC_DEFINE(HAVE_LINE_MAX) AC_MSG_RESULT(yes),
123 AC_DEFINE(LINE_MAX, 4096) AC_MSG_RESULT(no))
125 AC_MSG_CHECKING([for CBAUD])
127 #ifdef HAVE_TERMIOS_H
130 AC_DEFINE(HAVE_CBAUD) AC_MSG_RESULT(yes),
131 AC_DEFINE(CBAUD, 0) AC_MSG_RESULT(no))
133 AC_MSG_CHECKING([for CBAUDEX])
135 #ifdef HAVE_TERMIOS_H
138 AC_DEFINE(HAVE_CBAUDEX) AC_MSG_RESULT(yes),
139 AC_DEFINE(CBAUDEX, 0) AC_MSG_RESULT(no))
141 AC_MSG_CHECKING([for CRTSCTS])
143 #ifdef HAVE_TERMIOS_H
146 AC_DEFINE(HAVE_CRTSCTS) AC_MSG_RESULT(yes),[
147 if test "$USE_MAINTAINER_MODE" = yes ;then
148 AC_DEFINE(HAVE_CRTSCTS) AC_MSG_RESULT(faked for maintainer)
149 # from "RedHat: glibc-devel-2.2-5/bits/termios.h"
150 AC_DEFINE(CRTSCTS, 020000000000)
152 AC_DEFINE(CRTSCTS, 0) AC_MSG_RESULT(no)
156 AC_MSG_CHECKING([for _POSIX_VDISABLE])
161 #ifdef HAVE_TERMIOS_H
163 #endif], [_POSIX_VDISABLE;],
164 AC_DEFINE(HAVE__POSIX_VDISABLE) AC_MSG_RESULT(yes),[
165 AC_DEFINE(_POSIX_VDISABLE, ['\0']) AC_MSG_RESULT(no)
168 AC_MSG_CHECKING([for FD_SETSIZE])
170 #ifdef HAVE_SYS_TIME_H
171 #include <sys/time.h>
173 #ifdef HAVE_SYS_TYPES_H
174 #include <sys/types.h>
178 #endif], [FD_SETSIZE;],
179 AC_DEFINE(HAVE_FD_SETSIZE) AC_MSG_RESULT(yes),
182 AC_MSG_CHECKING([for unused attribute])
184 for un in __unused__ unused;do
186 unx="__attribute__ (($un))"
190 #endif],[char untest $unx;],
191 AC_DEFINE_UNQUOTED(ATTR_UNUSED, $unx)
196 if $uns;then AC_DEFINE(ATTR_UNUSED,) AC_MSG_RESULT(no);fi
198 AC_MSG_CHECKING([for printf style attribute])
203 void testf(char *fmt,...) __attribute__((format(printf,1,2)));
204 void testf(char *fmt,...) {}], [testf("%d",1);],
205 AC_DEFINE(HAVE_PRINTFORMAT) AC_MSG_RESULT(yes),
209 AC_MSG_CHECKING([for offsetof macro])
214 struct x { int a; };], [return(offsetof(struct x,a));],
215 AC_DEFINE(HAVE_OFFSETOF) AC_MSG_RESULT(yes),
219 AC_CHECK_FUNC(snprintf, AC_DEFINE(HAVE_SNPRINTF))
220 AC_CHECK_FUNC(vsnprintf, AC_DEFINE(HAVE_VSNPRINTF))
222 dnl FIXME: select(3) missing here but what to do anyway
223 AC_CHECK_FUNCS(siginterrupt strerror strchr strrchr memmove atexit strcasecmp poll)
228 dnl FIXME: mktime(3) missing here
229 AC_REPLACE_FUNCS(strdup usleep)
231 GCC_NEED_DECLARATION(gethostname,[
235 GCC_NEED_DECLARATION(kill,[
236 #ifdef HAVE_SYS_TYPES_H
237 #include <sys/types.h>
242 GCC_NEED_DECLARATION(snprintf,[
246 GCC_NEED_DECLARATION(vsnprintf,[
253 GCC_NEED_DECLARATION(strdup,[
257 GCC_NEED_DECLARATION(usleep,[
261 GCC_NEED_DECLARATION(strcasecmp,[
265 GCC_NEED_DECLARATION(siginterrupt,[
269 GCC_NEED_DECLARATION(popen,[
273 GCC_NEED_DECLARATION(pclose,[
277 GCC_NEED_DECLARATION(gettext,[
278 #ifdef HAVE_LIBINTL_H
284 if test "$ACLOCAL" = "aclocal";then
285 ACLOCAL="$ACLOCAL -I ."
294 dnl FIXME: Why is "po/POTFILES" being substituted?
295 echo mdsms.c >po/POTFILES.in