]> arthur.barton.de Git - netatalk.git/blob - configure.in
Authenticated printing support in autoconf
[netatalk.git] / configure.in
1 dnl configure.in for netatalk
2
3 AC_INIT(bin/adv1tov2/adv1tov2.c)
4
5 NETATALK_VERSION=`cat VERSION`
6 AC_SUBST(NETATALK_VERSION)
7
8 AC_CANONICAL_SYSTEM
9 AM_INIT_AUTOMAKE(netatalk, ${NETATALK_VERSION})
10 AM_CONFIG_HEADER(config.h)
11
12 dnl Reset locations to proper places
13 AC_PREFIX_DEFAULT(/usr)
14
15 dnl Checks for programs.
16 AC_PROG_AWK
17 AC_PROG_CC
18 AC_PROG_INSTALL
19 AC_PROG_LN_S
20 AC_PROG_MAKE_SET
21 AC_PROG_LIBTOOL
22
23 dnl *********************************************************************
24 dnl FIXME! FIXME! These should be selectable properly, and should produce
25 dnl the proper flags and defines...
26 dnl *********************************************************************
27
28 dnl Checks for libraries.
29 dnl Replace `main' with a function in -labs:
30 AC_CHECK_LIB(abs, main)
31 dnl Replace `main' with a function in -laudit:
32 AC_CHECK_LIB(audit, main)
33 dnl Replace `main' with a function in -lauth:
34 AC_CHECK_LIB(auth, main)
35 dnl Replace `main' with a function in -lcmd:
36 AC_CHECK_LIB(cmd, main)
37 dnl Replace `main' with a function in -lcom_err:
38 AC_CHECK_LIB(com_err, main)
39 dnl Replace `main' with a function in -lcrypt:
40 AC_CHECK_LIB(crypt, main)
41 dnl Replace `main' with a function in -lcrypto:
42 AC_CHECK_LIB(crypto, main)
43 dnl Replace `main' with a function in -ld:
44 AC_CHECK_LIB(d, main)
45 dnl Replace `main' with a function in -ldb:
46 AC_CHECK_LIB(db, main)
47 dnl Replace `main' with a function in -ldes:
48 AC_CHECK_LIB(des, main)
49 dnl Replace `main' with a function in -ldl:
50 AC_CHECK_LIB(dl, main)
51 dnl Replace `main' with a function in -lkauth:
52 AC_CHECK_LIB(kauth, main)
53 dnl Replace `main' with a function in -lkrb:
54 AC_CHECK_LIB(krb, main)
55 dnl Replace `main' with a function in -llwp:
56 AC_CHECK_LIB(lwp, main)
57 dnl Replace `main' with a function in -ln:
58 AC_CHECK_LIB(n, main)
59 dnl Replace `main' with a function in -lnsl:
60 AC_CHECK_LIB(nsl, main)
61 dnl Replace `main' with a function in -lprot:
62 AC_CHECK_LIB(prot, main)
63 dnl Replace `main' with a function in -lresolv:
64 AC_CHECK_LIB(resolv, main)
65 dnl Replace `main' with a function in -lrpcsvc:
66 AC_CHECK_LIB(rpcsvc, main)
67 dnl Replace `main' with a function in -lrx:
68 AC_CHECK_LIB(rx, main)
69 dnl Replace `main' with a function in -lrxkad:
70 AC_CHECK_LIB(rxkad, main)
71 dnl Replace `main' with a function in -lsocket:
72 AC_CHECK_LIB(socket, main)
73 dnl Replace `main' with a function in -lsys:
74 AC_CHECK_LIB(sys, main)
75 dnl Replace `main' with a function in -lubik:
76 AC_CHECK_LIB(ubik, main)
77
78 dnl Checks for header files.
79 AC_HEADER_DIRENT
80 AC_HEADER_STDC
81 AC_HEADER_SYS_WAIT
82 AC_CHECK_HEADERS(fcntl.h limits.h strings.h sys/file.h sys/ioctl.h sys/time.h syslog.h unistd.h)
83
84 dnl Checks for typedefs, structures, and compiler characteristics.
85 AC_C_CONST
86 AC_TYPE_UID_T
87 AC_C_INLINE
88 AC_TYPE_MODE_T
89 AC_TYPE_OFF_T
90 AC_TYPE_PID_T
91 AC_TYPE_SIZE_T
92 AC_STRUCT_ST_RDEV
93 AC_HEADER_TIME
94 AC_STRUCT_TM
95
96 dnl Checks for library functions.
97 AC_TYPE_GETGROUPS
98 AC_PROG_GCC_TRADITIONAL
99 AC_FUNC_MEMCMP
100 AC_HEADER_MAJOR
101 AC_FUNC_MMAP
102 AC_TYPE_SIGNAL
103 AC_FUNC_UTIME_NULL
104 AC_FUNC_WAIT3
105 AC_CHECK_FUNCS(getcwd gethostname gettimeofday getusershell mkdir rmdir select socket strdup strstr strtoul)
106
107 dnl --------------------------------------------------------------------------
108 dnl specific configuration comes in here:
109 dnl --------------------------------------------------------------------------
110
111 AC_ARG_ENABLE(auth-printing-dir,
112         [  --with-auth-printing-dir=path
113               path to authenticated printing directory],
114                 cap_dir="$withval"
115                 AC_DEFINE_UNQUOTED(CAPDIR, "$cap_dir")
116                 AC_DEFINE(USE_CAP)
117                 AC_MSG_RESULT([enabling authenticated printing support.]),
118 )
119
120 AC_ARG_ENABLE(config-dir,
121         [  --with-config-dir=path  path to config files [default=/etc/atalk]],
122                 config_dir="$withval",
123                 config_dir="/etc/atalk"
124 )
125 AC_DEFINE_UNQUOTED(CONFIG_DIR, "$config_dir",
126         [path to config dir [default=/etc/atalk]])
127 CONFIG_DIR="$config_dir"
128 AC_SUBST(CONFIG_DIR)
129
130 AC_ARG_WITH(cracklib,
131         [  --with-cracklib         enable cracklib checking support],
132         with_cracklib="yes"
133         AC_CHECK_LIB(crack, main,
134                 AC_DEFINE(USE_CRACKLIB) 
135                 LIBS="$LIBS -lcrack"
136                 AC_MSG_RESULT([Enabling cracklib support.]),
137         ),
138         with_cracklib="no"
139 )
140
141 crackdict="/usr/lib/cracklib_dict"
142 AC_ARG_WITH(crackdict,
143         [  --with-crackdict=path   set location of cracklib dictionary],
144         crackdict="$withval"
145 )
146
147 if test x"$with_cracklib" = "xyes"; then
148         AC_CHECK_FILE("$crackdict.pwd",
149                 AC_DEFINE_UNQUOTED(_PATH_CRACKLIB, "$crackdict",
150                         [path to cracklib dictionary]),
151                 AC_MSG_ERROR([$crackdict does not contain the dictionary])
152         )
153 fi
154
155 AC_ARG_ENABLE(debug,
156         [  --enable-debug          enable debug code],
157         AC_DEFINE(DEBUG, 1)
158         AC_MSG_RESULT([Enabling debugging code.]),
159         AC_DEFINE(DEBUG, 0)
160 )
161
162 AC_ARG_WITH(pam,
163         [  --with-pam              enable password authentication modules support],
164         AC_CHECK_LIB(pam, main,
165                 AC_DEFINE(USE_PAM)
166                 LIBS="$LIBS -lpam"
167                 AC_MSG_RESULT([Enabling shadow password support.])
168         )
169 )
170
171 AC_ARG_WITH(shadow,
172         [  --with-shadow           enable shadow password support],
173         AC_MSG_RESULT([Enabling shadow password support.])
174         AC_DEFINE(SHADOWPW)
175 )
176
177 AC_ARG_WITH(flock-locks,
178         [  --with-flock-locks      enable flock locks support],
179         AC_MSG_RESULT([Enabling flock locks.])
180         AC_DEFINE(USE_FLOCK_LOCKS)
181 )
182
183 AC_ARG_WITH(tcp-wrappers,
184         [  --with-tcp-wrappers     enable TCP wrappers support],
185         AC_CHECK_LIB(wrap, main,
186                 AC_DEFINE(TCPWRAP)
187                 LIBS="$LIBS -lwrap"
188                 AC_MSG_RESULT([Enabling TCP wrappers support.])
189         )
190 )
191
192 AC_ARG_WITH(uams-path,
193         [  --with-uams-path=path   path to UAMs [default=/etc/atalk/uams]],
194         uams_path="$withval",
195         uams_path="/etc/atalk/uams"
196 )
197 AC_DEFINE_UNQUOTED(UAMS_PATH, "$uams_path",
198         [path to UAMs [default=/etc/atalk/uams]])
199 UAMS_PATH="$uams_path"
200 AC_SUBST(UAMS_PATH)
201
202 dnl --------------------------------------------------------------------------
203 dnl specific configuration comes in here:
204 dnl --------------------------------------------------------------------------
205
206 dnl --------------------- determine operating system from "target"
207 case "$target" in
208 *linux*)   this_os=linux ;;
209 *solaris*) this_os=solaris ;;
210 esac
211
212 dnl --------------------- conditional libraries, etc from "target"
213
214 dnl List of Makefiles to generate
215
216 AC_OUTPUT([Makefile
217         bin/Makefile
218         bin/adv1tov2/Makefile
219         bin/aecho/Makefile
220         bin/afppasswd/Makefile
221         bin/getzones/Makefile
222         bin/megatron/Makefile
223         bin/nbp/Makefile
224         bin/pap/Makefile
225         bin/psorder/Makefile
226         config/Makefile
227         etc/Makefile
228         etc/afpd/Makefile
229         etc/afpd/nls/Makefile
230         etc/atalkd/Makefile
231         etc/uams/Makefile
232         etc/papd/Makefile
233         etc/psf/Makefile
234         include/Makefile
235         include/atalk/Makefile
236         libatalk/Makefile
237         libatalk/adouble/Makefile
238         libatalk/asp/Makefile
239         libatalk/atp/Makefile
240         libatalk/compat/Makefile
241         libatalk/dsi/Makefile
242         libatalk/nbp/Makefile
243         libatalk/netddp/Makefile
244         libatalk/util/Makefile
245         man/Makefile
246         man/man1/Makefile
247         man/man3/Makefile
248         man/man4/Makefile
249         man/man8/Makefile
250         sys/Makefile
251         sys/netatalk/Makefile
252 ])
253