summaryrefslogtreecommitdiff
path: root/configure.in
blob: 61a1b411d22b71ed8f9706f7ef45197f5a060bf3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
dnl Process this file with autoconf to produce a configure script.
AC_INIT(server/server.c)

test -d h || mkdir h
test -d h/zephyr || mkdir h/zephyr

test -z "$lbindir" && lbindir='${bindir}'
test -z "$lsbindir" && lsbindir='${sbindir}'
AC_SUBST(lbindir)
AC_SUBST(lsbindir)

AC_CANONICAL_SYSTEM
AC_DEFINE_UNQUOTED(MACHINE_TYPE, "$host")

dnl Checks for programs.
AC_PROG_CC
AC_PROG_YACC
AC_PROG_LEX
AC_PROG_INSTALL
AC_PROG_RANLIB

AC_MSG_CHECKING(location of temporary directory)
if test -d /var/tmp; then
	found_tmp=/var/tmp/
elif test -d /usr/tmp; then
	found_tmp=/usr/tmp/
else
	found_tmp=/tmp/
fi
AC_DEFINE_UNQUOTED(FOUND_TMP, "${found_tmp}")
AC_MSG_RESULT(${found_tmp})

dnl Checks for header files.
AC_PATH_XTRA
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(fcntl.h paths.h termios.h sgtty.h unistd.h libgen.h malloc.h)
AC_CHECK_HEADERS(sys/filio.h sys/ioctl.h sys/time.h sys/file.h sys/utsname.h)
AC_CHECK_HEADERS(sys/select.h sys/msgbuf.h sys/cdefs.h)

if test "$no_x" != "yes"; then
	XCLIENTS=xzwrite
	ZWGC_LIBX11=-lX11
fi
AC_SUBST(XCLIENTS)
AC_SUBST(ZWGC_LIBX11)

dnl Checks for typedefs, structures, and compiler characteristics.
AC_TYPE_SIGNAL
AC_TYPE_UID_T
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(long)
AC_MSG_CHECKING(for 32-bit integer type)
if test "$ac_cv_sizeof_long" = 4; then
	int32=long
elif test "$ac_cv_sizeof_int" = 4; then
	int32=int
elif test "$ac_cv_sizeof_short" = 4; then
	int32=short
else
	AC_WARN([Can't find 32-bit type, using long])
	int32=long
fi
AC_DEFINE_UNQUOTED(ZEPHYR_INT32, ${int32})
AC_MSG_RESULT(${int32})

AC_CHECK_LIB(w, wslen)
AC_CHECK_LIB(dl, dlopen)

# If we can't find connect, try looking in -lsocket and -lnsl.  The
# Irix 5 libc.so has connect and gethostbyname, but Irix 5 also has
# libsocket.so which has a bad implementation of gethostbyname (it
# only looks in /etc/hosts), so we only look for -lsocket if we need
# it.
AC_CHECK_FUNC(connect, :, [AC_CHECK_LIB(socket, socket)
			   AC_CHECK_LIB(nsl, gethostbyname)])

# Hesiod needs -lresolv on Sun systems for res_send.
if test "$hesiod" != "no"; then
	AC_CHECK_LIB(44bsd, strerror)
	AC_CHECK_LIB(resolv, res_send)
fi

AC_CHECK_LIB(curses, tgetstr, [TLIB=-lcurses], [TLIB=-ltermcap])
AC_CHECK_LIB(gen, regcmp, [RLIB=-lgen])
AC_CHECK_LIB(src, srcsrpy, [SLIB=-lsrc; AC_DEFINE(HAVE_SRC)])
AC_SUBST(TLIB)
AC_SUBST(RLIB)
AC_SUBST(SLIB)

ATHENA_KRB4
ATHENA_HESIOD
LIBS="$LIBS $KRB4_LIBS $HESIOD_LIBS"

dnl Checks for library functions.
AC_PROG_GCC_TRADITIONAL
AC_FUNC_VPRINTF
AC_CHECK_FUNCS(putenv re_comp strchr memcpy memmove waitpid getlogin)
AC_CHECK_FUNCS(strerror random lrand48 gethostid krb_get_err_text krb_log)

AC_CONFIG_HEADER(h/config.h)
AC_OUTPUT(Makefile clients/Makefile clients/syslogd/Makefile
	  clients/xzwrite/Makefile clients/zaway/Makefile clients/zctl/Makefile
	  clients/zleave/Makefile clients/zlocate/Makefile
	  clients/zmailnotify/Makefile clients/znol/Makefile
	  clients/zpopnotify/Makefile clients/zshutdown_notify/Makefile
	  clients/zstat/Makefile clients/zwrite/Makefile lib/Makefile
	  libdyn/Makefile server/Makefile zhm/Makefile zwgc/Makefile
	  clients/xzwrite/XZwrite zwgc/zephyr.vars)