AC_CANONICAL_HOST replaces proprietary uname approach.
Initial support for mingw added (untested right now). Autotool support files moved to Tools/conf directory to get them out of the way. Might be a temporary home until the runtime libraries and libtool is fixed. git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4204 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
d47672d7e7
commit
b9d6e1536d
2 changed files with 80 additions and 106 deletions
|
|
@ -1,5 +1,7 @@
|
|||
#! /bin/sh
|
||||
# Bootstrap the development environment
|
||||
autoconf
|
||||
|
||||
set -x
|
||||
autoheader
|
||||
autoconf
|
||||
(cd Tools; autoconf)
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ dnl Process this file with autoconf to produce a configure script.
|
|||
AC_INIT([swig],[1.3.18],[http://www.swig.org])
|
||||
AC_PREREQ(2.53)
|
||||
AC_CONFIG_SRCDIR([Source/Swig/swig.h])
|
||||
AC_CONFIG_AUX_DIR([Tools/config])
|
||||
AC_CONFIG_HEADERS([Source/Include/swigconfig.h])
|
||||
|
||||
dnl Some extra defines for the config file
|
||||
|
|
@ -23,35 +24,9 @@ AH_TOP([
|
|||
#define SWIG_TCL_RUNTIME "-L" LIBDIR " -lswigtcl" RELEASE_SUFFIX
|
||||
])
|
||||
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
# 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)
|
||||
dnl Checks for programs.
|
||||
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
|
|
@ -59,11 +34,12 @@ AC_PROG_RANLIB
|
|||
|
||||
AC_DEFINE_UNQUOTED(SWIG_CXX, ["$CXX"], [Compiler that built SWIG])
|
||||
|
||||
dnl Checks for programs.
|
||||
|
||||
AC_SUBST(AR)
|
||||
AC_CHECK_PROGS(AR, ar aal, ar)
|
||||
AC_CHECK_PROGS(AUTOCONF, autoconf, "")
|
||||
|
||||
AC_PROG_YACC
|
||||
YFLAGS=-d
|
||||
AC_SUBST(YFLAGS)
|
||||
|
||||
dnl Checks for header files.
|
||||
AC_HEADER_STDC
|
||||
|
|
@ -78,14 +54,13 @@ AC_SUBST(TRYLINKINGWITHCXX)
|
|||
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;;
|
||||
CYGWIN*) SO=.dll;;
|
||||
*) SO=.so;;
|
||||
case $host in
|
||||
*-*-hp*) SO=.sl;;
|
||||
*-*-cygwin* | *-*-mingw*) SO=.dll;;
|
||||
*) SO=.so;;
|
||||
esac
|
||||
fi
|
||||
AC_MSG_RESULT($SO)
|
||||
|
|
@ -96,9 +71,9 @@ AC_MSG_RESULT($SO)
|
|||
AC_MSG_CHECKING(LDSHARED)
|
||||
if test -z "$LDSHARED"
|
||||
then
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
AIX*) LDSHARED="\$(srcdir)/ld_so_aix \$(CC)";;
|
||||
CYGWIN*)
|
||||
case $host in
|
||||
*-*-aix*) LDSHARED="\$(srcdir)/ld_so_aix \$(CC)";;
|
||||
*-*-cygwin* | *-*-mingw*)
|
||||
if test "$GCC" = yes; then
|
||||
LDSHARED="$CC -shared"
|
||||
else
|
||||
|
|
@ -110,14 +85,14 @@ then
|
|||
LDSHARED="$CC -shared"
|
||||
fi
|
||||
fi ;;
|
||||
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/*)
|
||||
*-*-irix5*) LDSHARED="ld -shared";;
|
||||
*-*-irix6*) LDSHARED="ld ${SGI_ABI} -shared -all";;
|
||||
*-*-sunos4*) LDSHARED="ld";;
|
||||
*-*-solaris*) LDSHARED="ld -G";;
|
||||
*-*-hp*) LDSHARED="ld -b";;
|
||||
*-*-osf*) LDSHARED="ld -shared -expect_unresolved \"*\"";;
|
||||
*-sequent-sysv4) LDSHARED="ld -G";;
|
||||
*-*-next*)
|
||||
if test "$ns_dyld"
|
||||
then LDSHARED='$(CC) $(LDFLAGS) -bundle -prebind'
|
||||
else LDSHARED='$(CC) $(CFLAGS) -nostdlib -r';
|
||||
|
|
@ -125,19 +100,19 @@ then
|
|||
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*)
|
||||
*-*-linux*) LDSHARED="gcc -shared";;
|
||||
*-*-dgux*) LDSHARED="ld -G";;
|
||||
*-*-freebsd3*) LDSHARED="gcc -shared";;
|
||||
*-*-freebsd* | *-*-openbsd*) LDSHARED="ld -Bshareable";;
|
||||
*-*-netbsd*)
|
||||
if [[ "`$CC -dM -E - </dev/null | grep __ELF__`" != "" ]]
|
||||
then
|
||||
LDSHARED="cc -shared"
|
||||
else
|
||||
LDSHARED="ld -Bshareable"
|
||||
fi;;
|
||||
SCO_SV*) LDSHARED="cc -G -KPIC -Ki486 -belf -Wl,-Bexport";;
|
||||
Darwin*) LDSHARED="cc -bundle -undefined suppress -flat_namespace";;
|
||||
*-sco-sysv*) LDSHARED="cc -G -KPIC -Ki486 -belf -Wl,-Bexport";;
|
||||
*-*-darwin*) LDSHARED="cc -bundle -undefined suppress -flat_namespace";;
|
||||
*) LDSHARED="ld";;
|
||||
esac
|
||||
fi
|
||||
|
|
@ -158,13 +133,13 @@ AC_MSG_RESULT($CXXSHARED)
|
|||
AC_MSG_CHECKING(TRYLINKINGWITHCXX)
|
||||
if test -z "$TRYLINKINGWITHCXX"
|
||||
then
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
SunOS/5*) if test "$GCC" = yes;
|
||||
case $host in
|
||||
*-*-solaris*) if test "$GCC" = yes;
|
||||
then TRYLINKINGWITHCXX="CXXSHARED= $CXX -Wl,-G";
|
||||
else TRYLINKINGWITHCXX="CXXSHARED= $CXX -G -L/opt/SUNWspro/lib -lCrun";
|
||||
fi;;
|
||||
Darwin*) TRYLINKINGWITHCXX="CXXSHARED= $CXX -bundle -undefined suppress -flat_namespace";;
|
||||
CYGWIN*)
|
||||
*-*-darwin*) TRYLINKINGWITHCXX="CXXSHARED= $CXX -bundle -undefined suppress -flat_namespace";;
|
||||
*-*-cygwin* | *-*-mingw*)
|
||||
if test "$GCC" = yes; then
|
||||
TRYLINKINGWITHCXX="CXXSHARED= $CXX -shared "
|
||||
else
|
||||
|
|
@ -184,16 +159,16 @@ AC_MSG_RESULT($TRYLINKINGWITHCXX)
|
|||
AC_MSG_CHECKING(CCSHARED)
|
||||
if test -z "$CCSHARED"
|
||||
then
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
hp*|HP*) if test "$GCC" = yes;
|
||||
case $host in
|
||||
*-*-hp*) if test "$GCC" = yes;
|
||||
then CCSHARED="-fpic";
|
||||
else CCSHARED="+z";
|
||||
fi;;
|
||||
Linux*) CCSHARED="-fpic";;
|
||||
FreeBSD*|OpenBSD*) CCSHARED="-fpic";;
|
||||
NetBSD*) CCSHARED="-fPIC";;
|
||||
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
|
||||
IRIX*/6*) case $CC in
|
||||
*-*-linux*) CCSHARED="-fpic";;
|
||||
*-*-freebsd* | *-*-openbsd*) CCSHARED="-fpic";;
|
||||
*-*-netbsd*) CCSHARED="-fPIC";;
|
||||
*-sco-sysv*) CCSHARED="-KPIC -dy -Bdynamic";;
|
||||
*-*-irix6*) case $CC in
|
||||
*gcc*) CCSHARED="-shared";;
|
||||
*) CCSHARED="";;
|
||||
esac;;
|
||||
|
|
@ -201,18 +176,14 @@ then
|
|||
fi
|
||||
AC_MSG_RESULT($CCSHARED)
|
||||
|
||||
AC_PROG_YACC
|
||||
YFLAGS=-d
|
||||
AC_SUBST(YFLAGS)
|
||||
|
||||
# RPATH is the path used to look for shared library files.
|
||||
AC_MSG_CHECKING(RPATH)
|
||||
if test -z "$RPATH"
|
||||
then
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
SunOS/5*) RPATH='-R. -R$(exec_prefix)/lib';;
|
||||
IRIX*) RPATH='-rpath .:$(exec_prefix)/lib';;
|
||||
Linux*) RPATH='-Xlinker -rpath $(exec_prefix)/lib -Xlinker -rpath .';;
|
||||
case $host in
|
||||
*-*-solaris*) RPATH='-R. -R$(exec_prefix)/lib';;
|
||||
*-*-irix*) RPATH='-rpath .:$(exec_prefix)/lib';;
|
||||
*-*-linux*) RPATH='-Xlinker -rpath $(exec_prefix)/lib -Xlinker -rpath .';;
|
||||
*) RPATH='';;
|
||||
esac
|
||||
fi
|
||||
|
|
@ -225,14 +196,14 @@ AC_SUBST(RPATH)
|
|||
AC_MSG_CHECKING(LINKFORSHARED)
|
||||
if test -z "$LINKFORSHARED"
|
||||
then
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
AIX*) LINKFORSHARED='-Wl,-bE:$(srcdir)/python.exp -lld';;
|
||||
hp*|HP*)
|
||||
case $host in
|
||||
*-*-aix*) LINKFORSHARED='-Wl,-bE:$(srcdir)/python.exp -lld';;
|
||||
*-*-hp*)
|
||||
LINKFORSHARED="-Wl,-E -Wl,+s -Wl,+b\$(BINLIBDEST)/lib-dynload";;
|
||||
Linux*) LINKFORSHARED="-Xlinker -export-dynamic";;
|
||||
next/*) LINKFORSHARED="-u libsys_s";;
|
||||
SCO_SV*) LINKFORSHARED="-Bdynamic -dy -Wl,-Bexport";;
|
||||
IRIX*/6*) LINKFORSHARED="-all";;
|
||||
*-*-linux*) LINKFORSHARED="-Xlinker -export-dynamic";;
|
||||
*-*-next*) LINKFORSHARED="-u libsys_s";;
|
||||
*-sco-sysv*) LINKFORSHARED="-Bdynamic -dy -Wl,-Bexport";;
|
||||
*-*-irix6*) LINKFORSHARED="-all";;
|
||||
esac
|
||||
fi
|
||||
AC_MSG_RESULT($LINKFORSHARED)
|
||||
|
|
@ -252,12 +223,13 @@ AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX
|
|||
# broken. I see no elegant solution (probably CHECK_LIB should be
|
||||
# fixed to only add the library if the given entry point is not
|
||||
# satisfied without it).
|
||||
if test "`uname -s`" != IRIX
|
||||
then
|
||||
case $host in
|
||||
*-*-irix*)
|
||||
AC_CHECK_LIB(nsl, t_open, [LIBS="-lnsl $LIBS"]) # SVR4
|
||||
AC_CHECK_LIB(inet, gethostbyname, [LIBS="-linet $LIBS"], [], -lnsl) # Sequent
|
||||
AC_CHECK_LIB(socket, socket, [LIBS="-lsocket $LIBS"], [], $LIBS) # SVR4 sockets
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
AC_CHECK_LIB(swill, swill_init, [SWIGLIBS="-lswill $LIBS" SWILL="-DSWIG_SWILL"])
|
||||
|
|
@ -456,9 +428,9 @@ else
|
|||
AC_MSG_RESULT($TCLLIB)
|
||||
fi
|
||||
|
||||
# Only Cygwin (Windows) needs the library for dynamic linking
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) TCLDYNAMICLINKING="$TCLLIB";;
|
||||
# Cygwin (Windows) needs the library for dynamic linking
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) TCLDYNAMICLINKING="$TCLLIB";;
|
||||
*)TCLDYNAMICLINKING="";;
|
||||
esac
|
||||
|
||||
|
|
@ -562,9 +534,9 @@ if test -n "$PYTHON"; then
|
|||
fi
|
||||
fi
|
||||
|
||||
# Only Cygwin (Windows) needs the library for dynamic linking
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) PYTHONDYNAMICLINKING="-L$PYLIB $PYLINK"
|
||||
# Cygwin (Windows) needs the library for dynamic linking
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) PYTHONDYNAMICLINKING="-L$PYLIB $PYLINK"
|
||||
PYINCLUDE="-DUSE_DL_IMPORT $PYINCLUDE"
|
||||
;;
|
||||
*)PYTHONDYNAMICLINKING="";;
|
||||
|
|
@ -627,9 +599,9 @@ else
|
|||
# PERL5EXT="/usr/local/lib/perl/archname/5.003/CORE"
|
||||
fi
|
||||
|
||||
# Only Cygwin (Windows) needs the library for dynamic linking
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) PERL5DYNAMICLINKING="-L$PERL5EXT -l$PERL5LIB";;
|
||||
# Cygwin (Windows) needs the library for dynamic linking
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) PERL5DYNAMICLINKING="-L$PERL5EXT -l$PERL5LIB";;
|
||||
*)PERL5DYNAMICLINKING="";;
|
||||
esac
|
||||
|
||||
|
|
@ -668,8 +640,8 @@ if test -z "$JAVAINCDIR"; then
|
|||
JAVAINCDIR="/usr/j2sdk*/include /usr/local/j2sdk*/include /usr/jdk*/include /usr/local/jdk*/include /opt/j2sdk*/include /opt/jdk*/include /usr/java/include /usr/local/java/include /opt/java/include /usr/include/java /usr/local/include/java /usr/include/kaffe /usr/local/include/kaffe /usr/include /usr/local/include"
|
||||
|
||||
# Add in default installation directory on Windows for Cygwin
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) JAVAINCDIR="c:/j2sdk*/include d:/j2sdk*/include c:/jdk*/include d:/jdk*/include $JAVAINCDIR";;
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) JAVAINCDIR="c:/j2sdk*/include d:/j2sdk*/include c:/jdk*/include d:/jdk*/include $JAVAINCDIR";;
|
||||
*);;
|
||||
esac
|
||||
fi
|
||||
|
|
@ -700,8 +672,8 @@ else
|
|||
fi
|
||||
|
||||
# java.exe on Cygwin requires the Windows standard (Pascal) calling convention as it is a normal Windows executable and not a Cygwin built executable
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*)
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*)
|
||||
if test "$GCC" = yes; then
|
||||
JAVADYNAMICLINKING=" -Wl,--add-stdcall-alias"
|
||||
else
|
||||
|
|
@ -711,8 +683,8 @@ CYGWIN*)
|
|||
esac
|
||||
|
||||
# Java on Windows platforms including Cygwin doesn't use libname.dll, rather name.dll when loading dlls
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) JAVALIBRARYPREFIX="";;
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) JAVALIBRARYPREFIX="";;
|
||||
*)JAVALIBRARYPREFIX="lib";;
|
||||
esac
|
||||
|
||||
|
|
@ -836,8 +808,8 @@ if test -n "$RUBY"; then
|
|||
# Find library and path for linking. Use libruby.a except on Cygwin use the DLL.
|
||||
AC_MSG_CHECKING(for Ruby library)
|
||||
RUBYLIB=""
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*)
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*)
|
||||
rb_libdir=`($RUBY -rrbconfig -e 'print Config::CONFIG[["libdir"]]') 2>/dev/null`
|
||||
rb_bindir=`($RUBY -rrbconfig -e 'print Config::CONFIG[["bindir"]]') 2>/dev/null`
|
||||
dirs="$dirs $rb_libdir $rb_bindir"
|
||||
|
|
@ -877,8 +849,8 @@ else
|
|||
RUBYLINK="-lruby -lm"
|
||||
fi
|
||||
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) RUBYDYNAMICLINKING="-L$RUBYLIB $RUBYLINK";;
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) RUBYDYNAMICLINKING="-L$RUBYLIB $RUBYLINK";;
|
||||
*) RUBYDYNAMICLINKING="";;
|
||||
esac
|
||||
|
||||
|
|
@ -928,7 +900,7 @@ AC_SUBST(PHP4INC)
|
|||
done )
|
||||
|
||||
#----------------------------------------------------------------
|
||||
# Detect ocaml
|
||||
# Look for ocaml
|
||||
#----------------------------------------------------------------
|
||||
|
||||
AC_ARG_WITH(ocaml,[ --with-ocaml=path Set location of ocaml executable],[ OCAMLBIN="$withval"], [OCAMLBIN=])
|
||||
|
|
@ -1013,8 +985,8 @@ AC_SUBST(PIKEDYNAMICLINKING)
|
|||
# Root directory
|
||||
# Translate path for native Windows compilers on Cygwin for use with 'make check'
|
||||
ROOT_DIR=`pwd`
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
CYGWIN*) ROOT_DIR=`cygpath --mixed $ROOT_DIR`;;
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw*) ROOT_DIR=`cygpath --mixed $ROOT_DIR`;;
|
||||
esac
|
||||
|
||||
AC_SUBST(ROOT_DIR)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue