1995-12-18 03:22:10 +00:00
dnl Process this file with GNU autoconf to produce a configure script.
1994-03-09 23:51:22 +00:00
AC_INIT(sudo.h)
1995-01-16 21:31:57 +00:00
AC_CONFIG_HEADER(config.h)
1994-03-09 23:51:22 +00:00
dnl
1995-12-18 03:22:10 +00:00
dnl This won't work before AC_INIT()
dnl
1996-01-14 20:22:48 +00:00
echo "Configuring CU Sudo version 1.4"
1995-12-18 03:22:10 +00:00
dnl
1994-03-09 23:51:22 +00:00
dnl Variables that get substituted in the Makefile
dnl
PROGS="sudo visudo"
1995-09-01 02:53:07 +00:00
AC_SUBST(CFLAGS)dnl
1994-03-09 23:51:22 +00:00
AC_SUBST(PROGS)dnl
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS=""
AC_SUBST(SUDO_LDFLAGS)dnl
VISUDO_LDFLAGS=""
AC_SUBST(VISUDO_LDFLAGS)dnl
SUDO_LIBS=""
AC_SUBST(SUDO_LIBS)dnl
VISUDO_LIBS=""
AC_SUBST(VISUDO_LIBS)dnl
1995-06-18 17:58:42 +00:00
CPPFLAGS=""
AC_SUBST(CPPFLAGS)dnl
1994-07-07 00:52:41 +00:00
OSDEFS=""
AC_SUBST(OSDEFS)dnl
1994-03-09 23:51:22 +00:00
OPTIONS=""
AC_SUBST(OPTIONS)dnl
1995-12-05 23:56:43 +00:00
DCE_OBJS=""
AC_SUBST(DCE_OBJS)dnl
1994-06-06 20:56:58 +00:00
LIBOBJS=""
AC_SUBST(LIBOBJS)dnl
1994-06-26 20:35:48 +00:00
TGETPASS="tgetpass.o"
AC_SUBST(TGETPASS)dnl
1994-08-05 21:48:56 +00:00
MANTYPE="man"
1995-11-19 02:27:39 +00:00
AC_SUBST(MANTYPE)dnl
1994-08-05 23:43:56 +00:00
MAN_POSTINSTALL=""
AC_SUBST(MAN_POSTINSTALL)dnl
1995-11-19 02:27:39 +00:00
dnl
dnl Override default configure dirs...
dnl
test "$mandir" = '${prefix}/man' && mandir='$(prefix)/man'
test "$bindir" = '${exec_prefix}/bin' && bindir='$(exec_prefix)/bin'
test "$sbindir" = '${exec_prefix}/sbin' && sbindir='$(exec_prefix)/etc'
test "$sysconfdir" = '${prefix}/etc' && sysconfdir='/etc'
1995-06-18 17:58:42 +00:00
1994-03-09 23:51:22 +00:00
dnl
1995-01-27 01:28:02 +00:00
dnl Options for --with
1994-06-26 20:35:48 +00:00
dnl
1995-06-18 17:58:42 +00:00
1994-06-26 20:35:48 +00:00
dnl --with-getpass
1995-01-27 01:28:02 +00:00
AC_ARG_WITH(getpass, [ --with-getpass use system getpass(3)], AC_DEFINE(USE_GETPASS)
1994-06-26 20:35:48 +00:00
echo 'Using system getpass'
TGETPASS="")
1995-06-18 17:58:42 +00:00
1994-06-24 23:45:39 +00:00
dnl --with-C2
1995-01-27 01:28:02 +00:00
AC_ARG_WITH(C2, [ --with-C2 enable C2 security (shadow password) support], AC_DEFINE(HAVE_C2_SECURITY)
1994-07-07 00:52:41 +00:00
C2=1
1994-06-24 23:45:39 +00:00
echo 'Configuring for C2 security')
1995-06-18 17:58:42 +00:00
1995-11-19 23:25:51 +00:00
dnl --with-skey
AC_ARG_WITH(skey, [ --with-skey enable S/Key support ], AC_DEFINE(HAVE_SKEY)
1994-11-08 01:40:52 +00:00
SKEY=1
1995-11-19 23:25:51 +00:00
echo 'Configuring for use with S/Key')
1995-06-18 17:58:42 +00:00
1995-09-01 02:53:07 +00:00
dnl --with-SecurID
1995-11-19 23:27:51 +00:00
AC_ARG_WITH(SecurID, [ --with-SecurID enable SecurID support], AC_DEFINE(HAVE_SECURID)
1995-09-01 02:53:07 +00:00
SECURID=1
echo 'Configuring for use with SecurID')
1995-06-07 02:33:13 +00:00
dnl --with-kerb4
AC_ARG_WITH(kerb4, [ --with-kerb4 enable kerberos v4 support], AC_DEFINE(HAVE_KERB4)
KERB4=1
echo 'Configuring for use with Kerberos version 4')
1995-06-18 17:58:42 +00:00
dnl --with-kerb5
AC_ARG_WITH(kerb5, [ --with-kerb5 enable kerberos v5 support], AC_DEFINE(HAVE_KERB5)
KERB4=1
echo 'Configuring for use with Kerberos version 5')
1994-07-14 15:32:13 +00:00
dnl --with-AFS
1995-01-27 01:28:02 +00:00
AC_ARG_WITH(AFS, [ --with-AFS enable AFS support], AC_DEFINE(HAVE_AFS)
1994-07-14 23:11:06 +00:00
AFS=1
1994-07-14 15:32:13 +00:00
echo 'Configuring for use with AFS')
1995-06-18 17:58:42 +00:00
1995-11-20 03:31:20 +00:00
dnl --with-DCE
1995-11-28 04:17:02 +00:00
AC_ARG_WITH(DCE, [ --with-DCE enable DCE support], AC_DEFINE(HAVE_DCE)
1995-11-20 03:31:20 +00:00
DCE=1
echo 'Configuring for use with DCE')
1994-06-24 23:45:39 +00:00
dnl --with-csops
1995-11-19 23:27:51 +00:00
AC_ARG_WITH(csops, [ --with-csops add CSOps standard options], OPTIONS="${OPTIONS} -DUSE_INSULTS -DCLASSIC_INSULTS -DCSOPS_INSULTS -DENV_EDITOR"
1995-11-19 02:30:48 +00:00
sbindir='$(exec_prefix)/sbin'
1995-11-21 23:00:41 +00:00
CSOPS=1
1995-09-01 02:53:07 +00:00
echo 'CSOps--adding options: USE_INSULTS CLASSIC_INSULTS CSOPS_INSULTS ENV_EDITOR')
1995-06-18 17:58:42 +00:00
1994-03-09 23:51:22 +00:00
dnl
1995-03-30 02:12:19 +00:00
dnl If we don't have egrep we can't do anything...
dnl
AC_CHECK_PROG(EGREPPROG, egrep, egrep, )
1995-06-18 17:58:42 +00:00
if test -z "$EGREPPROG" ; then
1995-03-30 02:12:19 +00:00
echo "Sorry, configure requires egrep to run."
exit
fi
1995-06-18 17:58:42 +00:00
1995-03-30 02:12:19 +00:00
dnl
1994-03-09 23:51:22 +00:00
dnl C compiler checks
dnl
AC_PROG_CC
AC_PROG_CPP
1996-01-07 19:25:50 +00:00
AC_ISC_POSIX
1995-06-18 17:58:42 +00:00
1994-03-09 23:51:22 +00:00
dnl
1995-03-30 02:12:19 +00:00
dnl find programs we use
1994-05-24 16:50:57 +00:00
dnl
1995-03-30 02:12:19 +00:00
AC_CHECK_PROG(UNAMEPROG, uname, uname, )
AC_CHECK_PROG(TRPROG, tr, tr, )
AC_CHECK_PROG(SEDPROG, sed, sed, )
AC_CHECK_PROG(NROFFPROG, nroff, nroff, )
1995-06-18 17:58:42 +00:00
if test -z "$NROFFPROG" ; then
1994-08-05 21:48:56 +00:00
MANTYPE="cat"
fi
1995-06-18 17:58:42 +00:00
1995-07-17 04:21:17 +00:00
dnl
dnl is our OS using shadow passwords?
dnl XXX - need to add checks for various
dnl shadow password schemes after OS checks...
dnl
if test -z "$C2"; then
SUDO_CHECK_SHADOW(AC_DEFINE(HAVE_C2_SECURITY)
C2=1)
fi
1994-05-24 16:50:57 +00:00
dnl
1994-03-09 23:51:22 +00:00
dnl what architecture are we on?
dnl
1995-03-30 02:12:19 +00:00
SUDO_OSTYPE
1994-06-03 15:31:18 +00:00
OS=`echo $OS | $TRPROG '[[A-Z]]' '[[a-z]]'`
case "$OS" in
1994-05-28 23:36:22 +00:00
"sunos") echo "Looks like SunOS 4.x"
1995-07-17 04:21:17 +00:00
if test -n "$C2"; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SUNOS4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
fi
1994-05-28 23:36:22 +00:00
;;
"solaris") echo "Looks like Solaris"
1995-07-17 04:21:17 +00:00
if test -n "$C2"; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SVR4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
fi
1994-05-28 23:36:22 +00:00
;;
"aix") echo "Looks like AIX"
AC_DEFINE(_ALL_SOURCE)
1995-07-17 04:21:17 +00:00
if test -n "$C2"; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_AIX"
1995-07-17 04:21:17 +00:00
fi
1996-01-15 01:52:28 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -Wl,-bI:\$(srcdir)/aixcrypt.exp"
1994-05-28 23:36:22 +00:00
;;
1995-12-05 23:56:43 +00:00
"hp-ux") echo "Looks like HP-UX $OSREV"
# uncomment this for a statically linked sudo
# (XXX - should be an option to configure)
#STATIC_SUDO=true
1994-09-20 23:37:13 +00:00
if test "$OSREV" -lt 9 ; then
1995-12-05 23:56:43 +00:00
AC_DEFINE(BROKEN_SYSLOG)
1995-06-18 17:58:42 +00:00
if test -n "$GCC" ; then
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -static"
1994-09-20 23:37:13 +00:00
else
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -Wl,-a,archive"
1994-09-20 23:37:13 +00:00
fi
1995-07-17 04:21:17 +00:00
elif test "$OSREV" -eq 9 ; then
1995-12-05 23:56:43 +00:00
AC_DEFINE(BROKEN_SYSLOG)
if test -n "$STATIC_SUDO" ; then
if test -n "$GCC" ; then
SUDO_LDFLAGS="${SUDO_LDFLAGS} -static"
else
SUDO_LDFLAGS="${SUDO_LDFLAGS} -Wl,-a,archive"
fi
fi
# DCE support
if test -n "$DCE" ; then
# order of libs in 9.X is important. -lc_r must be last
SUDO_LIBS="-ldce -lM -lc_r"
if test -n "$GCC" ; then
CPPFLAGS="${CPPFLAGS} -D_HPUX_SOURCE -D_REENTRANT -I/usr/include/reentrant"
else
CPPFLAGS="${CPPFLAGS} -Aa -D_HPUX_SOURCE -D_REENTRANT -I/usr/include/reentrant"
fi
fi
# shadow pw support
1995-07-17 04:21:17 +00:00
if test -n "$C2"; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_HPUX9"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
fi
1995-11-20 03:31:20 +00:00
elif test "$OSREV" -eq 10 ; then
1995-12-05 23:56:43 +00:00
if test -n "$STATIC_SUDO" ; then
if test -n "$GCC" ; then
SUDO_LDFLAGS="${SUDO_LDFLAGS} -static"
else
SUDO_LDFLAGS="${SUDO_LDFLAGS} -Wl,-a,archive"
fi
fi
1995-11-20 03:31:20 +00:00
# DCE support
if test -n "$DCE" ; then
1995-12-05 23:56:43 +00:00
# order of libs in 10.0 is important. -ldce must be last
# note that gcc has it's own alloca()
if test -n "$GCC" ; then
SUDO_LIBS="-ldce"
CPPFLAGS="${CPPFLAGS} -D_HPUX_SOURCE"
else
SUDO_LIBS="-lPW -ldce"
VISUDO_LIBS="-lPW"
CPPFLAGS="${CPPFLAGS} -Aa -D_HPUX_SOURCE"
fi
fi
1995-11-20 03:31:20 +00:00
# shadow pw support
1995-12-05 23:56:43 +00:00
if test -n "$C2"; then
1995-11-28 04:32:13 +00:00
SHADOW_TYPE="SPW_HPUX9"
1995-11-20 03:31:20 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} /usr/lib/libsec.1"
1995-11-20 03:31:20 +00:00
fi
fi
# AFS support
if test -n "$AFS" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="-lBSD ${SUDO_LIBS}"
1994-05-28 23:36:22 +00:00
fi
;;
"osf1") echo "Looks like OSF/1"
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -Wl,-no_library_replacement"
1994-09-01 02:17:20 +00:00
# C2 security stuff
1995-06-18 17:58:42 +00:00
if test -n "$C2" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lsecurity -laud"
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SECUREWARE"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1994-09-01 02:17:20 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
"irix") echo "Looks like IRIX"
1995-07-02 00:15:19 +00:00
# C2 security stuff
if test -n "$C2" ; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SVR4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1995-07-02 00:15:19 +00:00
fi
1994-05-28 23:36:22 +00:00
# configure doesn't think irix has stdc headers
# but it's good enough for sudo
AC_DEFINE(STDC_HEADERS)
1995-06-18 17:58:42 +00:00
if test -z "$NROFFPROG" ; then
1995-11-13 03:25:48 +00:00
MAN_POSTINSTALL=' /bin/rm -f $(mandir)/sudo.$(mansect).z ; /usr/bin/pack $(mandir)/sudo.$(mansect)'
1994-08-05 23:43:56 +00:00
if test -d /usr/share/catman/local; then
1995-11-19 02:27:39 +00:00
mandir="/usr/share/catman/local"
1994-08-05 23:43:56 +00:00
else
1995-11-19 02:27:39 +00:00
mandir="/usr/catman/local"
1994-08-05 23:43:56 +00:00
fi
1994-08-05 21:48:56 +00:00
else
1995-06-18 17:58:42 +00:00
if test -d "/usr/share/man/local" ; then
1995-11-19 02:27:39 +00:00
mandir="/usr/share/man/local"
1994-08-05 23:43:56 +00:00
else
1995-11-19 02:27:39 +00:00
mandir="/usr/man/local"
1994-08-05 23:43:56 +00:00
fi
1994-08-05 21:48:56 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
"linux") echo "Looks like linux"
1995-03-26 00:27:13 +00:00
# C2 security stuff
1995-06-18 17:58:42 +00:00
if test -n "$C2" ; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SVR4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1995-03-29 00:31:20 +00:00
OSDEFS="${OSDEFS} -DSHADOW_PWD"
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lshadow"
1994-09-01 17:22:02 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
"convex") echo "Looks like ConvexOs"
AC_DEFINE(_CONVEX_SOURCE)
1995-11-13 06:12:19 +00:00
if test -z "$GCC" ; then
CFLAGS="${CFLAGS} -D__STDC__"
fi
1994-07-07 00:52:41 +00:00
# C2 security stuff
1995-06-18 17:58:42 +00:00
if test -n "$C2" ; then
1994-07-07 00:52:41 +00:00
OSDEFS="${OSDEFS} -D_AUDIT -D_ACL -DSecureWare"
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lprot"
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SECUREWARE"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1994-07-07 00:52:41 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
"ultrix"*) echo "Looks like ultrix"
1994-07-25 22:25:15 +00:00
# C2 security stuff
1995-06-18 17:58:42 +00:00
if test -n "$C2" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lauth"
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_ULTRIX4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1994-07-25 22:25:15 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
1995-01-13 17:47:01 +00:00
"riscos") echo "Looks like RISCos"
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lsun -lbsd"
1995-06-18 17:58:42 +00:00
CPPFLAGS="${CPPFLAGS} -I/usr/include -I/usr/include/bsd"
1995-01-13 17:47:01 +00:00
OSDEFS="${OSDEFS} -D_MIPS"
;;
"isc") echo "Looks like INTERACTIVE"
1996-01-09 17:42:06 +00:00
SUDO_LIBS="${SUDO_LIBS} -lcrypt"
1995-07-17 04:21:17 +00:00
if test -n "$C2" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lsec"
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SVR4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
fi
1995-01-13 17:47:01 +00:00
OSDEFS="${OSDEFS} -D_ISC"
;;
1995-04-13 17:19:40 +00:00
"unix_sv") echo "Looks like UnixWare"
1995-07-17 04:21:17 +00:00
if test -n "$C2" ; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_SVR4"
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
fi
1995-04-13 17:19:40 +00:00
;;
1995-07-19 21:29:58 +00:00
"sco") echo "Looks like SCO"
if test -n "$C2" ; then
SHADOW_TYPE="SPW_SECUREWARE"
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE)
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lprot -lx"
1995-07-19 21:29:58 +00:00
fi
;;
"ksr"*) echo "Looks like a KSR (wow, yours is still running?!?)"
1994-05-28 23:36:22 +00:00
;;
"next") echo "Looks like NeXTstep"
;;
1995-07-17 04:21:17 +00:00
"bsd/386" | "bsd/os") echo "Looks like bsdi BSD/OS"
if test -n "$C2" ; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_BSD"
1995-07-17 04:21:17 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
1994-05-29 23:13:18 +00:00
"mtxinu") echo "Looks like mt Xinu MORE/BSD"
;;
1994-05-28 23:36:22 +00:00
"4.3bsd") echo "Looks like HP BSD"
1995-07-17 04:21:17 +00:00
if test -n "$C2" ; then
1995-07-18 03:53:56 +00:00
SHADOW_TYPE="SPW_BSD"
1995-07-17 04:21:17 +00:00
fi
1994-05-28 23:36:22 +00:00
;;
*"bsd"*) echo "Looks like some kind of BSD"
;;
"unknown") echo "I don't recognize your OS, but that's ok"
;;
*) echo "Hmmm, I don't recognize $OS offhand, but that's ok"
;;
esac
1995-06-18 17:58:42 +00:00
1995-07-17 04:21:17 +00:00
dnl
dnl search for various shadow password types unless we already know
dnl XXX - need to ACDEFINE *something* right???
dnl
1995-11-20 03:31:20 +00:00
if test -z "$SKEY" -a -z "$SECURID" -a -z "$AFS" -a -z "$KERB4" -a -z "$KERB5" -a -n "$DCE" -a -n "$C2" -a -z "$SHADOW_TYPE"
1995-07-17 04:21:17 +00:00
then
echo "checking for shadow password type..."
1995-07-18 03:53:56 +00:00
AC_CHECK_FUNC(getspnam, SHADOW_TYPE="SPW_SVR4", AC_CHECK_FUNC(getprpwuid, SHADOW_TYPE="SPW_SECUREWARE", [test -f /etc/master.passwd && SHADOW_TYPE="SPW_BSD"]))
1995-07-17 04:21:17 +00:00
case "$SHADOW_TYPE" in
1995-07-18 03:53:56 +00:00
"SPW_SVR4") echo "shadow password type is getspnam (svr4)" ;
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE) ;;
1995-07-18 03:53:56 +00:00
"SPW_BSD") echo "shadow password type is /etc/master.passwd (BSD)" ;;
"SPW_SECUREWARE") echo "shadow password type is etprpwuid (SecureWare)" ;
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lprot -lx" ;
1995-07-17 04:21:17 +00:00
AC_DEFINE_UNQUOTED(SHADOW_TYPE, $SHADOW_TYPE) ;;
*) echo "unknown" ;
echo "Unable to determine shadow passwd type, sudo may not be able to verify passwords" ;;
esac
fi
1994-11-08 01:40:52 +00:00
dnl
1994-05-28 23:36:22 +00:00
dnl C compiler checks (to be done after os checks)
1994-03-12 18:37:58 +00:00
dnl
1995-03-28 02:15:39 +00:00
AC_PROG_GCC_TRADITIONAL
AC_C_CONST
1994-03-09 23:51:22 +00:00
dnl
1994-05-24 16:50:57 +00:00
dnl Program checks
1994-03-09 23:51:22 +00:00
dnl
AC_PROG_YACC
AC_PROG_LEX
1995-03-28 05:22:27 +00:00
AC_PROG_INSTALL
1994-03-09 23:51:22 +00:00
SUDO_PROG_SENDMAIL
1994-06-04 18:48:19 +00:00
SUDO_PROG_PWD
1995-01-13 17:47:01 +00:00
SUDO_PROG_MV
1994-03-12 18:37:58 +00:00
SUDO_PROG_VI
1994-03-09 23:51:22 +00:00
dnl
dnl Header file checks
dnl
1995-03-28 02:15:39 +00:00
AC_HEADER_STDC
AC_HEADER_DIRENT
1996-01-09 17:42:06 +00:00
AC_CHECK_HEADERS(string.h strings.h unistd.h malloc.h paths.h utime.h sys/sockio.h sys/bsdtypes.h)
1995-03-26 01:39:00 +00:00
dnl ultrix termio/termios are broken
1994-06-24 23:45:39 +00:00
if test "$OS" != "ultrix" ; then
1995-09-03 18:11:25 +00:00
AC_CHECK_HEADERS(termio.h)
AC_CHECK_HEADERS(termios.h, AC_CHECK_FUNCS(tcgetattr))
1994-06-13 19:54:58 +00:00
fi
1994-03-09 23:51:22 +00:00
dnl
dnl typedef checks
dnl
1995-03-28 02:15:39 +00:00
AC_TYPE_MODE_T
AC_TYPE_UID_T
1995-03-30 02:12:19 +00:00
SUDO_TYPE_SIZE_T
SUDO_TYPE_SSIZE_T
1995-03-28 05:22:27 +00:00
SUDO_FULL_VOID
1995-07-23 21:48:17 +00:00
SUDO_UID_T_LEN
1995-07-01 20:04:39 +00:00
SUDO_SOCK_SA_LEN
1994-05-25 03:07:49 +00:00
dnl
dnl only set RETSIGTYPE if it is not set already
dnl
case "$DEFS" in
*"RETSIGTYPE"*) ;;
1995-03-28 02:15:39 +00:00
*) AC_TYPE_SIGNAL;;
1994-05-25 03:07:49 +00:00
esac
1994-03-09 23:51:22 +00:00
dnl
1994-05-24 16:50:57 +00:00
dnl Function checks
1994-03-09 23:51:22 +00:00
dnl
1995-09-03 18:11:25 +00:00
AC_CHECK_FUNCS(strchr strrchr memcpy memset sysconf sigaction tzset strcasecmp)
1995-07-25 00:03:20 +00:00
AC_CHECK_FUNC(innetgr, AC_DEFINE(HAVE_INNETGR) AC_CHECK_FUNCS(getdomainname))
1995-06-19 19:23:30 +00:00
AC_CHECK_FUNC(getwd, AC_DEFINE(HAVE_GETWD), LIBOBJS="$LIBOBJS getwd.o")
1995-03-28 02:15:39 +00:00
AC_CHECK_FUNC(strdup, AC_DEFINE(HAVE_STRDUP), LIBOBJS="$LIBOBJS strdup.o")
1996-01-04 05:41:19 +00:00
AC_CHECK_FUNC(lsearch, AC_DEFINE(HAVE_LSEARCH), AC_CHECK_LIB(compat, lsearch, AC_CHECK_HEADER(search.h, AC_DEFINE(HAVE_LSEARCH) SUDO_LIBS="${SUDO_LIBS} -lcompat" ; VISUDO_LIBS="${VISUDO_LIBS} -lcompat", LIBOBJS="$LIBOBJS lsearch.o"), LIBOBJS="$LIBOBJS lsearch.o"))
1995-03-28 02:15:39 +00:00
AC_CHECK_FUNC(setenv, AC_DEFINE(HAVE_SETENV), AC_FUNC_CHECK(putenv, AC_DEFINE(HAVE_PUTENV), LIBOBJS="$LIBOBJS putenv.o"))
1995-06-18 00:46:55 +00:00
AC_CHECK_FUNC(utime, AC_DEFINE(HAVE_UTIME)
1995-06-19 19:19:26 +00:00
SUDO_FUNC_UTIME_POSIX
1995-06-20 20:56:03 +00:00
AC_FUNC_UTIME_NULL, LIBOBJS="$LIBOBJS utime.o")
1994-03-09 23:51:22 +00:00
dnl
1995-06-07 05:44:36 +00:00
dnl if crypt(3) not in libc, look elsewhere
dnl
1995-12-06 22:45:01 +00:00
AC_CHECK_FUNC(crypt, ,AC_CHECK_LIB(crypt, crypt, SUDO_LIBS="${SUDO_LIBS} -lcrypt", AC_CHECK_LIB(crypt_d, crypt, SUDO_LIBS="${SUDO_LIBS} -lcrypt_d", AC_CHECK_LIB(crypt, ufc, SUDO_LIBS="${SUDO_LIBS} -lufc"))))
1995-06-07 05:44:36 +00:00
dnl
1994-03-09 23:51:22 +00:00
dnl library checks
dnl
1995-08-13 04:33:39 +00:00
dnl Irix doesn't want -lnsl or -lsocket (and Irix 4 needs -lsun)
if test "$OS" != "irix" ; then
1995-12-06 22:45:01 +00:00
AC_CHECK_LIB(nsl, main, SUDO_LIBS="${SUDO_LIBS} -lnsl")
AC_CHECK_LIB(socket, main, SUDO_LIBS="${SUDO_LIBS} -lsocket")
1995-08-13 04:33:39 +00:00
elif test "$OSREV" -lt 5 ; then
1995-12-06 22:45:01 +00:00
AC_CHECK_LIB(sun, getpwnam, [SUDO_LIBS="${SUDO_LIBS} -lsun"
VISUDO_LIBS="${VISUDO_LIBS} -lsun"]
)
1995-01-27 01:52:33 +00:00
fi
1995-12-06 22:45:01 +00:00
AC_CHECK_LIB(inet, main, SUDO_LIBS="${SUDO_LIBS} -linet")
1994-03-09 23:51:22 +00:00
dnl
1995-06-18 17:58:42 +00:00
dnl Find kerberos includes and libs or complain
dnl
if test -n "$KERB4" -o -n "$KERB5" ; then
if test -d "/usr/include/kerberosIV" ; then
CPPFLAGS="${CPPFLAGS} -I/usr/include/kerberosIV"
elif test -d "/usr/local/include/kerberosIV" ; then
CPPFLAGS="${CPPFLAGS} -I/usr/local/include/kerberosIV"
elif test -d "/usr/kerberos/include" ; then
CPPFLAGS="${CPPFLAGS} -I/usr/kerberos/include"
else
1995-12-06 22:30:54 +00:00
echo 'Unable to locate kerberos include files, you will have to edit the Makefile and add -I/path/to/krb/includes to CPPFLAGS'
1995-06-18 17:58:42 +00:00
fi
if test -d "/usr/kerberos/lib" ; then
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -L/usr/kerberos/lib"
1995-06-18 17:58:42 +00:00
elif test -d "/usr/lib/kerberos" ; then
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -L/usr/lib/kerberos"
1995-06-18 17:58:42 +00:00
elif test -f "/usr/local/lib/libkrb.a" ; then
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -L/usr/local/lib"
1995-06-18 17:58:42 +00:00
elif test ! -f "/usr/lib/libkrb.a" ; then
1995-12-06 22:30:54 +00:00
echo 'Unable to locate kerberos libraries, you will have to edit the Makefile and add -L/path/to/krb/libs to SUDO_LDFLAGS'
1995-06-18 17:58:42 +00:00
fi
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lkrb -ldes"
1995-06-18 17:58:42 +00:00
if test -n "$KERB5" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -ldes425 -lkrb5 -lcrypto -lcom_err"
1995-06-18 17:58:42 +00:00
fi
fi
dnl
dnl extra AFS libs
dnl
if test -n "$AFS" ; then
if test -d "/usr/lib/afs" ; then
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -L/usr/lib/afs"
1995-06-18 17:58:42 +00:00
else
1995-12-06 22:30:54 +00:00
echo 'Unable to locate AFS libraries, you will have to edit the Makefile and add -L/path/to/afs/libs to SUDO_LDFLAGS'
1995-06-18 17:58:42 +00:00
fi
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lkauth -lprot -lauth -lubik -lrxkad -lsys -ldes -lrx -llwp -lcom_err -laudit -lutil"
1995-06-18 17:58:42 +00:00
fi
dnl
1995-11-20 03:31:20 +00:00
dnl extra DCE lib
dnl
if test -n "$DCE" ; then
1995-12-05 23:56:43 +00:00
DCE_OBJS="${DCE_OBJS} dce_pwent.o"
1995-11-20 03:31:20 +00:00
fi
dnl
dnl extra Skey lib and includes
dnl
1995-06-18 17:58:42 +00:00
if test -n "$SKEY" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} -lskey"
1995-11-19 23:25:51 +00:00
if test -f /usr/local/include/skey.h -a -f /usr/local/lib/libskey.a; then
CPPFLAGS="${CPPFLAGS} -I/usr/local/include"
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -L/usr/local/lib"
1995-11-21 23:00:41 +00:00
elif test -n "$CSOPS" -a -f /tools/cs/skey/include/skey.h -a -f /tools/cs/skey/lib/libskey.a; then
CPPFLAGS="${CPPFLAGS} -I/tools/cs/skey/include"
1995-12-05 23:56:43 +00:00
SUDO_LDFLAGS="${SUDO_LDFLAGS} -L/tools/cs/skey/lib"
1995-11-19 23:25:51 +00:00
else
1995-12-06 22:30:54 +00:00
echo 'Unable to locate libskey.a and/or skey.h, you will have to edit the Makefile and add -L/path/to/skey/lib to SUDO_LDFLAGS and/or -I/path/to/skey.h to CPPFLAGS'
1995-11-19 23:25:51 +00:00
fi
1995-06-18 17:58:42 +00:00
fi
1995-09-01 02:53:07 +00:00
dnl
dnl extra SecurID lib + includes
if test -n "$SECURID" ; then
1995-12-05 23:56:43 +00:00
SUDO_LIBS="${SUDO_LIBS} /usr/ace/sdiclient.a"
1995-09-01 02:53:07 +00:00
CPPFLAGS="${CPPFLAGS} -I/usr/ace"
fi
1994-05-24 16:50:57 +00:00
dnl
1995-03-30 02:12:19 +00:00
dnl Check for log file location
dnl
SUDO_LOGFILE
1995-06-18 17:58:42 +00:00
1995-11-19 02:27:39 +00:00
dnl
dnl Set exec_prefix
dnl
test "$exec_prefix" = "NONE" && exec_prefix='$(prefix)'
1995-03-30 02:12:19 +00:00
dnl
1994-05-24 16:50:57 +00:00
dnl Substitute into the Makefiles
1994-03-09 23:51:22 +00:00
dnl
1995-03-24 19:17:03 +00:00
AC_OUTPUT(Makefile)