afs-web-interface-enhancements-20010623
[openafs.git] / src / configure.in
1 AC_INIT(src/config/stds.h)
2 AM_INIT_AUTOMAKE(openafs,devel)
3 AC_CANONICAL_HOST
4 AC_CONFIG_HEADER(src/afsconfig.h)
5
6 AC_ARG_ENABLE( obsolete,
7 [  --disable-obsolete disable obsolete portions of AFS (mpp, ntp and package)],, enable_obsolete="yes")
8 AC_ARG_ENABLE( insecure,
9 [  --disable-insecure disable insecure portions of AFS (ftpd, inetd, rcp, rlogind and rsh)],, enable_insecure="yes")
10 AC_ARG_ENABLE( afsdb,
11 [  --enable-afsdb enable AFSDB RR support],, enable_afsdb="no")
12 AC_ARG_ENABLE( namei-fileserver,
13 [  --enable-namei-fileserver force compilation of namei fileserver in preference to inode fileserver],, enable_namei_fileserver="no")
14
15 AC_PROG_CC
16
17 dnl weird ass systems
18 AC_AIX
19 AC_ISC_POSIX
20 AC_MINIX
21
22 dnl Various compiler setup.
23 AC_C_BIGENDIAN
24 AC_C_INLINE
25 AC_C_CONST
26 AC_TYPE_PID_T
27 AC_TYPE_SIZE_T
28 AC_TYPE_SIGNAL
29
30 dnl Checks for programs.
31 AC_PROG_INSTALL
32 AC_PROG_LN_S
33 AC_PROG_RANLIB
34 AC_PROG_YACC
35 AM_PROG_LEX
36
37 dnl fix to use config.sub output
38 AC_MSG_CHECKING(your OS)
39 system=$host
40 IRIX=no
41 case $system in
42         *-linux*)
43                 LINUX=1
44                 AC_MSG_RESULT(Linux)
45                 ;;
46         *-solaris*)
47                 SYSV=1
48                 SVR4=1
49                 SOLARIS=1
50                 AC_MSG_RESULT(Solaris)
51                 if test "$CC" = cc; then
52                         CFLAGS="$CFLAGS -mt"
53                 fi
54                 ;;
55         *-hpux*)
56                 hpux=1
57                 AC_MSG_RESULT(HP-UX)
58                 CFLAGS="$CFLAGS -D_HPUX_SOURCE -DHPUX"
59                 if test "$CC" = cc; then
60                         CFLAGS="$CFLAGS -Aa"
61                 fi
62                 ;;
63         *-irix*)
64                 IRIX=yes
65                 AC_MSG_RESULT(IRIX)
66                 ;;
67         *-aix*)
68                 AIX=yes
69                 AC_MSG_RESULT(AIX)
70                 ;;
71         *)
72                 AC_MSG_RESULT($system)
73                 ;;
74 esac
75
76 if test ${IRIX} = yes; then
77         echo Skipping library tests because they confuse Irix.
78 else
79   AC_CHECK_FUNCS(socket)
80
81   if test "$ac_cv_func_socket" = no; then
82     for lib in socket inet; do
83         if test "$HAVE_SOCKET" != 1; then
84                 AC_CHECK_LIB($lib, socket,LIBS="$LIBS -l$lib";HAVE_SOCKET=1;AC_DEFINE(HAVE_SOCKET))
85         fi
86     done
87   fi
88   
89   AC_CHECK_FUNCS(connect)       
90
91   if test "$ac_cv_func_connect" = no; then
92     for lib in nsl; do
93         if test "$HAVE_CONNECT" != 1; then
94                 AC_CHECK_LIB($lib, connect,LIBS="$LIBS -l$lib";HAVE_CONNECT=1;AC_DEFINE(HAVE_CONNECT))
95         fi
96     done
97   fi
98
99   AC_CHECK_FUNCS(gethostbyname)
100   if test "$ac_cv_func_gethostbyname" = no; then
101         for lib in dns nsl resolv; do
102           if test "$HAVE_GETHOSTBYNAME" != 1; then
103             AC_CHECK_LIB($lib, gethostbyname, LIBS="$LIBS -l$lib";HAVE_GETHOSTBYNAME=1;AC_DEFINE(HAVE_GETHOSTBYNAME))
104           fi
105         done    
106   fi    
107 fi
108
109 PTHREAD_LIBS=error
110 AC_CHECK_LIB(pthread, pthread_attr_init,
111              PTHREAD_LIBS="-lpthread")
112 if test "x$PTHREAD_LIBS" = xerror; then
113         AC_CHECK_LIB(pthreads, pthread_attr_init,
114                 PTHREAD_LIBS="-lpthreads")
115 fi
116 if test "x$PTHREAD_LIBS" = xerror; then
117         AC_CHECK_LIB(c_r, pthread_attr_init,
118                 PTHREAD_LIBS="-lc_r")
119 fi
120 if test "x$PTHREAD_LIBS" = xerror; then
121         AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")
122 fi
123 if test "x$PTHREAD_LIBS" = xerror; then
124         AC_MSG_ERROR(*** Unable to locate working posix thread library ***)
125 fi
126 AC_SUBST(PTHREAD_LIBS)
127
128 dnl checks for header files.
129 AC_HEADER_STDC
130 AC_HEADER_SYS_WAIT
131 AC_HEADER_DIRENT
132 AC_CHECK_HEADERS(stdlib.h string.h unistd.h fcntl.h sys/time.h sys/file.h)
133 AC_CHECK_HEADERS(netinet/in.h netdb.h sys/fcntl.h sys/mnttab.h sys/mntent.h)
134 AC_CHECK_HEADERS(mntent.h sys/vfs.h sys/param.h sys/fs_types.h)
135 AC_CHECK_HEADERS(sys/mount.h strings.h termios.h signal.h)
136 AC_CHECK_HEADERS(windows.h malloc.h winsock2.h direct.h io.h)
137
138 AC_CHECK_FUNCS(utimes random srandom getdtablesize snprintf re_comp re_exec)
139
140 AC_OUTPUT(             \
141 Makefile               \
142 config/Makefile                \
143 procmgmt/Makefile      \
144 procmgmt/afs/Makefile  \
145 util/Makefile          \
146 util/afs/Makefile      \
147 comerr/Makefile                \
148 rxgen/Makefile         \
149 include/Makefile       \
150 include/afs/Makefile   \
151 include/rx/Makefile
152 )