]> asedeno.scripts.mit.edu Git - 1ts-debian.git/blob - zephyr/configure.in
r4272@bucket (orig r262): kcr | 2008-01-21 02:46:16 -0500
[1ts-debian.git] / zephyr / configure.in
1 dnl Process this file with autoconf to produce a configure script.
2 AC_INIT(server/server.c)
3
4 test -d h || mkdir h
5 test -d h/zephyr || mkdir h/zephyr
6
7 test -z "$lbindir" && lbindir='${bindir}'
8 test -z "$lsbindir" && lsbindir='${sbindir}'
9 AC_SUBST(lbindir)
10 AC_SUBST(lsbindir)
11
12 AC_CANONICAL_SYSTEM
13 AC_DEFINE_UNQUOTED(MACHINE_TYPE, "$host")
14
15 dnl Checks for programs.
16 AC_PROG_CC
17 AC_PROG_YACC
18 AC_PROG_LEX
19 AC_PROG_INSTALL
20 AC_PROG_RANLIB
21 AC_PROG_LIBTOOL
22
23 AC_MSG_CHECKING(location of temporary directory)
24 if test -d /var/tmp; then
25         found_tmp=/var/tmp/
26 elif test -d /usr/tmp; then
27         found_tmp=/usr/tmp/
28 else
29         found_tmp=/tmp/
30 fi
31 AC_DEFINE_UNQUOTED(FOUND_TMP, "${found_tmp}")
32 AC_MSG_RESULT(${found_tmp})
33
34 dnl Checks for header files.
35 AC_PATH_XTRA
36 AC_HEADER_STDC
37 AC_HEADER_SYS_WAIT
38 AC_CHECK_HEADERS(fcntl.h paths.h termios.h sgtty.h unistd.h malloc.h term.h)
39 AC_CHECK_HEADERS(sys/filio.h sys/ioctl.h sys/time.h sys/file.h sys/utsname.h)
40 AC_CHECK_HEADERS(sys/select.h sys/msgbuf.h sys/cdefs.h krb5_err.h termcap.h)
41
42 if test "$no_x" != "yes"; then
43         ZWGC_LIBX11=-lX11
44 fi
45 AC_SUBST(XCLIENTS)
46 AC_SUBST(ZWGC_LIBX11)
47
48 dnl Checks for typedefs, structures, and compiler characteristics.
49 AC_TYPE_SIGNAL
50 AC_TYPE_UID_T
51 AC_CHECK_SIZEOF(short)
52 AC_CHECK_SIZEOF(int)
53 AC_CHECK_SIZEOF(long)
54 AC_MSG_CHECKING(for 32-bit integer type)
55 if test "$ac_cv_sizeof_long" = 4; then
56         int32=long
57 elif test "$ac_cv_sizeof_int" = 4; then
58         int32=int
59 elif test "$ac_cv_sizeof_short" = 4; then
60         int32=short
61 else
62         AC_WARN([Can't find 32-bit type, using long])
63         int32=long
64 fi
65 AC_DEFINE_UNQUOTED(ZEPHYR_INT32, ${int32})
66 AC_MSG_RESULT(${int32})
67
68 AC_CHECK_LIB(w, wslen)
69 AC_CHECK_LIB(dl, dlopen)
70
71 AC_SEARCH_LIBS(gethostbyname, nsl)
72 AC_SEARCH_LIBS(socket, socket)
73
74 # Hesiod needs -lresolv on Sun systems for res_send.
75 if test "$hesiod" != "no"; then
76         AC_CHECK_LIB(44bsd, strerror)
77         AC_CHECK_LIB(resolv, res_send)
78         AC_CHECK_LIB(resolv, __res_send)
79 fi
80
81 AC_CHECK_LIB(curses, tgetstr, [TLIB=-lcurses], [TLIB=-ltermcap])
82 AC_CHECK_LIB(src, srcsrpy, [SLIB=-lsrc; AC_DEFINE(HAVE_SRC)])
83 AC_SUBST(TLIB)
84 AC_SUBST(RLIB)
85 AC_SUBST(SLIB)
86
87 ATHENA_KRB4
88 ATHENA_KRB5
89 ATHENA_HESIOD
90 ATHENA_REGEXP
91 ATHENA_ARES
92 ATHENA_UTIL_COM_ERR
93 ATHENA_UTIL_SS
94 LIBS="$KRB5_LIBS $KRB4_LIBS $HESIOD_LIBS $LIBS"
95
96 dnl Checks for library functions.
97 AC_PROG_GCC_TRADITIONAL
98 AC_FUNC_VPRINTF
99 AC_FUNC_GETPGRP
100 AC_FUNC_SETPGRP
101 AC_CHECK_FUNCS(putenv strchr memcpy memmove waitpid getlogin strerror random)
102 AC_CHECK_FUNCS(lrand48 gethostid getsid getpgid krb_get_err_text krb_log)
103 AC_CHECK_FUNCS(krb5_free_data krb5_c_make_checksum krb5_cc_set_default_name)
104
105 AC_MSG_CHECKING(for krb5_auth_con_getauthenticator taking double pointer)
106 AC_CACHE_VAL(ac_cv_krb5_auth_con_getauthenticator_takes_double_pointer, [
107 local_save_CPPFLAGS="$CPPFLAGS"
108 CPPFLAGS="${CPPFLAGS} ${KRB5_INC_FLAGS}"
109 AC_TRY_COMPILE(
110 [#define socklen_t int
111 #define ssize_t int
112 #include <krb5.h>
113 krb5_error_code
114 krb5_auth_con_getauthenticator(krb5_context context,
115                            krb5_auth_context auth_context,
116                            krb5_authenticator *authenticator);],
117 [krb5_error_code foo = krb5_auth_con_getauthenticator(0, 0, 0);],
118 ac_cv_krb5_auth_con_getauthenticator_takes_double_pointer=no,
119 ac_cv_krb5_auth_con_getauthenticator_takes_double_pointer=yes)
120 ])
121 CPPFLAGS="${local_save_CPPFLAGS}"
122 if test "$ac_cv_krb5_auth_con_getauthenticator_takes_double_pointer" = yes; then
123         AC_DEFINE(KRB5_AUTH_CON_GETAUTHENTICATOR_TAKES_DOUBLE_POINTER)dnl
124 fi
125 AC_MSG_RESULT($ac_cv_krb5_auth_con_getauthenticator_takes_double_pointer)
126
127 AC_MSG_CHECKING(for enc_part2 in struct krb5_ticket)
128 AC_CACHE_VAL(ac_cv_have_krb5_ticket_enc_part2, [
129 local_save_CPPFLAGS="$CPPFLAGS"
130 CPPFLAGS="${CPPFLAGS} ${KRB5_INC_FLAGS}"
131 AC_TRY_COMPILE(
132 [#include <krb5.h>], [krb5_ticket _tkt; _tkt.enc_part2;],
133 ac_cv_have_krb5_ticket_enc_part2=yes,
134 ac_cv_have_krb5_ticket_enc_part2=no)
135 ])
136 CPPFLAGS="${local_save_CPPFLAGS}"
137 if test "$ac_cv_have_krb5_ticket_enc_part2" = yes; then
138         AC_DEFINE(HAVE_KRB5_TICKET_ENC_PART2)dnl
139 fi
140 AC_MSG_RESULT($ac_cv_have_krb5_ticket_enc_part2)
141
142 AC_MSG_CHECKING(for enctype in struct krb5_keyblock)
143 AC_CACHE_VAL(ac_cv_have_krb5_creds_keyblock_enctype, [
144 local_save_CPPFLAGS="$CPPFLAGS"
145 CPPFLAGS="${CPPFLAGS} ${KRB5_INC_FLAGS}"
146 AC_TRY_COMPILE(
147 [#include <krb5.h>], [krb5_creds _creds; _creds.keyblock.enctype;],
148 ac_cv_have_krb5_creds_keyblock_enctype=yes,
149 ac_cv_have_krb5_creds_keyblock_enctype=no)
150 ])
151 CPPFLAGS="${local_save_CPPFLAGS}"
152 if test "$ac_cv_have_krb5_creds_keyblock_enctype" = yes; then
153         AC_DEFINE(HAVE_KRB5_CREDS_KEYBLOCK_ENCTYPE)dnl
154 fi
155 AC_MSG_RESULT($ac_cv_have_krb5_creds_keyblock_enctype)
156
157 AC_CONFIG_HEADER(h/config.h)
158 AC_OUTPUT(Makefile clients/Makefile clients/zaway/Makefile
159           clients/zctl/Makefile clients/zleave/Makefile
160           clients/zlocate/Makefile clients/znol/Makefile
161           clients/zshutdown_notify/Makefile clients/zstat/Makefile
162           clients/zwrite/Makefile lib/Makefile libdyn/Makefile
163           server/Makefile zhm/Makefile zwgc/Makefile)