summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorTim Edwards <tim@opencircuitdesign.com>2014-09-16 10:20:18 -0400
committerTim Edwards <tim@opencircuitdesign.com>2014-09-16 10:20:18 -0400
commit5dc5691ea246a85d546f3c1ff01fd13279731bd2 (patch)
tree233bf593f254f5525eaa4249d094b6dac4440004 /configure.in
Initial commit at Tue Sep 16 10:20:18 EDT 2014 by tim on stravinsky.tim.linglan.net
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in863
1 files changed, 863 insertions, 0 deletions
diff --git a/configure.in b/configure.in
new file mode 100644
index 0000000..eb29e48
--- /dev/null
+++ b/configure.in
@@ -0,0 +1,863 @@
+#!/bin/sh
+
+AC_INIT(VERSION,, eda-dev@opencircuitdesign.com)
+AC_PREREQ(2.60)
+AC_CONFIG_SRCDIR([Makefile.in])
+
+# Determine the host and build type.
+# ===========================================================================
+AC_CANONICAL_HOST
+AC_CANONICAL_TARGET
+
+PACKAGE=qrouter
+VERSION=`cat ./VERSION | cut -d. -f1-2`
+REVISION=`cat ./VERSION | cut -d. -f3`
+
+AC_SUBST(VERSION)
+AC_SUBST(REVISION)
+AC_ARG_PROGRAM
+
+# Required programs
+# ===========================================================================
+AC_PROG_CC
+AC_PROG_CPP
+AC_ISC_POSIX
+if test "x$U" != "x"; then
+ AC_MSG_ERROR(Compiler not ANSI compliant)
+fi
+AC_PROG_INSTALL
+AC_PROG_RANLIB
+AC_CHECK_PROG(AUTOCONF, autoconf, autoconf, :)
+AC_CHECK_PROG(CP, cp, cp, :)
+AC_CHECK_PROG(RM, rm, rm, :)
+
+AC_LANG_C
+AC_HEADER_STDC
+AC_CHECK_FUNCS(setenv putenv)
+
+# Linker
+# =========================================
+
+#------------------------------------------------------------
+# AC_PROG_LD - find the path to the GNU or non-GNU linker
+# (This stuff ripped from libtool)
+#------------------------------------------------------------
+AC_DEFUN([AC_PROG_LD],
+[AC_ARG_WITH(gnu-ld,
+[ --with-gnu-ld assume the C compiler uses GNU ld [[default=no]]],
+test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+dnl ###not for PostgreSQL### AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+ac_prog=ld
+if test "$GCC" = yes; then
+ # Check if gcc -print-prog-name=ld gives a path.
+ AC_MSG_CHECKING([for ld used by GCC])
+ case $host in
+ *-*-mingw*)
+ # gcc leaves a trailing carriage return which upsets mingw
+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+ *)
+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+ esac
+ case "$ac_prog" in
+ # Accept absolute paths.
+changequote(,)dnl
+ [\\/]* | [A-Za-z]:[\\/]*)
+ re_direlt='/[^/][^/]*/\.\./'
+changequote([,])dnl
+ # Canonicalize the path of ld
+ ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
+ while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
+ ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
+ done
+ test -z "$LD" && LD="$ac_prog"
+ ;;
+ "")
+ # If it fails, then pretend we aren't using GCC.
+ ac_prog=ld
+ ;;
+ *)
+ # If it is relative, then search for the first ld in PATH.
+ with_gnu_ld=unknown
+ ;;
+ esac
+elif test "$with_gnu_ld" = yes; then
+ AC_MSG_CHECKING([for GNU ld])
+else
+ AC_MSG_CHECKING([for non-GNU ld])
+fi
+AC_CACHE_VAL(ac_cv_path_LD,
+[if test -z "$LD"; then
+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+ for ac_dir in $PATH; do
+ test -z "$ac_dir" && ac_dir=.
+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
+ ac_cv_path_LD="$ac_dir/$ac_prog"
+ # Check to see if the program is GNU ld. I'd rather use --version,
+ # but apparently some GNU ld's only accept -v.
+ # Break only if it was the GNU/non-GNU ld that we prefer.
+ if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
+ test "$with_gnu_ld" != no && break
+ else
+ test "$with_gnu_ld" != yes && break
+ fi
+ fi
+ done
+ IFS="$ac_save_ifs"
+else
+ ac_cv_path_LD="$LD" # Let the user override the test with a path.
+fi])
+LD="$ac_cv_path_LD"
+if test -n "$LD"; then
+ AC_MSG_RESULT($LD)
+else
+ AC_MSG_RESULT(no)
+fi
+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
+AC_PROG_LD_GNU
+])
+
+AC_DEFUN([AC_PROG_LD_GNU],
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
+[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
+if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
+ ac_cv_prog_gnu_ld=yes
+else
+ ac_cv_prog_gnu_ld=no
+fi])
+with_gnu_ld=$ac_cv_prog_gnu_ld
+])
+
+AC_PROG_LD
+
+dnl Check for va_copy
+AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
+ AC_TRY_LINK(
+ [#include <stdarg.h>],
+ [va_list ap1, ap2;
+ va_copy(ap1,ap2);
+ ],
+ [ac_cv_c_va_copy="yes"],
+ [ac_cv_c_va_copy="no"])
+ )
+if test "$ac_cv_c_va_copy" = "yes"
+then
+ AC_DEFINE(HAVE_VA_COPY, 1, [Define if we have va_copy])
+fi
+AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
+ AC_TRY_LINK(
+ [#include <stdarg.h>],
+ [va_list ap1, ap2;
+ __va_copy(ap1,ap2);
+ ],
+ [ac_cv_c___va_copy="yes"],
+ [ac_cv_c___va_copy="no"])
+ )
+if test "$ac_cv_c___va_copy" = "yes"
+then
+ AC_DEFINE(HAVE___VA_COPY, 1, [Define if we have __va_copy])
+fi
+
+# Options
+# =========================================
+
+QROUTER_LIB_DIR=${ac_default_prefix}/share/qrouter
+AC_ARG_WITH(libdir,
+[ --with-libdir=DIR path to qrouter default config files], [
+ QROUTER_LIB_DIR=$withval
+], [])
+AC_DEFINE_UNQUOTED(QROUTER_PATH, "$QROUTER_LIB_DIR")
+
+# Interpreter Options
+# =========================================
+
+qrouter_with_tcl="yes"
+qrouter_with_tk="yes"
+qrouter_with_tcl_includes=""
+qrouter_with_tk_includes=""
+qrouter_with_tcl_libraries=""
+qrouter_with_tk_libraries=""
+
+usingTcl=1
+
+AC_ARG_WITH(tcl,
+[ --with-tcl=DIR Find tclConfig.sh in DIR], [
+ qrouter_with_tcl=$withval
+ if test "$withval" = "no" -o "$withval" = "NO"; then
+ usingTcl=
+ fi
+], )
+
+#-----------------------------------------------------
+# SHDLIB_EXT needs to be defined outside of the
+# Tcl/Tk environment, otherwise the Makefile
+# target can't differentiate between qrouter and
+# qrouter.so
+#-----------------------------------------------------
+
+case $target in
+ *-hpux*)
+ SHDLIB_EXT=".sl"
+ ;;
+ *cygwin*)
+ SHDLIB_EXT=".dll"
+ ;;
+ *darwin*)
+ SHDLIB_EXT=".dylib"
+ ;;
+ *)
+ SHDLIB_EXT=".so"
+ ;;
+esac
+
+dnl ----------------------------------------------------------------
+dnl Do our best to find Tcl/Tk. If we can't, then flag a warning
+dnl and don't set the usingTcl variable.
+dnl
+dnl This has been broken up into a number of sections, each of which
+dnl depends independently on the setting of usingTcl.
+dnl ----------------------------------------------------------------
+
+AC_ARG_WITH(tk, [ --with-tk=DIR Find tkConfig.sh in DIR],
+ qrouter_with_tk=$withval)
+AC_ARG_WITH(tclincls, [ --with-tclincls=DIR Find tcl.h in DIR],
+ qrouter_with_tcl_includes=$withval)
+AC_ARG_WITH(tkincls, [ --with-tkincls=DIR Find tk.h in DIR],
+ qrouter_with_tk_includes=$withval)
+AC_ARG_WITH(tcllibs, [ --with-tcllibs=DIR Find Tcl library in DIR],
+ qrouter_with_tcl_libraries=$withval)
+AC_ARG_WITH(tklibs, [ --with-tklibs=DIR Find Tk library in DIR],
+ qrouter_with_tk_libraries=$withval)
+
+# -----------------------------------------------------------------------
+# Find the Tcl build configuration file "tclConfig.sh"
+# -----------------------------------------------------------------------
+
+if test $usingTcl ; then
+ TCL_INC_DIR="."
+ TK_INC_DIR="."
+
+ AC_MSG_CHECKING([for tclConfig.sh])
+ tcl_config_sh=""
+
+ if test "$qrouter_with_tcl" = "no" ; then
+ qrouter_with_tcl=""
+ elif test "$qrouter_with_tcl" != "yes" ; then
+ #
+ # Verify that a tclConfig.sh file exists in the directory specified
+ # by --with-tcl.
+ #
+ for dir in \
+ $qrouter_with_tcl
+ do
+ if test -r "$dir/tclConfig.sh" ; then
+ tcl_config_sh="$dir/tclConfig.sh"
+ break
+ elif test -r "$dir/lib/tclConfig.sh" ; then
+ tcl_config_sh="$dir/lib/tclConfig.sh"
+ break
+ elif test -r "$dir/unix/tclConfig.sh" ; then
+ tcl_config_sh="$dir/unix/tclConfig.sh"
+ break
+ fi
+ done
+ else
+ #
+ # Otherwise, search for Tcl configuration file.
+ #
+
+ # 1. Search previously named locations.
+
+ for dir in \
+ $prefix \
+ $exec_prefix
+ do
+ if test -r "$dir/tclConfig.sh" ; then
+ tcl_config_sh="$dir/tclConfig.sh"
+ break
+ elif test -r "$dir/lib/tclConfig.sh" ; then
+ tcl_config_sh="$dir/lib/tclConfig.sh"
+ break
+ elif test -r "$dir/unix/tclConfig.sh" ; then
+ tcl_config_sh="$dir/unix/tclConfig.sh"
+ break
+ fi
+ done
+
+ # 2. Search standard locations.
+
+ if test "x$tcl_config_sh" = "x" ; then
+ for dir in \
+ `ls -dr /usr/local/tcl/tcl[[7-9]].[[0-9]]* 2>/dev/null` \
+ /usr/local/tcl \
+ /usr/local/lib \
+ /usr/local \
+ `ls -dr /usr/share/tcltk/tcl[[7-9]].[[0-9]]* 2>/dev/null` \
+ /sw/lib \
+ /usr/lib \
+ /usr/lib64 \
+ /usr
+ do
+ if test -r "$dir/tclConfig.sh" ; then
+ tcl_config_sh="$dir/tclConfig.sh"
+ break
+ elif test -r "$dir/lib/tclConfig.sh" ; then
+ tcl_config_sh="$dir/lib/tclConfig.sh"
+ break
+ fi
+ done
+ fi
+ fi
+
+ AC_MSG_RESULT([${tcl_config_sh}])
+
+ if test "x$tcl_config_sh" = "x" ; then
+ echo "Can't find Tcl configuration script \"tclConfig.sh\""
+ echo "Reverting to non-Tcl compilation"
+ usingTcl=
+ fi
+fi
+
+# -----------------------------------------------------------------------
+# Find the Tk build configuration file "tkConfig.sh"
+# -----------------------------------------------------------------------
+
+if test $usingTcl ; then
+
+ AC_MSG_CHECKING([for tkConfig.sh])
+ tk_config_sh=""
+ if test "$qrouter_with_tk" != "yes"; then
+ #
+ # Verify that a tkConfig.sh file exists in the directory specified
+ # by --with-tcl or --with-tk.
+ #
+ for dir in \
+ $qrouter_with_tk \
+ $qrouter_with_tcl
+ do
+ if test -r "$dir/tkConfig.sh" ; then
+ tk_config_sh="$dir/tkConfig.sh"
+ break
+ elif test -r "$dir/lib/tkConfig.sh" ; then
+ tk_config_sh="$dir/lib/tkConfig.sh"
+ break
+ elif test -r "$dir/unix/tkConfig.sh" ; then
+ tk_config_sh="$dir/unix/tkConfig.sh"
+ break
+ fi
+ done
+ else
+ #
+ # Search for Tk configuration file.
+ #
+
+ #
+ # 1. Search previously named locations.
+ #
+ for dir in \
+ $prefix \
+ $exec_prefix
+ do
+ if test -r "$dir/tkConfig.sh" ; then
+ tk_config_sh="$dir/tkConfig.sh"
+ break
+ elif test -r "$dir/lib/tkConfig.sh" ; then
+ tk_config_sh="$dir/lib/tkConfig.sh"
+ break
+ elif test -r "$dir/unix/tkConfig.sh" ; then
+ tk_config_sh="$dir/unix/tkConfig.sh"
+ break
+ fi
+ done
+ #
+ # 2. Search standard locations.
+ #
+ if test "x$tk_config_sh" = "x" ; then
+ for dir in \
+ `ls -dr /usr/local/tcl/tcl[[7-9]].[[0-9]]* 2>/dev/null` \
+ /usr/local/tcl \
+ /usr/local/lib \
+ /sw/lib \
+ /usr/local \
+ `ls -dr /usr/share/tcltk/tk[[7-9]].[[0-9]]* 2>/dev/null` \
+ ${x_libraries} \
+ /usr/lib \
+ /usr/lib64 \
+ /usr
+ do
+ if test -r "$dir/tkConfig.sh" ; then
+ tk_config_sh="$dir/tkConfig.sh"
+ break
+ elif test -r "$dir/lib/tkConfig.sh" ; then
+ tk_config_sh="$dir/lib/tkConfig.sh"
+ break
+ fi
+ done
+ fi
+ fi
+ AC_MSG_RESULT([${tk_config_sh}])
+
+ if test "x$tk_config_sh" = "x" ; then
+ echo "can't find Tk configuration script \"tkConfig.sh\""
+ echo "Reverting to non-Tcl compilation"
+ usingTcl=
+ fi
+fi
+
+# -----------------------------------------------------------------------
+# Source in the Tcl/Tk configuration scripts.
+# -----------------------------------------------------------------------
+
+if test $usingTcl ; then
+ . $tcl_config_sh
+ . $tk_config_sh
+
+ if test "$TCL_VERSION" = "7.6" -a "$TK_VERSION" = "4.2" ; then
+ :
+ elif test "$TCL_VERSION" = "7.5" -a "$TK_VERSION" = "4.1" ; then
+ :
+ elif test "$TCL_VERSION" = "$TK_VERSION" ; then
+ :
+ else
+ echo "Mismatched Tcl/Tk versions ($TCL_VERSION != $TK_VERSION)"
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+fi
+
+if test $usingTcl ; then
+ if test "x${qrouter_with_tcl_includes}" != "x" ; then
+ if test -r "${qrouter_with_tcl_includes}/tcl.h" ; then
+ TCL_INC_DIR=${qrouter_with_tcl_includes}
+ else
+ echo "Can't find tcl.h in \"${qrouter_with_tcl_includes}\""
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ else
+ for dir in \
+ ${TCL_PREFIX}/include/tcl${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION} \
+ ${TCL_PREFIX}/include \
+ ${TCL_SRC_DIR}/generic \
+ ${TCL_INC_DIR}
+ do
+ if test -r "$dir/tcl.h" ; then
+ TCL_INC_DIR=$dir
+ break
+ fi
+ done
+ if test "x${TCL_INC_DIR}" = "x" ; then
+ echo "Can't find tcl.h header file"
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ fi
+fi
+
+if test $usingTcl ; then
+ if test "x${qrouter_with_tk_includes}" != "x" ; then
+ if test -r "${qrouter_with_tk_includes}/tk.h" ; then
+ TK_INC_DIR=${qrouter_with_tk_includes}
+ else
+ echo "Can't find tk.h in \"${qrouter_with_tk_includes}\""
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ else
+ for dir in \
+ ${TK_PREFIX}/include/tk${TK_MAJOR_VERSION}.${TK_MINOR_VERSION} \
+ ${TK_PREFIX}/include \
+ ${TK_SRC_DIR}/generic \
+ ${TK_INC_DIR} \
+ ${TCL_INC_DIR}
+ do
+ if test -r "$dir/tk.h" ; then
+ TK_INC_DIR=$dir
+ break
+ fi
+ done
+ if test "x${TK_INC_DIR}" = "x" ; then
+ echo "Can't find tk.h header file"
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ fi
+fi
+
+if test $usingTcl ; then
+ case $target in
+ *-sunos4*|*-*-netbsd|NetBSD-*|FreeBSD-*|OpenBSD-*)
+ TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}"
+ TK_LIB_NAME="tk${TK_MAJOR_VERSION}${TK_MINOR_VERSION}"
+ ;;
+ *)
+ TCL_LIB_NAME="tcl${TCL_MAJOR_VERSION}.${TCL_MINOR_VERSION}"
+ TK_LIB_NAME="tk${TK_MAJOR_VERSION}.${TK_MINOR_VERSION}"
+ ;;
+ esac
+
+ TCL_LIB_SPEC="-l${TCL_LIB_NAME}"
+ TK_LIB_SPEC="-l${TK_LIB_NAME}"
+
+# Find the version of "wish" that corresponds to TCL_EXEC_PREFIX
+# We really ought to run "ldd" to confirm that the linked libraries match.
+
+ AC_MSG_CHECKING([for wish executable])
+ for dir in \
+ ${TK_EXEC_PREFIX}/bin \
+ ${TK_EXEC_PREFIX}
+ do
+ for wishexe in \
+ wish \
+ wish${TK_VERSION} \
+ wish.exe \
+ wish${TK_VERSION}.exe
+ do
+ if test -r "$dir/$wishexe" ; then
+ WISH_EXE=$dir/$wishexe
+ break
+ fi
+ done
+ if test "x${WISH_EXE}" != "x" ; then
+ break
+ fi
+ done
+ if test "x${WISH_EXE}" = "x" ; then
+ echo "Warning: Can't find executable for \"wish\". You may have to"
+ echo "manually set the value for WISH_EXE in the netgen startup script."
+ AC_MSG_RESULT(no)
+ else
+ AC_MSG_RESULT([${WISH_EXE}])
+ fi
+
+ if test "x${qrouter_with_tcl_libraries}" != "x" ; then
+ for libname in \
+ "${qrouter_with_tcl_libraries}/lib${TCL_LIB_NAME}${SHDLIB_EXT}"
+ do
+ if test -r "$libname" ; then
+ TCL_LIB_DIR="${qrouter_with_tcl_libraries}"
+ break
+ fi
+ done
+
+ if test "x${TCL_LIB_DIR}" = "x" ; then
+ echo "Can't find tcl library in \"${qrouter_with_tcl_libraries}\""
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ else
+ for libpfix in "lib64" "lib"
+ do
+ libname="${TCL_EXEC_PREFIX}/${libpfix}/${DEB_HOST_MULTIARCH}/lib${TCL_LIB_NAME}${SHDLIB_EXT}"
+ if test -r "$libname" ; then
+ TCL_LIB_DIR="${TCL_EXEC_PREFIX}/${libpfix}"
+ break
+ fi
+ done
+ if test "x${TCL_LIB_DIR}" = "x" ; then
+ echo "Can't find tcl library"
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ fi
+fi
+
+if test $usingTcl ; then
+ if test "x${qrouter_with_tk_libraries}" != "x" ; then
+ for libname in \
+ "${qrouter_with_tk_libraries}/lib${TK_LIB_NAME}${SHDLIB_EXT}"
+ do
+ if test -r "$libname" ; then
+ TK_LIB_DIR="${qrouter_with_tk_libraries}"
+ break
+ fi
+ done
+ if test "x${TK_LIB_DIR}" = "x" ; then
+ echo "Can't find tk library in \"${qrouter_with_tk_libraries}\""
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ else
+ for libpfix in "lib64" "lib"
+ do
+ libname="${TK_EXEC_PREFIX}/${libpfix}/${DEB_HOST_MULTIARCH}/lib${TK_LIB_NAME}${SHDLIB_EXT}"
+ if test -r "$libname" ; then
+ TK_LIB_DIR="${TK_EXEC_PREFIX}/${libpfix}"
+ break
+ fi
+ done
+ if test "x${TK_LIB_DIR}" = "x" ; then
+ echo "Can't find tk library"
+ echo "Reverting to non-Tcl compile"
+ usingTcl=
+ fi
+ fi
+fi
+
+dnl ----------------------------------------------------
+dnl End of Tcl/Tk search
+dnl ----------------------------------------------------
+
+AC_ARG_ENABLE(memdebug,
+[ --enable-memdebug enable memory debugging], [
+ if test "x$qrouter_with_tcl" = "x" ; then
+ LIBS="${LIBS} -lefence"
+ else
+ AC_DEFINE(TCL_MEM_DEBUG)
+ fi
+],)
+
+dnl Check for X enabled/disabled
+
+AC_PATH_XTRA
+if test "x$no_x" = "x"; then
+ usingX11=1
+else
+ echo Cannot find X11---will compile anyway.
+ echo Graphics will be disabled
+ if test $usingTcl ; then
+ echo "Cannot compile TCL version without X11, disabling."
+ usingTcl=
+ fi
+fi
+
+AC_CHECK_LIB(Xt, XtToolkitInitialize,,[
+AC_CHECK_LIB(Xt, XtDisplayInitialize,,,-lSM -lICE -lXpm -lX11)])
+
+dnl ----------------------------------------------------------------
+dnl Once we're sure what, if any, interpreter is being compiled,
+dnl set all the appropriate definitions. For Tcl/Tk, override
+dnl the default install targets: allows compiling tcl version with
+dnl "make" instead of requiring "make tcl"
+dnl ----------------------------------------------------------------
+
+if test $usingTcl ; then
+ ALL_TARGET="tcl"
+ INSTALL_TARGET="install-tcl"
+ AC_DEFINE(TCL_QROUTER)
+else
+ ALL_TARGET="nointerp"
+ INSTALL_TARGET="install-nointerp"
+ programs="$programs qrouter"
+fi
+
+dnl ----------------------------------------------------------------
+dnl Define system-specific settings
+dnl ----------------------------------------------------------------
+
+case $target in
+ *-linux*)
+ AC_DEFINE(LINUX)
+ AC_DEFINE(SYSV)
+ dnl 64-bit support
+ case $target in
+ *x86_64*)
+ CPPFLAGS="$CPPFLAGS -m64 -fPIC"
+ ;;
+ esac
+ ;;
+ *solaris*)
+ AC_DEFINE(SYSV)
+ ;;
+ *irix*)
+ AC_DEFINE(SYSV)
+ AC_DEFINE(IRIX)
+ AC_DEFINE(_BSD_SIGNALS)
+ ;;
+ *sysv*)
+ AC_DEFINE(SYSV)
+ ;;
+ *cygwin*)
+ AC_DEFINE(CYGWIN)
+ AC_DEFINE(i386)
+ AC_DEFINE(WIN32)
+ ;;
+ *darwin*)
+ if test "$CPP" = "cc -E" ; then
+ CPPFLAGS="$CPPFLAGS -no-cpp-precomp"
+ fi
+ ;;
+esac
+# -----------------------------------------------------------------------
+# Tcl/Tk configuration
+# -----------------------------------------------------------------------
+
+if test $usingTcl ; then
+
+# -----------------------------------------------------------------------
+#
+# Tk libraries and header files
+#
+# -----------------------------------------------------------------------
+ if test "${TK_INC_DIR}" != "/usr/include" ; then
+ INC_SPECS="${INC_SPECS} -I${TK_INC_DIR}"
+ fi
+ if test "${TK_LIB_DIR}" = "/usr/lib" -o \
+ "${TK_LIB_DIR}" = "/usr/lib64" ; then
+ LIB_SPECS="${LIB_SPECS} ${TK_LIB_SPEC}"
+ else
+ LIB_SPECS="${LIB_SPECS} -L${TK_LIB_DIR} ${TK_LIB_SPEC}"
+ if test "x${loader_run_path}" = "x" ; then
+ loader_run_path="${TK_LIB_DIR}"
+ else
+ loader_run_path="${TK_LIB_DIR}:${loader_run_path}"
+ fi
+ fi
+
+# -----------------------------------------------------------------------
+#
+# Tcl libraries and header files
+#
+# Add a header file directory specification only if the Tcl headers reside
+# in a different directory from Tk's.
+#
+## -----------------------------------------------------------------------
+ if test "${TCL_INC_DIR}" != "/usr/include" -a \
+ "${TCL_INC_DIR}" != "${TK_INC_DIR}" ; then
+ INC_SPECS="${INC_SPECS} -I${TCL_INC_DIR}"
+ fi
+
+ if test "${TCL_LIB_DIR}" = "/usr/lib" -o \
+ "${TCL_LIB_DIR}" = "/usr/lib64" -o \
+ "${TCL_LIB_DIR}" = "${TK_LIB_DIR}" ; then
+ LIB_SPECS="${LIB_SPECS} ${TCL_LIB_SPEC}"
+ else
+ LIB_SPECS="${LIB_SPECS} -L${TCL_LIB_DIR} ${TCL_LIB_SPEC}"
+ if test "x${loader_run_path}" = "x" ; then
+ loader_run_path="${TCL_LIB_DIR}"
+ else
+ loader_run_path="${TCL_LIB_DIR}:${loader_run_path}"
+ fi
+ fi
+
+#--------------------------------------------------------------------
+#
+# Check if we can generate shared libraries on this system. Set flags
+# to generate shared libraries for systems that we know about. Start
+# with the values found in tclConfig.sh, make changes as we know about
+# the different systems.
+#
+#--------------------------------------------------------------------
+
+# Initialize shared library build variables
+
+ SHLIB_LD=""
+ LDDL_FLAGS="-shared"
+ SHDLIB_EXT=".so"
+ EXTRA_LIB_SPECS=""
+
+ build_shared="yes"
+
+ case $target in
+ *-bsdi2*|*-bsdi3*)
+ LD="shlicc"
+ LDDL_FLAGS="-r"
+ EXTRA_LIB_SPECS="-ldl"
+ ;;
+
+ *darwin*)
+ SHDLIB_EXT=".dylib"
+ LDDL_FLAGS="-dynamiclib -flat_namespace -undefined suppress -noprebind"
+ LDFLAGS="${LDFLAGS} ${LIB_SPECS}"
+ CFLAGS="${CFLAGS} ${X_CFLAGS} ${INC_SPECS} -I/sw/include -fno-common"
+ ;;
+
+ *cygwin*)
+ SHDLIB_EXT=".dll"
+ AC_DEFINE(USE_DL_IMPORT)
+ LDDL_FLAGS='-shared -Wl,--enable-auto-image-base'
+ if test "x${loader_run_path}" != "x" ; then
+ LD_RUN_PATH="${LD_RUN_PATH} -Wl,-rpath,${loader_run_path}"
+ fi
+ ld_extra_libs=${LIB_SPECS}
+ sub_extra_libs='-L${QROUTERDIR}/qrouter -ltclqrouter'
+ ;;
+
+ *-bsdi4*)
+ SHLIB_CFLAGS="-export-dynamic -fPIC"
+ LDDL_FLAGS='-shared -Wl,-E -Wl,-soname,$@'
+ ;;
+
+ *-linux*)
+ LDDL_FLAGS='-shared -Wl,-soname,$@'
+ if test "x${loader_run_path}" != "x" ; then
+ LD_RUN_PATH="${LD_RUN_PATH} -Wl,-rpath,${loader_run_path}"
+ fi
+ LDFLAGS=""
+ EXTRA_LIB_SPECS="-ldl"
+ ;;
+
+ *-freebsd*)
+ # Not available on all versions: check for include file.
+ SHLIB_CFLAGS="-fpic"
+ LDDL_FLAGS="-shared ${LIB_SPECS}"
+ CFLAGS="${CFLAGS} -l/usr/X11R6/include"
+ ;;
+
+ *-netbsd*|*-openbsd*)
+ # Not available on all versions: check for include file.
+ AC_CHECK_HEADER(dlfcn.h, test_ok=yes, test_ok=no)
+ if test "$test_ok" = yes; then
+ SHLIB_CFLAGS="-fpic"
+ LDDL_FLAGS="-Bshareable -x ${LIB_SPEC}"
+ fi
+ ;;
+
+ esac
+
+# If we're running gcc, then set SHLIB_CFLAGS flags for compiling
+# shared libraries for gcc, instead of those of the vendor's compiler.
+
+ if test "$GCC" = "yes" ; then
+ case $target in
+ *cygwin*)
+ ;;
+ *)
+ SHLIB_CFLAGS="-fPIC"
+ ;;
+ esac
+ fi
+ if test "$with_gnu_ld" = "yes" ; then
+ LDDL_FLAGS="${LDDL_FLAGS} -Wl,--version-script=symbol.map"
+ fi
+
+ AC_SUBST(SHDLIB_EXT)
+ AC_SUBST(SHLIB_LD)
+ AC_SUBST(LD)
+ AC_SUBST(LDDL_FLAGS)
+ AC_SUBST(SHLIB_LIB_SPECS)
+
+ AC_SUBST(EXTRA_LIB_SPECS)
+ AC_SUBST(LDFLAGS)
+ AC_SUBST(INC_SPECS)
+ AC_SUBST(LIB_SPECS)
+ AC_SUBST(TCL_LIB_DIR)
+ AC_SUBST(TK_LIB_DIR)
+ AC_SUBST(WISH_EXE)
+
+ AC_SUBST(X_LIBS)
+ AC_SUBST(X_EXTRA_LIBS)
+ AC_SUBST(X_PRE_LIBS)
+ AC_SUBST(X_CFLAGS)
+ AC_SUBST(SHLIB_CFLAGS)
+ AC_SUBST(LD_RUN_PATH)
+
+fi
+
+dnl Substitute all variables
+
+AC_SUBST(CPPFLAGS)
+AC_SUBST(CFLAGS)
+AC_SUBST(STDLIBS)
+
+AC_SUBST(ALL_TARGET)
+AC_SUBST(INSTALL_TARGET)
+
+AC_SUBST(QROUTER_LIB_DIR)
+
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
+AC_DEFINE_UNQUOTED(REVISION, "$REVISION")
+
+AC_OUTPUT(Makefile)
+