dnl Process this file with autoconf to produce a configure script. AC_INIT(Source/Swig/swig.h) AC_PREREQ(2.0) . $srcdir/VERSION AC_SUBST(PACKAGE) AC_SUBST(VERSION) AC_SUBST(SWIG_VERSION) AC_SUBST(SWIG_SPIN) # Set name for machine-dependent library files AC_SUBST(MACHDEP) AC_MSG_CHECKING(MACHDEP) if test -z "$MACHDEP" then if test -f /usr/lib/NextStep/software_version; then set X `hostinfo | grep 'NeXT Mach.*:' | \ sed -e 's/://' -e 's/\./_/'` && \ ac_sys_system=next && ac_sys_release=$4 MACHDEP="$ac_sys_system$ac_sys_release$ac_sys_cpu" else ac_sys_system=`uname -s` if test "$ac_sys_system" = "AIX" ; then ac_sys_release=`uname -v` else ac_sys_release=`uname -r` fi ac_md_system=`echo $ac_sys_system | tr -d '[/ ]' | tr '[[A-Z]]' '[[a-z]]'` ac_md_release=`echo $ac_sys_release | tr -d '[/ ]' | sed 's/\..*//'` MACHDEP="$ac_md_system$ac_md_release" fi case MACHDEP in '') MACHDEP=unknown;; esac fi AC_MSG_RESULT($MACHDEP) AC_PROG_CC AC_PROG_CXX AC_PROG_RANLIB dnl Checks for programs. AC_SUBST(AR) AC_CHECK_PROGS(AR, ar aal, ar) AC_CHECK_PROGS(AUTOCONF, autoconf, "") dnl Checks for header files. AC_HEADER_STDC dnl Checks for library functions. # Set info about shared libraries. AC_SUBST(SO) AC_SUBST(LDSHARED) AC_SUBST(CCSHARED) AC_SUBST(LINKFORSHARED) # SO is the extension of shared libraries `(including the dot!) # -- usually .so, .sl on HP-UX AC_MSG_CHECKING(SO) if test -z "$SO" then case $ac_sys_system in hp*|HP*) SO=.sl;; *) SO=.so;; esac fi AC_MSG_RESULT($SO) # LDSHARED is the ld *command* used to create shared library # -- "ld" on SunOS 4.x.x, "ld -G" on SunOS 5.x, "ld -shared" on IRIX 5 # (Shared libraries in this instance are shared modules to be loaded into # Python, as opposed to building Python itself as a shared library.) AC_MSG_CHECKING(LDSHARED) if test -z "$LDSHARED" then case $ac_sys_system/$ac_sys_release in AIX*) LDSHARED="\$(srcdir)/ld_so_aix \$(CC)";; IRIX/5*) LDSHARED="ld -shared";; IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";; SunOS/4*) LDSHARED="ld";; SunOS/5*) LDSHARED="ld -G";; hp*|HP*) LDSHARED="ld -b";; OSF*) LDSHARED="ld -shared -expect_unresolved \"*\"";; DYNIX/ptx*) LDSHARED="ld -G";; next/*) if test "$ns_dyld" then LDSHARED='$(CC) $(LDFLAGS) -bundle -prebind' else LDSHARED='$(CC) $(CFLAGS) -nostdlib -r'; fi if test "$with_next_framework" ; then LDSHARED="$LDSHARED \$(LDLIBRARY)" fi ;; Linux*) LDSHARED="gcc -shared";; dgux*) LDSHARED="ld -G";; FreeBSD*/3*) LDSHARED="gcc -shared";; FreeBSD*|OpenBSD*) LDSHARED="ld -Bshareable";; NetBSD*) if [[ "`$CC -dM -E - ], , not_really_there="yes") else if test ! -r $x_includes/X11/Intrinsic.h; then not_really_there="yes" fi fi fi if test "$no_x" = "yes" -o "$not_really_there" = "yes"; then AC_MSG_CHECKING(for X11 header files) XINCLUDES="# no special path needed" AC_TRY_CPP([#include ], , XINCLUDES="nope") if test "$XINCLUDES" = nope; then dirs="/usr/unsupported/include /usr/local/include /usr/X386/include /usr/include/X11R4 /usr/X11R5/include /usr/include/X11R5 /usr/openwin/include /usr/X11/include /usr/sww/include /usr/X11R6/include /usr/include/X11R6" for i in $dirs ; do if test -r $i/X11/Intrinsic.h; then AC_MSG_RESULT($i) XINCLUDES=" -I$i" break fi done fi else if test "$x_includes" != ""; then XINCLUDES=-I$x_includes else XINCLUDES="# no special path needed" fi fi if test "$XINCLUDES" = nope; then AC_MSG_RESULT(couldn't find any!) XINCLUDES="# no include files found" fi if test "$no_x" = yes; then AC_MSG_CHECKING(for X11 libraries) XLIBSW=nope dirs="/usr/unsupported/lib /usr/local/lib /usr/X386/lib /usr/lib/X11R4 /usr/X11R5/lib /usr/lib/X11R5 /usr/X11R6/lib /usr/lib/X11R6 /usr/openwin/lib /usr/X11/lib /usr/sww/X11/lib" for i in $dirs ; do if test -r $i/libX11.a -o -r $i/libX11.so -o -r $i/libX11.sl; then AC_MSG_RESULT($i) XLIBSW="-L$i -lX11" break fi done else if test "$x_libraries" = ""; then XLIBSW=-lX11 else XLIBSW="-L$x_libraries -lX11" fi fi if test "$XLIBSW" = nope ; then AC_CHECK_LIB(Xwindow, XCreateWindow, XLIBSW=-lXwindow) fi if test "$XLIBSW" = nope ; then AC_MSG_RESULT(couldn't find any! Using -lX11.) XLIBSW=-lX11 fi AC_SUBST(XINCLUDES) AC_SUBST(XLIBSW) #-------------------------------------------------------------------- # Try to locate the Tcl package #-------------------------------------------------------------------- TCLINCLUDE=nope TCLLIB=nope TCLPACKAGE=nope AC_ARG_WITH(tcl,[ --with-tcl=path Set location of Tcl package],[ TCLPACKAGE="$withval"], [TCLPACKAGE=nope]) AC_ARG_WITH(tclincl,[ --with-tclincl=path Set location of Tcl include directory],[ TCLINCLUDE="-I$withval"], [TCLINCLUDE=nope]) AC_ARG_WITH(tcllib,[ --with-tcllib=path Set location of Tcl library directory],[ TCLLIB="-L$withval"], [TCLLIB=nope]) if test "$TCLINCLUDE" = nope; then if test "$TCLPACKAGE" != nope; then TCLINCLUDE="-I$TCLPACKAGE/include" fi fi if test "$TCLLIB" = nope; then if test "$TCLPACKAGE" != nope; then TCLLIB="-L$TCLPACKAGE/lib" fi fi AC_MSG_CHECKING(for Tcl header files) if test "$TCLINCLUDE" = nope; then AC_TRY_CPP([#include ], , TCLINCLUDE="nope") if test "$TCLINCLUDE" = nope; then dirs="$prefix/include /usr/local/include /usr/include /opt/local/include /home/sci/local/include" for i in $dirs ; do if test -r $i/tcl.h; then AC_MSG_RESULT($i) TCLINCLUDE="-I$i" break fi done fi if test "$TCLINCLUDE" = nope; then TCLINCLUDE="-I/usr/local/include" AC_MSG_RESULT(not found) fi else AC_MSG_RESULT($TCLINCLUDE) fi AC_MSG_CHECKING(for Tcl library) if test "$TCLLIB" = nope; then dirs="$prefix/lib /usr/local/lib /usr/lib /opt/local/lib /home/sci/local/lib" for i in $dirs ; do if test -r $i/libtcl.a; then AC_MSG_RESULT($i) TCLLIB="-L$i" break fi done if test "$TCLLIB" = nope; then AC_MSG_RESULT(not found) TCLLIB="-L/usr/local/lib" fi else AC_MSG_RESULT($TCLLIB) fi AC_SUBST(TCLINCLUDE) AC_SUBST(TCLLIB) #---------------------------------------------------------------- # Look for Python #---------------------------------------------------------------- PYINCLUDE=nope PYLIB=nope PYPACKAGE=nope PYLINK="-lModules -lPython -lObjects -lParser" AC_ARG_WITH(py,[ --with-py=path Set location of Python],[ PYPACKAGE="$withval"], [PYPACKAGE=nope]) AC_ARG_WITH(pyincl,[ --with-pyincl=path Set location of Python include directory],[ PYINCLUDE="$withval"], [PYINCLUDE=nope]) AC_ARG_WITH(pylib,[ --with-pylib=path Set location of Python library directory],[ PYLIB="$withval"], [PYLIB=nope]) if test "$PYINCLUDE" = nope; then if test "$PYPACKAGE" != nope; then PYINCLUDE="$PYPACKAGE/include" fi fi if test "$PYLIB" = nope; then if test "$PYPACKAGE" != nope; then PYLIB="$PYPACKAGE/lib" fi fi AC_MSG_CHECKING(for Python header files) dirs="$PYINCLUDE $PYINCLUDE/python1.5 $PYINCLUDE/python1.4 $PYINCLUDE/Py $prefix/include/python1.5 $prefix/include/python1.4 /usr/local/include/python1.5 /usr/include/python1.5 /usr/local/include/python1.4 /usr/include/python1.4 $prefix/include/Py /usr/local/include/Py /usr/include/Py" for i in $dirs ; do if test -r $i/Python.h; then AC_MSG_RESULT($i) PYINCLUDE="-I$i" break fi done if test "$PYINCLUDE" = nope; then PYINCLUDE="-I/usr/local/include/Py" AC_MSG_RESULT(not found) fi AC_MSG_CHECKING(for Python library) dirs="$PYLIB $PYLIB/config $PYLIB/lib $PYLIB/python1.5/config $PYLIB/python1.4/config $PYLIB/python/lib $prefix/lib/python1.5/config $prefix/lib/python1.4/config /usr/local/lib/python1.5/config /usr/lib/python1.5 /usr/local/lib/python1.4/config /usr/lib/python1.4 $prefix/lib/python/lib /usr/local/lib/python/lib /usr/lib/python/lib /home/sci/local/lib/python" for i in $dirs ; do if test -r $i/libpython1.5.a; then AC_MSG_RESULT($i) PYLIB="$i" PYINCLUDE="$PYINCLUDE -I$i" PYLINK="-lpython1.5" break fi if test -r $i/libPython.a; then AC_MSG_RESULT($i) PYLIB="$i" PYINCLUDE="$PYINCLUDE -I$i" break fi done if test "$PYLIB" = nope; then AC_MSG_RESULT(not found) PYLIB="/usr/local/lib/python/lib" PYINCLUDE="$PYINCLUDE -I$PYLIB" fi AC_SUBST(PYINCLUDE) AC_SUBST(PYLIB) AC_SUBST(PYLINK) #---------------------------------------------------------------- # Look for Perl5 #---------------------------------------------------------------- PERLBIN=nope AC_ARG_WITH(perl5,[ --with-perl5=path Set location of Perl5 executable],[ PERLBIN="$withval"], [PERLBIN=nope]) # First figure out what the name of Perl5 is if test "$PERLBIN" = nope; then AC_CHECK_PROGS(PERL, perl5.004 perl5.003 perl5.002 perl5.001 perl5 perl,nope) else PERL="$PERLBIN" fi AC_MSG_CHECKING(for Perl5 header files) if test "$PERL" != nope; then PERL5DIR=`($PERL -e 'use Config; print $Config{archlib};') 2>/dev/null` if test "$PERL5DIR" != ""; then dirs="$PERL5DIR $PERL5DIR/CORE" PERL5EXT=none for i in $dirs; do if test -r $i/perl.h; then AC_MSG_RESULT($i) PERL5EXT="$i" break; fi done if test "$PERL5EXT" = none; then PERL5EXT="$PERL5DIR/CORE" AC_MSG_RESULT(could not locate perl.h...using $PERL5EXT) fi else AC_MSG_RESULT(unable to determine perl5 configuration) PERL5EXT=$PERL5DIR fi else AC_MSG_RESULT(could not figure out how to run perl5) PERL5EXT="/usr/local/lib/perl/archname/5.003/CORE" fi AC_SUBST(PERL5EXT) AC_SUBST(ROOT_DIR)ROOT_DIR=`pwd` if test ! -r Source/DOH/configure; then cd Source/DOH autoconf cd ../.. fi if test -d Source/SWILL/SWILL; then if test ! -r Source/SWILL/configure; then cd Source/SWILL autoconf cd ../.. fi fi cd Tools; ./ltconfig --enable-dlopen ltmain.sh; cd .. AC_CONFIG_SUBDIRS(Source/SWILL Source/DOH) AC_OUTPUT( Examples/Makefile Makefile Runtime/Makefile Source/Expat/Makefile Source/Experiment/Makefile Source/Include/swigconfig.h Source/Include/swigver.h Source/LParse/Makefile Source/Modules1.1/Makefile Source/Preprocessor/Makefile Source/SWIG1.1/Makefile Source/Swig/Makefile Source/Swim/Makefile Source/Xmlparse/Makefile )