source: configure.ac @ 4df2568

debianrelease-1.10release-1.4release-1.5release-1.6release-1.7release-1.8release-1.9
Last change on this file since 4df2568 was 87afe92, checked in by Sam Hartman <hartmans@mit.edu>, 15 years ago
Support -fstack-protector Gcc and some Linux environments support a -fstack-protector option to guard against buffer overflows. Sometimes this requires linking against -lssp. When this option works, use it in the build. Users may set PROTECT_CFLAGS to override.
  • Property mode set to 100644
File size: 4.1 KB
RevLine 
[1aee7d9]1dnl $Id$
[7d4fbcd]2dnl Process this file with autoconf to produce a configure script.
3AC_INIT(owl.c)
4
5AC_CONFIG_HEADER(config.h)
6
7AC_PROG_CC
8
9dnl If we're using GCC, enable all warnings
10if test "$GCC" = yes; then
11     CFLAGS="$CFLAGS -Wall -g";
12fi
13
[762512d]14m4_include(/usr/share/aclocal/pkg.m4)
15dnl m4_include(pkg.m4)
[e51b410]16
[7d4fbcd]17dnl Check for Athena
18AC_MSG_CHECKING(for /usr/athena/include)
19if test -d /usr/athena/include; then
20        CFLAGS=${CFLAGS}\ -I/usr/athena/include
[e6449bc]21        CPPFLAGS=${CPPFLAGS}\ -I/usr/athena/include
[7d4fbcd]22        AC_MSG_RESULT(yes)
23else
24        AC_MSG_RESULT(no)
25fi
26AC_MSG_CHECKING(for /usr/athena/lib)
27if test -d /usr/athena/lib; then
[1d7e094]28        LDFLAGS=${LDFLAGS}\ -L/usr/athena/lib
[7d4fbcd]29        AC_MSG_RESULT(yes)
30else
31        AC_MSG_RESULT(no)
32fi
33
[fe39450]34dnl Check for kerberosIV include
[18e28a4]35AC_MSG_CHECKING(for kerberosIV)
[fe39450]36if test -d /usr/include/kerberosIV; then
37        CFLAGS=${CFLAGS}\ -I/usr/include/kerberosIV
38        CPPFLAGS=${CPPFLAGS}\ -I/usr/include/kerberosIV
39        AC_MSG_RESULT(yes)
[18e28a4]40elif test -d /usr/local/include/kerberosIV; then
41        CFLAGS=${CFLAGS}\ -I/usr/local/include/kerberosIV
42        CPPFLAGS=${CPPFLAGS}\ -I/usr/local/include/kerberosIV
43        AC_MSG_RESULT(yes)
[fe39450]44else
45        AC_MSG_RESULT(no)
46fi
[87afe92]47PROTECT_CFLAGS=${PROTECT_CFLAGS-"-fstack-protector"}
48SAVE_CFLAGS=$CFLAGS
49CFLAGS="$CFLAGS $PROTECT_CFLAGS"
50AC_MSG_CHECKING(whether protection cflags work)
51AC_COMPILE_IFELSE(int i;,
52    [AC_MSG_RESULT(yes)],
53    [AC_MSG_RESULT(no)
54    CFLAGS=$SAVE_CFLAGS])
[fe39450]55
[87afe92]56
57AC_CHECK_LIB(ssp, __stack_chk_guard)
[d54035d]58AC_CHECK_LIB(ncursesw, initscr,, AC_MSG_ERROR(No libncursesw found.))
[7d4fbcd]59AC_CHECK_LIB(com_err, com_err)
60AC_CHECK_LIB(nsl, gethostbyname)
61AC_CHECK_LIB(socket, socket)
62AC_CHECK_LIB(k5crypto, krb5_derive_key)
[8298425]63dnl AC_CHECK_LIB(des425, req_act_vno)
64AC_CHECK_LIB(des425, des_cbc_encrypt)
[d09e5a1]65AC_CHECK_LIB(resolv, res_search)
[7d4fbcd]66AC_CHECK_LIB(krb5, krb5_get_credentials)
[d09e5a1]67AC_CHECK_LIB(krb4, krb_sendauth,,
68   AC_CHECK_LIB(krb, krb_sendauth))
[09489b89]69dnl AC_CHECK_LIB(zephyr, ZGetSender,, AC_MSG_ERROR(No zephyr library found.))
70AC_CHECK_LIB(zephyr, ZGetSender)
[ac70242]71AC_CHECK_LIB(zephyr, ZInitLocationInfo, AC_DEFINE([HAVE_LIBZEPHYR_ZINITLOCATIONINFO], [], [Have ZInitLocationInfo]),)
72
[7ccc780]73AC_ARG_ENABLE([athstatic], AS_HELP_STRING([--enable-athstatic],
74                                          [Statically link libraries in /usr/athena/lib]),
75                                          [ATHSTATIC=./athstatic],
76                                          [ATHSTATIC=])
77
[dc2ad79]78AC_CHECK_FUNCS(use_default_colors resizeterm des_string_to_key des_key_sched des_ecb_encrypt)
[e51b410]79
[ac70242]80AC_MSG_CHECKING(for des_ecb_encrypt prototype)
81AC_TRY_COMPILE([#include <des.h>
82int des_ecb_encrypt(char foo[], char bar[], des_key_schedule baz, int qux);],
83[int foo = des_ecb_encrypt(0,0,0,0);],
84ac_cv_des_ecb_encrypt_proto=no,
85ac_cv_des_ecb_encrypt_proto=yes)
86AC_MSG_RESULT($ac_cv_des_ecb_encrypt_proto)
87if test "$ac_cv_des_ecb_encrypt_proto" = yes; then
88        AC_DEFINE([HAVE_DES_ECB_ENCRYPT_PROTO], [], [have proto for des_ecb_encrypt])
89fi
[7d4fbcd]90
91dnl Checks for header files.
92AC_HEADER_STDC
93AC_HEADER_SYS_WAIT
[e8b95f8]94AC_CHECK_HEADERS(strings.h sys/ioctl.h sys/filio.h unistd.h com_err.h)
[7d4fbcd]95
96dnl Add CFLAGS for embeded perl
97FOO=`perl -MExtUtils::Embed -e ccopts`
98echo Adding perl CFLAGS ${FOO}
99CFLAGS=${CFLAGS}\ ${FOO}
100
[e51b410]101dnl Find the location of perl XSUBPP
[8ee73f8d]102AC_MSG_CHECKING(for the perl xsubpp precompiler)
[6794f72]103XSUBPPDIR="`(perl -MExtUtils::MakeMaker -e 'print ExtUtils::MakeMaker->new({NAME => qw(owl)})->tool_xsubpp;') | grep \^XSUBPPDIR | sed -e 's/XSUBPPDIR = //g;'`"
[8ee73f8d]104if test -n "${XSUBPPDIR}"; then
105   AC_MSG_RESULT(${XSUBPPDIR})
106else
107   AC_MSG_ERROR(not found)
108fi
109
[4ad3480]110if test -f "${XSUBPPDIR}/typemap"; then
111   XSUBPPFLAGS="-typemap ${XSUBPPDIR}/typemap"
112else
113   XSUBPPFLAGS=""
114fi
115
[18e28a4]116dnl Add LDFLAGS for embedded perl
[3f21b8e]117FOO=`perl -MExtUtils::Embed -e ldopts`
[7d4fbcd]118echo Adding perl LDFLAGS ${FOO}
119LDFLAGS=${LDFLAGS}\ ${FOO}
120
[34509d5]121dnl Add CFLAGS and LDFLAGS for glib-2.0
122PKG_CHECK_MODULES(GLIB,glib-2.0)
123
124echo Adding glib-2.0 CFLAGS ${GLIB_CFLAGS}
[d9337637]125CFLAGS="${GLIB_CFLAGS} ${CFLAGS}"
[34509d5]126echo Adding glib-2.0 LDFLAGS ${GLIB_LIBS}
[d9337637]127LDFLAGS="${GLIB_LIBS} ${LDFLAGS}"
[34509d5]128
129
[7d4fbcd]130dnl Checks for typedefs, structures, and compiler characteristics.
131
[15bd5ef]132AC_SUBST(XSUBPPDIR)
[4ad3480]133AC_SUBST(XSUBPPFLAGS)
[7ccc780]134AC_SUBST(ATHSTATIC)
[8ee73f8d]135
[ac70242]136AC_PROG_INSTALL
137
[d09e5a1]138AC_CONFIG_SUBDIRS(libfaim)
139
[7d4fbcd]140AC_OUTPUT(Makefile)
Note: See TracBrowser for help on using the repository browser.