configure.in 6.28 KB
Newer Older
1
dnl $Id: configure.in,v 1.34 1996/07/30 14:30:34 ceder Exp $
2
dnl Configuration for LysKOM
3
dnl Copyright (C) 1993, 1994, 1995  Lysator Academic Computer Association.
Per Cederqvist's avatar
Per Cederqvist committed
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2, or (at your option)
dnl any later version.
dnl
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
dnl GNU General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
dnl
dnl Please mail bug reports to bug-lyskom@lysator.liu.se. 
dnl
21
AC_REVISION($Revision: 1.34 $)
Per Cederqvist's avatar
Per Cederqvist committed
22
AC_INIT(src/server/lyskomd.h)
Per Cederqvist's avatar
Per Cederqvist committed
23
24
25
26
AC_ARG_WITH([gnu-malloc],
	[  --with-gnu-malloc       use GNU malloc],
	[use_gnu_malloc=$withval],
	[use_gnu_malloc=no])
27
AC_PREFIX_DEFAULT(/usr/lyskom)
Per Cederqvist's avatar
Per Cederqvist committed
28
AC_PROG_CC
Per Cederqvist's avatar
Per Cederqvist committed
29
AC_SUBST(CFLAGS)
Per Cederqvist's avatar
Per Cederqvist committed
30
AC_SUBST(CPPFLAGS)
Per Cederqvist's avatar
Per Cederqvist committed
31
AC_SUBST(LDFLAGS)
Per Cederqvist's avatar
Per Cederqvist committed
32
AC_SUBST(DEPENDFLAG)
33
34
AC_SUBST(INCLUDE_CURRENT)
INCLUDE_CURRENT=-I.
35
36
37
AC_AIX
AC_ISC_POSIX
AC_MINIX
Per Cederqvist's avatar
Per Cederqvist committed
38
[if test -n "$GCC"; then
39
	CFLAGS="$CFLAGS -Wall"
40
41
	] AC_DEFINE(_GNU_SOURCE)
	KOM_COMPILER_CC_ACCEPTS([-pipe]) [
Per Cederqvist's avatar
Per Cederqvist committed
42
43
44
45
	DEPENDFLAG=-MM
else
	case "$CC" in
		*vcc) DEPENDFLAG=-Em
46
			INCLUDE_CURRENT='-I`pwd`';;
Per Cederqvist's avatar
Per Cederqvist committed
47
48
		*) DEPENDFLAG=-M;;
	esac
49
fi]
Per Cederqvist's avatar
Per Cederqvist committed
50
51
AC_MSG_CHECKING([flag to get dependencies])
AC_MSG_RESULT([$DEPENDFLAG])
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82

# Do this test early since it may define _POSIX_SOURCE, which may
# affect future tests.
AC_MSG_CHECKING([if <signal.h> defines struct sigaction])
AC_CACHE_VAL([kom_cv_header_posix_source_needed],
	[# This default may be overridden below.
	kom_cv_header_posix_source_needed=no])
AC_CACHE_VAL([kom_cv_struct_sigaction],
AC_TRY_COMPILE([#include <signal.h>],
[struct sigaction foosig;],
[kom_cv_struct_sigaction=yes],
[kom_cv_struct_sigaction=no])
[if test $kom_cv_struct_sigaction = no ; then]
  AC_TRY_COMPILE(
  [#define _POSIX_SOURCE
  #include <signal.h>],
  [struct sigaction barsig;],
  [kom_cv_struct_sigaction=yes
  kom_cv_header_posix_source_needed=yes],
  [kom_cv_struct_sigaction=no])
[fi])
[if test $kom_cv_header_posix_source_needed = yes ; then]
  AC_MSG_RESULT([yes, but _POSIX_SOURCE was needed])
  AC_DEFINE(_POSIX_SOURCE)
[else]
  AC_MSG_RESULT($kom_cv_struct_sigaction)
[fi]
[if test $kom_cv_struct_sigaction = yes ; then]
  AC_DEFINE(HAVE_STRUCT_SIGACTION)
[fi]

Per Cederqvist's avatar
Per Cederqvist committed
83
84
AC_C_CONST
AC_HEADER_STDC
Per Cederqvist's avatar
Per Cederqvist committed
85
AC_TYPE_PID_T
Per Cederqvist's avatar
Per Cederqvist committed
86
87
88
AC_MSG_CHECKING([if _HPUX_SOURCE needs to be defined])
AC_CACHE_VAL([kom_cv_sys_hpux_source],
[AC_TRY_LINK(
89
[#include <sys/types.h>
Per Cederqvist's avatar
Per Cederqvist committed
90
91
92
93
94
#include <sys/socket.h>],
[struct sockaddr foo;],
[kom_cv_sys_hpux_source=no], dnl IF FOUND
[dnl IF NOT FOUND
AC_TRY_LINK(
Per Cederqvist's avatar
Per Cederqvist committed
95
[#define _HPUX_SOURCE
96
#include <sys/types.h>
Per Cederqvist's avatar
Per Cederqvist committed
97
98
99
100
101
102
103
104
#include <sys/socket.h>],
[struct sockaddr foo;],
[kom_cv_sys_hpux_source=yes],
[kom_cv_sys_hpux_source=no])])])
AC_MSG_RESULT($kom_cv_sys_hpux_source)
[if test $kom_cv_sys_hpux_source = yes ; then]
  AC_DEFINE(_HPUX_SOURCE)
[fi]
105
106
107
108
109
110
111
112
113
114
AC_MSG_CHECKING([if the compiler understands __attribute__ ((format))])
AC_CACHE_VAL([kom_cv_c_attribute_format_printf],
[AC_TRY_COMPILE([extern void log (const char *f, ...) 
__attribute__ ((format (printf, 1, 2)));],,
[kom_cv_c_attribute_format_printf=yes],
[kom_cv_c_attribute_format_printf=no])])
AC_MSG_RESULT($kom_cv_c_attribute_format_printf)
[if test $kom_cv_c_attribute_format_printf = yes ; then]
  AC_DEFINE(HAVE_ATTRIBUTE_FORMAT_PRINTF)
[fi]
115
AC_SUBST(SRCTOPDIR)
116
[SRCTOPDIR=`cd $srcdir;pwd`]
117
AC_SUBST(BUILDTOPDIR)
118
[BUILDTOPDIR=`pwd`]
Per Cederqvist's avatar
Per Cederqvist committed
119
AC_CONFIG_AUX_DIR(scripts)
Per Cederqvist's avatar
Per Cederqvist committed
120
121
122
AC_PROG_INSTALL
AC_PROG_RANLIB
AC_PROG_AWK
Per Cederqvist's avatar
Per Cederqvist committed
123
AC_PROG_LN_S
Per Cederqvist's avatar
Per Cederqvist committed
124
125
AC_PROG_YACC
AC_PROG_LEX
Per Cederqvist's avatar
Per Cederqvist committed
126
127
128
AC_CHECK_PROGS(SED, sed)
AC_CHECK_HEADERS(string.h memory.h strings.h sys/param.h sys/time.h)
AC_CHECK_HEADERS(stdarg.h stdlib.h stddef.h locale.h sys/resource.h)
129
AC_CHECK_HEADERS(crypt.h unistd.h)
Per Cederqvist's avatar
Per Cederqvist committed
130
131
132
133
AC_HEADER_TIME
AC_FUNC_ALLOCA
AC_CHECK_LIB(resolv,main) dnl Host name lookup.
AC_CHECK_LIB(authuser,auth_tcpuser3) dnl User authentication according to RFC 931.
Per Cederqvist's avatar
Per Cederqvist committed
134
AC_CHECK_LIB(nsl,gethostbyname) dnl Low-level networking code on Solaris 2.
135
AC_CHECK_LIB(socket,socket) dnl socket() et c on Solaris 2.
Per Cederqvist's avatar
Per Cederqvist committed
136
137
138
AC_CHECK_LIB(i,setlocale) dnl For setlocale() on Ultrix.
AC_CHECK_FUNCS(difftime getdtablesize sysconf strchr getcwd vfprintf)
AC_CHECK_FUNCS(setrlimit)
Per Cederqvist's avatar
Per Cederqvist committed
139
AC_REPLACE_FUNCS(memcpy strerror remove memset memchr setsid)
Per Cederqvist's avatar
Per Cederqvist committed
140
141
142
143
144
145
dnl
dnl I don't know how to test for buggy inet_ntoa functions
dnl programmatically, but the supplied substitute should always work,
dnl so we define BUGGY_INET_NTOA unconditionally.
AC_DEFINE(BUGGY_INET_NTOA)
dnl
Per Cederqvist's avatar
Per Cederqvist committed
146
147
148
149
150
151
152
153
154
155
156
157
158
159
AC_SUBST(GNUMALLOC)
GNUMALLOC=
[if [ "$use_gnu_malloc" = "yes" ]]
[then]
	AC_DEFINE(USE_GNU_MALLOC)
dnl	This is only needed on SunOS 4 machines, but it does not
dnl	do much harm on other system.  This causes GNU malloc to
dnl	unconditionally treat malloc(x) as malloc(16) if x<16.
dnl	FIXME: find a proper check for if this is really needed.
	AC_DEFINE(SUNOS_LOCALTIME_BUG)
dnl
dnl	GNU Malloc also needs these:
dnl
	AC_CHECK_FUNCS(getpagesize)
160
	AC_CHECK_FUNC(memmove,,AC_DEFINE(MEMMOVE_MISSING))
Per Cederqvist's avatar
Per Cederqvist committed
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
	AC_CHECK_HEADERS(unistd.h)
dnl
dnl	AC_USG is obsolete, but GNU malloc still uses it.
dnl
	AC_USG
dnl
dnl	AC_HEADER_STDC  -- already provided
dnl	Tell the Makefiles that we want GNU Malloc.
dnl
	GNUMALLOC=gnumalloc
[else]
dnl	Make sure that the GNU malloc header and library are not left
dnl	from a previous build attempt
	[rm -f include/malloc.h lib/libgmalloc*.a]
[fi]
dnl
Per Cederqvist's avatar
Per Cederqvist committed
177
178
179
180
181
182
183
184
dnl Unencryptet passwords are no longer supported.
AC_DEFINE(ENCRYPT_PASSWORDS)
dnl
dnl Once upon a time, the server shared some code with the tty-client.
dnl Because of that, you still have to define SERVER while compiling
dnl some of the files in this package.  Nowadays sharing is done by copying.
AC_DEFINE(SERVER)
dnl
185
186
187
dnl Tests for GNU getopt (used in dbck)
AC_CHECK_HEADERS(alloca.h)
dnl
Per Cederqvist's avatar
Per Cederqvist committed
188
189
190
191
192
193
194
195
196
197
198
199
200
201
AC_OUTPUT(Makefile
doc/Makefile
doc/man/Makefile
scripts/Makefile
src/Makefile
src/include/Makefile
src/include/server/Makefile
src/libraries/Makefile
src/libraries/libansi/Makefile
src/libraries/libcommon/Makefile
src/libraries/libisc-new/Makefile
src/libraries/libisc-new/src/Makefile
src/libraries/libmisc/Makefile
src/libraries/regex/Makefile
Per Cederqvist's avatar
Per Cederqvist committed
202
src/libraries/gnumalloc/Makefile
203
204
src/server/Makefile
run-support/Makefile)