X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/blobdiff_plain/2a648b46f57355388f27898c9a837e77219f8189..refs/heads/moira-krb5:/configure.in diff --git a/configure.in b/configure.in index ab760569..48e90c7b 100755 --- a/configure.in +++ b/configure.in @@ -10,6 +10,25 @@ AC_DEFUN(MR_EXTEND, [ esac ]) +AC_CANONICAL_HOST +# SO_LDFLAGS setting below is a great big ick. +# But it beats sucking in libtool for one small part of the source tree. +case $host_os in +solaris*) + short_os=solaris + SO_LDFLAGS="-G" + ;; +irix*) + short_os=irix + SO_LDFLAGS="-shared" + ;; +linux*) + short_os=linux + SO_LDFLAGS="-shared" + ;; +esac +AC_SUBST(SO_LDFLAGS) + dnl Define for both C and Pro*C AC_DEFUN(MR_DEFINE, [ AC_DEFINE($1) @@ -109,13 +128,15 @@ if test "$krb4" != yes; then elif test -d /usr/include/kerberosIV; then MR_INCLUDE(/usr/include/kerberosIV) fi +AC_CHECK_LIB(k5crypto, main, crypto="k5crypto", + [AC_CHECK_LIB(crypto, main, crypto="crypto")]) AC_CHECK_LIB(krb4, krb_rd_req, - [KRB4_LIBS="-lkrb4 -ldes425 -lkrb5 -lcrypto"], + [KRB4_LIBS="-lkrb4 -ldes425 -lkrb5 -l${crypto}"], [AC_CHECK_LIB(krb, krb_rd_req, [KRB4_LIBS="-lkrb -ldes"], [AC_MSG_ERROR(Kerberos 4 libraries not found)], $LIBPATH -ldes)], - $LIBPATH -ldes425 -lkrb5 -lcrypto -lcom_err) + $LIBPATH -ldes425 -lkrb5 -l${crypto} -lcom_err) AC_MSG_CHECKING(for Kerberos 5) AC_ARG_WITH(krb5, @@ -128,7 +149,7 @@ if test "$krb5" != no; then REG_SVR_INCLUDES=-I$krb5/include REG_SVR_LIBS=-L$krb5/lib fi - REG_SVR_LIBS="$REG_SVR_LIBS -lkadm5clnt -lgssapi_krb5 -lgssrpc -ldyn -lkrb4 -ldes425 -lkrb5 -lcrypto" + REG_SVR_LIBS="$REG_SVR_LIBS -lkadm5clnt -lgssapi_krb5 -lgssrpc -ldyn -lkrb4 -ldes425 -lkrb5 -l${crypto}" else REG_SVR_DEFS=-DKRB4 REG_SVR_LIBS=-lkadm @@ -223,12 +244,15 @@ if test "$oracle" != no; then 2.0.6.0.0) SQL_LIBS="-L$oracle/lib -lsql $oracle/lib/osntab.o -lsqlnet -lora -lsqlnet -lnlsrtl -lcv6 -lcore -lnlsrtl -lcore -lm" ;; - *) + 2.2.4.0.0) SQL_LIBS="-L$oracle/lib -lclntsh -lxa -lsql -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lsqlnet -lncr -lsqlnet -lclient -lcommon -lgeneric -lepc -lnlsrtl3 -lc3v6 -lcore3 -lnlsrtl3 -lcore3 -lnlsrtl3 `cat $oracle/rdbms/lib/sysliblist` -lm -lthread" ;; + *) + SQL_LIBS="-L$oracle/lib -lclntsh `cat $oracle/lib/sysliblist` -R$oracle/lib -laio -lm -lthread" + ;; esac SVRSUBDIRS='$(SVRDIRS)' - SERVER_OUTPUT_FILES="db/Makefile server/Makefile backup/Makefile dbck/Makefile dcm/Makefile gen/Makefile reg_svr/Makefile regtape/Makefile" + SERVER_OUTPUT_FILES="db/Makefile server/Makefile backup/Makefile dbck/Makefile dcm/Makefile gen/Makefile incremental/Makefile reg_svr/Makefile regtape/Makefile" PRO_C=$oracle/bin/proc PRO_C_OPTS=CODE=ANSI_C PRO_C_DEFS="DEFINE=_PROC_ $PRO_C_DEFS" @@ -240,6 +264,54 @@ AC_SUBST(PRO_C_OPTS) AC_SUBST(SQL_LIBS) AC_SUBST(SVRSUBDIRS) +# Java support, for webmoira +AC_MSG_CHECKING(for Java) +AC_ARG_WITH(java, + [ --with-java=PREFIX Specify location of Java libs and headers], + [ java="$withval"], + [if test -n "$JAVA_HOME" -a -d "$JAVA_HOME"; then + java=$JAVA_HOME + else + java=no + fi]) +AC_MSG_RESULT($java) +if test "$java" != no; then + if test "$java" != yes; then + JAVA_CPPFLAGS="-I$java/include -I$java/include/$short_os" + fi + MR_DEFINE(HAVE_JAVA) + + WEBMOIRA_SUBDIRS="webmoira" + WEBMOIRA_OUTPUT_FILES="webmoira/Makefile" +fi +AC_SUBST(JAVA_CPPFLAGS) +AC_SUBST(WEBMOIRA_SUBDIRS) + +# LDAP support +AC_MSG_CHECKING(for LDAP) +AC_ARG_WITH(ldap, + [ --with-ldap=PREFIX Specify location of LDAP libs (for server)], + [ ldap="$withval"], + [if test -n "$LDAP_HOME" -a -d "$LDAP_HOME"; then + ldap=$LDAP_HOME + else + ldap=no + fi]) +AC_MSG_RESULT($ldap) +if test "$ldap" != no -a "$oracle" != no; then + if test "$ldap" != yes; then + LDAP_CPPFLAGS="-I$ldap/include" + LDAP_LIBS="-L$ldap/lib" + fi + MR_DEFINE(HAVE_LDAP) + + WINAD_SUBDIRS="winad" + WINAD_OUTPUT_FILES="incremental/winad/Makefile" +fi +AC_SUBST(LDAP_CPPFLAGS) +AC_SUBST(LDAP_LIBS) +AC_SUBST(WINAD_SUBDIRS) + # AFS support AC_MSG_CHECKING(for AFS) AC_ARG_WITH(afs, @@ -264,10 +336,10 @@ if test "$afs" != no -a "$oracle" != no; then $AFS_LIBS -lrx -llwp -lsys $AFS_EXTRA_LIBS) MR_DEFINE(HAVE_AFS) - AFS_SUBDIRS="incremental" - AFS_OUTPUT_FILES="incremental/Makefile" + AFS_SUBDIRS="afs" + AFS_OUTPUT_FILES="incremental/afs/Makefile" if test -d $srcdir/afssync; then - AFS_SUBDIRS="$AFS_SUBDIRS afssync" + AFS_SYNCDIR="afssync" AFS_OUTPUT_FILES="$AFS_OUTPUT_FILES afssync/Makefile" fi fi @@ -277,6 +349,7 @@ AC_SUBST(AFS_LIBS) AC_SUBST(AFS_EXTRA_LIBS) AC_SUBST(AFS_DIR) AC_SUBST(AFS_SUBDIRS) +AC_SUBST(AFS_SYNCDIR) # GNU readline AC_CHECKING(for GNU readline...) @@ -352,7 +425,24 @@ AC_SUBST(CURSES_LIBS) AC_SUBST(CURSES_SUBDIRS) -AC_CHECK_FUNCS(getusershell strlcpy strlcat) +AC_CHECK_FUNCS(getusershell strlcpy strlcat uname strvis) + +AC_CHECK_FUNC(sigaction, AC_DEFINE(HAVE_POSIX_SIGNALS)) + +AC_CHECK_HEADERS(unistd.h getopt.h) + +AC_CHECK_HEADER(netinet/in.h, AC_DEFINE(HAVE_NETINET_IN_H), no_netinet_in=yes) + +if test "$no_netinet_in" != "yes"; then + AC_MSG_CHECKING(for in_addr_t defined in netinet/in.h) + AC_EGREP_HEADER(in_addr_t, netinet/in.h, + ac_cv_type_in_addr_t=yes, ac_cv_type_in_addr_t=no) + AC_MSG_RESULT($ac_cv_type_in_addr_t) +fi + +if test "$ac_cv_type_in_addr_t" != "yes"; then + AC_DEFINE(in_addr_t, uint32_t) +fi MR_EXTEND(PRO_C_INCLUDES, INCLUDE='$(srcdir)') MR_INCLUDE('$(SRCTOP)/include') @@ -370,9 +460,11 @@ AC_SUBST(MR_LIBDEP) AC_OUTPUT(Makefile lib/Makefile include/Makefile clients/Makefile \ clients/lib/Makefile clients/addusr/Makefile \ - clients/blanche/Makefile clients/mailmaint/Makefile - clients/moira/Makefile clients/mrcheck/Makefile - clients/mrtest/Makefile clients/stella/Makefile \ - clients/passwd/Makefile update/Makefile man/Makefile \ - $SERVER_OUTPUT_FILES $AFS_OUTPUT_FILES \ + clients/blanche/Makefile clients/chfn/Makefile \ + clients/chpobox/Makefile clients/chsh/Makefile \ + clients/mailmaint/Makefile clients/moira/Makefile \ + clients/mrcheck/Makefile clients/mrtest/Makefile \ + clients/stanley/Makefile clients/stella/Makefile \ + update/Makefile man/Makefile $WEBMOIRA_OUTPUT_FILES \ + $SERVER_OUTPUT_FILES $WINAD_OUTPUT_FILES $AFS_OUTPUT_FILES \ $RSAREF_OUTPUT_FILES)