]> arthur.barton.de Git - netatalk.git/blob - configure.in
Don't add db3 flags to CFLAGS and LIBS, but use DB3_CFLAGS and DB3_LIBS
[netatalk.git] / configure.in
1 dnl $Id: configure.in,v 1.130 2001-11-23 22:45:23 srittau Exp $
2 dnl configure.in for netatalk
3
4 AC_INIT(bin/adv1tov2/adv1tov2.c)
5
6 NETATALK_VERSION=`cat VERSION`
7 AC_SUBST(NETATALK_VERSION)
8
9 AC_CANONICAL_SYSTEM
10 AM_INIT_AUTOMAKE(netatalk, ${NETATALK_VERSION})
11 AM_CONFIG_HEADER(config.h)
12
13 dnl Reset locations to proper places
14 AC_PREFIX_DEFAULT(/usr/local)
15
16 dnl Checks for programs.
17 AC_PROG_AWK
18 AC_PROG_CC
19 AC_PROG_INSTALL
20 AC_PROG_LN_S
21 AC_PROG_MAKE_SET
22 AC_LIBTOOL_DLOPEN
23 AM_PROG_LIBTOOL
24
25 dnl *********************************************************************
26 dnl FIXME! FIXME! These should be selectable properly, and should produce
27 dnl the proper flags and defines...
28 dnl *********************************************************************
29
30 dnl Checks for libraries.
31 dnl Replace `main' with a function in -labs:
32 AC_CHECK_LIB(abs, main)
33 dnl Replace `main' with a function in -laudit:
34 AC_CHECK_LIB(audit, main)
35 dnl Replace `main' with a function in -lauth:
36 AC_CHECK_LIB(auth, main)
37 dnl Replace `main' with a function in -lcmd:
38 AC_CHECK_LIB(cmd, main)
39 dnl Replace `main' with a function in -lcom_err:
40 AC_CHECK_LIB(com_err, main)
41 dnl Replace `main' with a function in -lcrypt:
42 AC_CHECK_LIB(crypt, main)
43 dnl Replace `main' with a function in -ld:
44 AC_CHECK_LIB(d, main)
45 dnl Replace `main' with a function in -ldl:
46 AC_CHECK_LIB(dl, main)
47 dnl Replace `main' with a function in -lkauth:
48 AC_CHECK_LIB(kauth, main)
49 dnl Replace `main' with a function in -lkrb:
50 AC_CHECK_LIB(krb, main)
51 dnl Replace `main' with a function in -llwp:
52 AC_CHECK_LIB(lwp, main)
53 dnl Replace `main' with a function in -ln:
54 AC_CHECK_LIB(n, main)
55 dnl Replace `main' with a function in -lnsl:
56 AC_CHECK_LIB(nsl, main)
57 dnl Replace `main' with a function in -lprot:
58 AC_CHECK_LIB(prot, main)
59 dnl Replace `main' with a function in -lresolv:
60 AC_CHECK_LIB(resolv, main)
61 dnl Replace `main' with a function in -lrpcsvc:
62 AC_CHECK_LIB(rpcsvc, main)
63 dnl Replace `main' with a function in -lrx:
64 AC_CHECK_LIB(rx, main)
65 dnl Replace `main' with a function in -lrxkad:
66 AC_CHECK_LIB(rxkad, main)
67 dnl Replace `main' with a function in -lsocket:
68 AC_CHECK_LIB(socket, main)
69 dnl Replace `main' with a function in -lsys:
70 AC_CHECK_LIB(sys, main)
71 dnl Replace `main' with a function in -lubik:
72 AC_CHECK_LIB(ubik, main)
73
74 #
75 # Check presence of some functions
76 #
77 # Check for XPG4 access() function
78 # Be sure to test before adding AFS libs in LIBS path as AFS lib
79 # has such a function that works only on AFS filesystems.
80 AC_CHECK_FUNCS(access)
81
82 dnl Checks for header files.
83 AC_HEADER_DIRENT
84 AC_HEADER_STDC
85 AC_HEADER_SYS_WAIT
86 AC_CHECK_HEADERS(fcntl.h limits.h stdint.h strings.h sys/fcntl.h sys/file.h sys/ioctl.h sys/time.h sys/mnttab.h sys/statvfs.h sys/stat.h sys/vfs.h mntent.h syslog.h unistd.h termios.h sys/termios.h netdb.h sgtty.h ufs/quota.h mount.h sys/mount.h statfs.h sys/types.h dlfcn.h errno.h sys/errno.h security/pam_appl.h)
87 AC_CHECK_HEADER(sys/cdefs.h,,
88         AC_MSG_RESULT([enabling generic cdefs.h from tree])
89         CFLAGS="-I\$(top_srcdir)/sys/generic $CFLAGS"
90 )
91
92 # Allow user to specify flags
93 AC_ARG_WITH(cflags,
94         [  --with-cflags           specify additional flags to pass to compiler],
95         [
96                 if test "x$withval" != "xno" ; then
97                         CFLAGS="$CFLAGS $withval"
98                 fi
99         ]       
100 )
101 AC_ARG_WITH(libs,
102         [  --with-libs             specify additional libraries to link with],
103         [
104                 if test "x$withval" != "xno" ; then
105                         LIBS="$LIBS $withval"
106                 fi
107         ]
108 )
109
110 dnl Checks for typedefs, structures, and compiler characteristics.
111 AC_C_CONST
112 AC_TYPE_UID_T
113 AC_C_INLINE
114 AC_TYPE_MODE_T
115 AC_TYPE_OFF_T
116 AC_TYPE_PID_T
117 AC_TYPE_SIZE_T
118 AC_STRUCT_ST_RDEV
119 AC_HEADER_TIME
120 AC_STRUCT_TM
121
122 dnl Checks for library functions.
123 AC_TYPE_GETGROUPS
124 AC_PROG_GCC_TRADITIONAL
125 AC_FUNC_MEMCMP
126 AC_HEADER_MAJOR
127 AC_FUNC_MMAP
128 AC_TYPE_SIGNAL
129 AC_FUNC_UTIME_NULL
130 AC_FUNC_WAIT3
131 AC_CHECK_FUNCS(flock getcwd gethostname gettimeofday getusershell mkdir rmdir select socket strdup strstr strtoul setpgrp strchr memcpy)
132 AC_FUNC_SETPGRP
133
134 dnl --------------------------------------------------------------------------
135 dnl specific configuration comes in here:
136 dnl --------------------------------------------------------------------------
137
138 AC_DEFINE(ADMIN_GRP, 1)
139
140 AC_ARG_WITH(admin-group,
141         [  --disable-admin-group   disable admin group],
142         if test "$enableval" = "no"; then
143                 AC_DEFINE(ADMIN_GRP, 0)
144                 AC_MSG_RESULT([disabling administrative group support])
145         fi
146  )
147
148 AC_ARG_ENABLE(afs,
149         [  --enable-afs            enable AFS support],
150         if test "$enableval" = "yes"; then
151                 AC_DEFINE(AFS, 1)
152                 AC_MSG_RESULT([enabling AFS support])
153         fi
154 )
155
156 AC_ARG_WITH(pkgconfdir,
157         [  --with-pkgconfdir=DIR   package specific configuration in DIR
158                           [[SYSCONF/netatalk]]],
159                 PKGCONFDIR="$withval",
160                 PKGCONFDIR="${sysconfdir}/netatalk"
161 )
162
163 AC_ARG_WITH(cracklib,
164         [  --with-cracklib=DICT    enable/set location of cracklib dictionary],
165         if test "x$withval" != "xno" ; then
166                 cracklib="$withval"
167                 AC_CHECK_LIB(crack, main,
168                         AC_DEFINE(USE_CRACKLIB) 
169                         LIBS="$LIBS -lcrack"
170                         AC_MSG_RESULT([enabling cracklib support])
171                         if test "$cracklib" = "yes"; then
172                                 cracklib="/usr/lib/cracklib_dict"
173                         fi
174                         AC_DEFINE_UNQUOTED(_PATH_CRACKLIB, "$cracklib",
175                                 [path to cracklib dictionary])
176                         AC_MSG_RESULT([setting cracklib dictionary to $cracklib]),
177                         AC_MSG_ERROR([cracklib not found!])
178                 )
179         fi
180 )
181
182 AC_ARG_ENABLE(ddp,
183         [  --disable-ddp           disable DDP],
184         if test "$enableval" = "no"; then 
185                 AC_DEFINE(NO_DDP, 1)
186                 AC_MSG_RESULT([disabling DDP])
187         fi
188 )
189
190 AC_ARG_ENABLE(debug,
191         [  --enable-debug          enable debug code],
192         if test "$enableval" != "no"; then
193                 if test "$enableval" = "yes"; then
194                         AC_DEFINE(DEBUG, 1)
195                 else
196                         AC_DEFINE_UNQUOTED(DEBUG, $enableval)
197                 fi 
198                 AC_MSG_RESULT([enabling debugging code])
199         else
200                 AC_DEFINE(DEBUG, 0)
201         fi
202 )
203
204
205 dnl ----------- A NOTE ABOUT DROPKLUDGE
206 dnl The trouble with this fix is that if you know what the file is called, it
207 dnl can be read from the Unix side.  That's okay for most academic institutions
208 dnl since the students don't have telnet access to the Mac servers.  There is
209 dnl currently no one working on further development/fixes of DROPKLUDGE.
210 dnl -----------
211
212 AC_ARG_ENABLE(dropkludge,
213         [  --enable-dropkludge     enable the experimental dropbox fix (INSECURE!) ],
214         if test "$enableval" = "yes"; then 
215                 AC_DEFINE(DROPKLUDGE, 1)
216                 AC_MSG_RESULT([enabling experimental dropbox support])
217         fi
218 )
219
220 AC_ARG_ENABLE(force-uidgid,
221         [  --enable-force-uidgid   allow forcing of uid/gid per volume (BROKEN) ],
222         if test "$enableval" = "yes"; then
223                 AC_DEFINE(FORCE_UIDGID, 1)
224                 AC_MSG_RESULT([enabling forcing of uid/gid per volume])
225         fi
226 )
227
228 dnl Don't use DB3 unless it's needed
229 db3_required=no
230
231 dnl Check for CNID DB support
232 AC_MSG_CHECKING([whether CNID support should be enabled])
233 AC_ARG_ENABLE(cnid-db,
234         [  --enable-cnid-db        use persistent cnid database per volume (EXPERIMENTAL) ],
235         [
236                 if test "x$enableval" = "xyes"; then
237                         dnl Now we need DB3
238                         db3_required="yes"
239                         AC_DEFINE(CNID_DB)
240                         AC_MSG_RESULT([yes])
241                 else
242                         AC_MSG_RESULT([no])
243                 fi
244         ],[AC_MSG_RESULT([no])]
245 )
246
247 dnl Check for Berkeley DB3 library
248 if test "x$db3_required" = "xyes"; then
249         AC_PATH_DB3(, [AC_MSG_ERROR([Berkeley DB3 library not found!])])
250 fi
251
252 AC_ARG_WITH(did,
253         [  --with-did=SCHEME       set DID scheme (last,mtab)],
254         if test "x$withval" != "xno" ; then
255                 if test "$withval" = "last"; then
256                         AC_DEFINE(USE_LASTDID, 1)
257                         AC_MSG_RESULT([enabling build without DID dev/inode mapping kludge])
258                 fi
259                 if test "$withval" = "mtab"; then
260                         AC_DEFINE(DID_MTAB, 1)
261                         AC_MSG_RESULT([enabling mtab-based DID creation support])
262                 fi
263         fi
264 )
265
266 msg_dir=""
267 AC_ARG_WITH(message-dir,
268         [  --with-message-dir=PATH path to message files [[PKGCONF/msg]]],
269                 msg_dir="$withval"
270                 if test x"$msg_dir" = "x"; then
271                         msg_dir="${PKGCONFDIR}/msg"
272                 fi
273                 AC_DEFINE_UNQUOTED(SERVERTEXT, "$msg_dir",
274                         [path to message dir [[PKGCONF/msg]]])
275                 SERVERTEXT="$msg_dir"
276                 AC_SUBST(SERVERTEXT)
277 )
278
279 AC_ARG_ENABLE(srvloc,
280         [  --enable-srvloc         turn on Server Location Protocol support (EXPERIMENTAL)],
281         srvloc=$enableval,
282         srvloc=no
283 )
284
285 dnl Conditional for optional server location protocol support (used by OS X)
286 AM_CONDITIONAL(USE_SRVLOC, test "x$srvloc" != "xno")
287 if test "x$srvloc" != "xno"; then
288     for slpdir in "" $srvloc /usr /usr/local ; do
289                 if test -f "$slpdir/include/slp.h" ; then
290                         LIBS="$LIBS -L$slpdir/lib -lslp"
291                         CFLAGS="$CFLAGS -I$slpdir/include"
292                 AC_CHECK_LIB(slp,SLPOpen)
293                 AC_CHECK_FUNCS(SLPReg SLPDereg SLPClose)
294                 AC_DEFINE(USE_SRVLOC, 1)
295                         break
296                 fi
297         done
298 fi
299
300 # Check for PAM libs
301 AC_MSG_CHECKING([if we should even bother with PAM])
302 AC_ARG_WITH(pam,
303     [  --with-pam              enable PAM support],
304     [PAM_MSG="$withval"],
305     [PAM_MSG="yes"]
306 )
307 AC_MSG_RESULT($PAM_MSG)
308 use_pam_so=no
309 compile_pam=no
310
311 if test "x$PAM_MSG" = "xyes"; then
312         if test "x$ac_cv_header_security_pam_appl_h" = "xyes" ; then
313         
314                 AC_CHECK_LIB(pam, pam_set_item, 
315                                 [PAPD_LIBS="$PAPD_LIBS -lpam"; AFPD_LIBS="$AFPD_LIBS -lpam"; use_pam_so=yes; compile_pam=yes; AC_DEFINE(USE_PAM)],
316                         [use_pam_so=no; compile_pam=no]
317                 )
318         fi
319 else
320         use_pam_so=no
321         compile_pam=no
322 fi
323
324 AC_MSG_CHECKING([whether shadow support should be enabled])
325 AC_ARG_WITH(shadow,
326         [  --with-shadow           enable shadow password support],
327         [shadowpw="$withval"],
328         [shadowpw=no]
329 )
330 if test "x$shadowpw" = "xyes"; then
331         AC_DEFINE(SHADOWPW)
332 fi
333 AC_MSG_RESULT([$shadowpw])
334
335 AC_ARG_ENABLE(shell-check,
336         [  --disable-shell-check   disable checking for a valid shell],
337         if test "$enableval" = "no"; then 
338                 AC_DEFINE(DISABLE_SHELLCHECK, 1)
339                 AC_MSG_RESULT([disabling valid shell check])
340         fi
341 )
342
343 AC_MSG_CHECKING([whether flock locks should be enabled])
344 AC_ARG_WITH(flock-locks,
345         [  --with-flock-locks      enable flock locks support],
346         [flock_locks="$withval"],
347         [flock_locks="no"]
348 )
349 if test "x$flock_locks" = "xyes"; then
350         AC_DEFINE(USE_FLOCK_LOCKS)
351 fi
352 AC_MSG_RESULT([$flock_locks])
353
354 AC_ARG_WITH(tcp-wrappers,
355         [  --with-tcp-wrappers     enable TCP wrappers support],
356         AC_CHECK_LIB(wrap, tcpd_warn,
357                 AC_DEFINE(TCPWRAP)
358                 AFPD_LIBS="$AFPD_LIBS -lwrap"
359                 AC_MSG_RESULT([enabling TCP wrappers support])
360         )
361 )
362
363 AC_ARG_ENABLE(redhat,
364         [  --enable-redhat         use redhat-style sysv configuration ],
365         if test "$enableval" = "yes"; then
366                 sysv_style=redhat
367         fi
368         AC_MSG_RESULT([enabling redhat-style sysv support])
369 )
370
371 AC_ARG_ENABLE(suse,
372         [  --enable-suse           use suse-style sysv configuration ],
373         if test "$enableval" = "yes"; then
374                 sysv_style=suse
375         fi
376         AC_MSG_RESULT([enabling suse-style sysv support])
377 )
378
379 AC_ARG_ENABLE(cobalt,
380         [  --enable-cobalt         use cobalt-style sysv configuration ],
381         if test "$enableval" = "yes"; then
382                 sysv_style=cobalt
383         fi
384         AC_MSG_RESULT([enabling cobalt-style sysv support])
385 )
386
387 dnl ----- timelord compilation (disabled by default)
388 AC_MSG_CHECKING([whether timelord should be compiled])
389 compile_timelord=no
390 AC_ARG_ENABLE(timelord,
391         [  --enable-timelord       enable compilation of timelord server],
392         [compile_timelord="$enableval"],
393         [compile_timelord="no"]
394 )
395 AC_MSG_RESULT([$compile_timelord])
396
397 AC_ARG_WITH(uams-path,
398         [  --with-uams-path=PATH   path to UAMs [[PKGCONF/uams]]],
399         uams_path="$withval",
400         uams_path="${PKGCONFDIR}/uams"
401 )
402
403 dnl --------------------------------------------------------------------------
404 dnl FHS stuff has to be done last because it overrides other defaults
405 dnl --------------------------------------------------------------------------
406
407 AC_ARG_ENABLE(fhs,
408         [  --enable-fhs            use Filesystem Hierarchy Standard (FHS) compatibility],
409         if test "$enableval" = "yes"; then
410                 uams_path="/usr/lib/netatalk"
411                 sysconfdir="/etc"
412                 PKGCONFDIR=${sysconfdir}/netatalk
413                 use_pam_so=yes
414                 dnl FIXME: NEED TO HAVE --mandir=/usr/share/man AT SOME POINT...
415                 AC_DEFINE(FHS_COMPATIBILITY)
416         fi
417         AC_MSG_RESULT([enabling Filesystem Hierarchy Standard (FHS) compatibility])
418 )
419
420 dnl --------------------------------------------------------------------------
421 dnl post-FHS substitutions, etc
422 dnl --------------------------------------------------------------------------
423
424 dnl ***** UAMS_PATH
425 AC_DEFINE_UNQUOTED(UAMS_PATH, "${uams_path}",
426         [path to UAMs [default=PKGCONF/uams]])
427 UAMS_PATH="${uams_path}"
428 AC_SUBST(UAMS_PATH)
429
430 dnl --------------------------------------------------------------------------
431 dnl drop in includes for top level directory structures here...
432 dnl --------------------------------------------------------------------------
433
434 dnl Note: $(top_srcdir)/include should be added before all other includes
435 dnl       so that includes from that directory a preferred to includes from
436 dnl       /usr/include or similar places.
437 LIBS="$LIBS -L\$(top_srcdir)/libatalk"
438 CFLAGS="-I\$(top_srcdir)/include $CFLAGS -I\$(top_srcdir)/sys"
439
440 dnl --------------------------------------------------------------------------
441 dnl specific configuration comes in here:
442 dnl --------------------------------------------------------------------------
443
444 dnl ac_cv_target_os is now host_os, ac_cv_target_cpu is now host_cpu
445
446 dnl --------------------- determine operating system from "target"
447 case "$host_os" in
448         *aix*)                          this_os=aix ;;
449         *freebsd*)                      this_os=freebsd ;;
450         *hpux11*)                       this_os=hpux11 ;;
451         *irix*)                         this_os=irix ;;
452         *linux*)                        this_os=linux ;;
453         *osx*)                          this_os=macosx ;;
454         *netbsd*)                       this_os=netbsd ;;
455         *openbsd*)                      this_os=openbsd ;;
456         *osf*)                          this_os=tru64 ;;
457         *solaris*)                      this_os=solaris ;;
458 esac
459
460 case "$host_cpu" in
461         i386|i486|i586|i686|k7)         this_cpu=x86 ;;
462         alpha)                                          this_cpu=alpha ;;
463         mips)                                           this_cpu=mips ;;
464         powerpc|ppc)                            this_cpu=ppc ;;
465 esac
466
467 dnl --------------------- operating system specific flags (port from sys/*)
468
469 dnl ----- AIX specific -----
470 if test x"$this_os" = "xaix"; then
471         AC_MSG_RESULT([ * AIX specific configuration])
472         AC_DEFINE(NO_STRUCT_TM_GMTOFF)
473
474         dnl This is probably a lie; AIX 4.3 supports a 64-bit long
475         dnl compilation environment.  It's enough to get things defined
476         dnl right in endian.h provided that long long is supported, though.
477         AC_DEFINE(HAVE_32BIT_LONGS)
478 fi
479
480 dnl ----- FreeBSD specific -----
481 if test x"$this_os" = "xfreebsd"; then 
482         AC_MSG_RESULT([ * FreeBSD specific configuration])
483         AC_DEFINE(BSD4_4)
484         AC_DEFINE(SENDFILE_FLAVOR_BSD)
485
486         AC_DEFINE(NO_CRYPT_H, 1)
487 fi
488
489 dnl ----- HP-UX 11 specific -----
490 if test x"$this_os" = "xhpux11"; then
491         AC_MSG_RESULT([ * HP-UX 11 specific configuration])
492
493         AC_DEFINE(_ISOC9X_SOURCE)
494         AC_DEFINE(NO_STRUCT_TM_GMTOFF)
495 fi
496
497 dnl ----- IRIX specific -----
498 if test x"$this_os" = "xirix"; then
499         AC_MSG_RESULT([ * IRIX specific configuration])
500
501         AC_DEFINE(NO_STRUCT_TM_GMTOFF)
502 fi
503
504 dnl ----- Linux specific -----
505 if test x"$this_os" = "xlinux"; then 
506         AC_MSG_RESULT([ * Linux specific configuration])
507
508         dnl ----- check if we need the quotactl wrapper
509         AC_CHECK_HEADERS(sys/quota.h linux/quota.h)
510         AC_CHECK_FUNC(quotactl,,
511                 AC_DEFINE(NEED_QUOTACTL_WRAPPER)
512                 AC_MSG_RESULT([enabling quotactl wrapper])
513         )
514
515         dnl ----- as far as I can tell, dbtob always does the wrong thing
516         dnl ----- on every single version of linux I've ever played with.
517         dnl ----- see etc/afpd/quota.c
518         AC_DEFINE(HAVE_BROKEN_DBTOB)
519
520         dnl --- added by Yoshinobu Ishizaki (2001.03.13) ---
521         dnl ----- check if version is newer than 2.2.x
522         changequote(<<,>>)
523         majorvers="`uname -r | sed 's/\([0-9]\)..*/\1/'`"
524         minorvers="`uname -r | sed 's/[0-9]\.\([0-9]\)\..*/\1/'`"
525         if [ $majorvers -ge 2 ]; then
526                 if [ $minorvers -ge 2 ]; then
527                         changequote([,])
528                         AC_MSG_RESULT([ * found Linux 2.2.x or higher])
529                         AC_DEFINE(SENDFILE_FLAVOR_LINUX)
530                 else
531                         AC_MSG_RESULT([ * found Linux 2.0.x ]) 
532                 fi
533         fi
534
535         dnl ----- Linux/alpha specific -----
536         if test x"$this_cpu" = "xalpha"; then 
537                 AC_MSG_RESULT([enabling gcc memcpy bug workaround])
538                 AC_DEFINE(HAVE_GCC_MEMCPY_BUG)
539         fi
540         need_dash_r=no
541 fi
542
543 dnl ----- Mac OSX specific -----
544 if test x"$this_os" = "xmacosx"; then 
545         AC_MSG_RESULT([ * Mac OSX specific configuration])
546         AC_DEFINE(BSD4_4)
547         AC_DEFINE(HAVE_BROKEN_CPP)
548         AC_DEFINE(HAVE_2ARG_DBTOB)
549         dnl AC_DEFINE(NO_DLFCN_H)
550         AC_DEFINE(MACOSX_SERVER)
551 fi
552
553 dnl ----- NetBSD specific -----
554 if test x"$this_os" = "xnetbsd"; then 
555         AC_MSG_RESULT([ * NetBSD specific configuration])
556         AC_DEFINE(BSD4_4)
557         AC_DEFINE(DLSYM_PREPEND_UNDERSCORE)
558         CFLAGS="-I\$(top_srcdir)/sys/netbsd -I/usr/include/kerberosIV $CFLAGS"
559         need_dash_r=yes 
560
561         dnl ----- NetBSD does not have crypt.h, uses unistd.h -----
562         AC_DEFINE(UAM_DHX, 1)
563         AC_DEFINE(NO_CRYPT_H, 1)
564 fi
565
566 dnl ----- OpenBSD specific -----
567 if test x"$this_os" = "xopenbsd"; then 
568         AC_MSG_RESULT([ * OpenBSD specific configuration])
569         AC_DEFINE(BSD4_4)
570         AC_DEFINE(DLSYM_PREPEND_UNDERSCORE)
571
572         dnl ----- OpenBSD does not have crypt.h, uses unistd.h -----
573         AC_DEFINE(UAM_DHX, 1)
574         AC_DEFINE(NO_CRYPT_H, 1)
575 fi
576
577 dnl ----- Solaris specific -----
578 if test x"$this_os" = "xsolaris"; then 
579         AC_MSG_RESULT([ * Solaris specific configuration])
580         AC_DEFINE(__svr4__)
581         AC_DEFINE(_ISOC9X_SOURCE)
582         AC_DEFINE(NO_STRUCT_TM_GMTOFF)
583         AC_DEFINE(SOLARIS)
584         CFLAGS="-I\$(top_srcdir)/sys/generic $CFLAGS"
585         need_dash_r=yes
586
587         AC_MSG_RESULT([enabling Solaris kernel module build])
588         solaris_module=yes
589 fi
590
591 dnl ----- Tru64 specific -----
592 if test x"$this_os" = "xtru64"; then 
593         AC_MSG_RESULT([ * Tru64 specific configuration])
594         AC_DEFINE(NO_DDP)
595         AC_DEFINE(HAVE_64BIT_LONGS)
596         dnl AC_DEFINE(USE_MOUNT_H)
597         AC_DEFINE(USE_OLD_RQUOTA)
598         dnl AC_DEFINE(USE_UFS_QUOTA_H)
599         AC_DEFINE(TRU64)
600         AC_CHECK_LIB(security,set_auth_parameters)
601         CFLAGS="-I\$(top_srcdir)/sys/tru64 $CFLAGS"
602         need_dash_r=no
603         sysv_style=tru64
604 fi
605
606 dnl -- look for openssl
607 AC_PATH_SSL
608
609 dnl --------------------- check for building PGP UAM module
610
611 AC_ARG_ENABLE(pgp-uam,
612         [  --enable-pgp-uam        enable build of PGP UAM module],
613         if test "$enableval" = "yes"; then 
614                 if test "$compile_ssl" = "yes"; then 
615                         AC_DEFINE(UAM_PGP, 1)
616                         compile_pgp=yes
617                         AC_MSG_RESULT([enabling build with PGP UAM module])
618                 fi
619         fi
620 )
621
622 dnl --------------------- check for building Kerberos v4 UAM module
623
624 AC_ARG_ENABLE(krb4-uam,
625         [  --enable-krb4-uam       enable build of Kerberos v4 UAM module],
626         if test "$enableval" = "yes"; then
627                 AC_DEFINE(UAM_KRB4, 1)
628                 compile_kerberos=yes
629                 AC_MSG_RESULT([enabling build with Kerberos v4 UAM module])
630         fi
631 )
632 dnl --------------------- overwrite the config files . . . or not.
633
634 AC_MSG_CHECKING([whether configuration files should be overwritten])
635 AC_ARG_ENABLE(overwrite,
636         [  --enable-overwrite      overwrite configuration files during installation],
637         [OVERWRITE_CONFIG="${enable_overwrite}"],
638         [OVERWRITE_CONFIG="no"]
639 )
640 AC_MSG_RESULT([$OVERWRITE_CONFIG])
641
642 dnl --------------------- last minute substitutions
643
644 AC_SUBST(LIBS)
645 AC_SUBST(AFPD_LIBS)
646 AC_SUBST(PAPD_LIBS)
647 AC_SUBST(CFLAGS)
648 AC_SUBST(PKGCONFDIR)
649 AC_SUBST(OVERWRITE_CONFIG)
650
651 AM_CONDITIONAL(SOLARIS_MODULE, test x$solaris_module = xyes)
652 AM_CONDITIONAL(COMPILE_TIMELORD, test x$compile_timelord = xyes)
653 AM_CONDITIONAL(USE_DHX, test x$compile_ssl = xyes)
654 AM_CONDITIONAL(USE_KERBEROS, test x$compile_kerberos = xyes)
655 AM_CONDITIONAL(USE_PAM_SO, test x$use_pam_so = xyes)
656 AM_CONDITIONAL(USE_PAM, test x$compile_pam = xyes)
657 AM_CONDITIONAL(BUILD_PAM, test x$compile_pam = xyes)
658 AM_CONDITIONAL(USE_PGP, test x$compile_pgp = xyes)
659 AM_CONDITIONAL(USE_COBALT, test x$sysv_style = xcobalt)
660 AM_CONDITIONAL(USE_REDHAT, test x$sysv_style = xredhat)
661 AM_CONDITIONAL(USE_SUSE, test x$sysv_style = xsuse)
662 AM_CONDITIONAL(USE_SHADOWPW, test x$shadowpw = xyes)
663 AM_CONDITIONAL(USE_TRU64, test x$sysv_style = xtru64)
664
665 dnl --------------------- generate files
666
667 AC_OUTPUT([Makefile
668         bin/Makefile
669         bin/adv1tov2/Makefile
670         bin/aecho/Makefile
671         bin/afile/Makefile
672         bin/afppasswd/Makefile
673         bin/getzones/Makefile
674         bin/megatron/Makefile
675         bin/nbp/Makefile
676         bin/pap/Makefile
677         bin/psorder/Makefile
678         config/Makefile
679         contrib/Makefile
680         contrib/macusers/Makefile
681         contrib/nu/Makefile
682         contrib/printing/Makefile
683         contrib/shell_utils/Makefile
684         contrib/timelord/Makefile
685         distrib/Makefile
686         distrib/config/Makefile
687         distrib/config/netatalk-config
688         distrib/initscripts/Makefile
689         distrib/m4/Makefile
690         doc/Makefile
691         etc/Makefile
692         etc/afpd/Makefile
693         etc/afpd/nls/Makefile
694         etc/atalkd/Makefile
695         etc/uams/Makefile
696         etc/uams/uams_krb4/Makefile
697         etc/papd/Makefile
698         etc/psf/Makefile
699         include/Makefile
700         include/atalk/Makefile
701         libatalk/Makefile
702         libatalk/adouble/Makefile
703         libatalk/asp/Makefile
704         libatalk/atp/Makefile
705         libatalk/cnid/Makefile
706         libatalk/compat/Makefile
707         libatalk/dsi/Makefile
708         libatalk/nbp/Makefile
709         libatalk/netddp/Makefile
710         libatalk/util/Makefile
711         macros/Makefile
712         man/Makefile
713         man/man1/Makefile
714         man/man3/Makefile
715         man/man4/Makefile
716         man/man5/Makefile
717         man/man8/Makefile
718         sys/Makefile
719         sys/generic/Makefile
720         sys/generic/sys/Makefile
721         sys/netatalk/Makefile
722         sys/netbsd/Makefile
723         sys/netbsd/netatalk/Makefile
724         sys/solaris/Makefile
725         sys/sunos/Makefile
726         sys/ultrix/Makefile
727         ],
728         [chmod a+x distrib/config/netatalk-config contrib/shell_utils/apple_*]
729 )
730