OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [tags/] [start/] [insight/] [itcl/] [itcl/] [unix/] [configure.in] - Rev 1765

Compare with Previous | Blame | View Log

dnl     This file is an input file used by the GNU "autoconf" program to
dnl     generate the file "configure", which is run during [incr Tcl]
dnl installation to configure the system for the local environment.

AC_INIT(../generic/itcl.h)
# RCS: $Id: configure.in,v 1.1.1.1 2002-01-16 10:24:47 markom Exp $

ITCL_VERSION=3.0
ITCL_MAJOR_VERSION=3
ITCL_MINOR_VERSION=0
ITCL_RELEASE_LEVEL=0
VERSION=${ITCL_VERSION}

AC_CONFIG_AUX_DIR(../../config)
AC_PREREQ(2.0)

# -----------------------------------------------------------------------
#   Set up a new default --prefix.  If a previous installation of
#   [incr Tcl] can be found searching $PATH use that directory.
# -----------------------------------------------------------------------

AC_PREFIX_DEFAULT(/usr/local)
AC_PREFIX_PROGRAM(tclsh)

if test "${prefix}" = "NONE"; then
    prefix=/usr/local
fi
if test "${exec_prefix}" = "NONE"; then
    exec_prefix=$prefix
fi

AC_PROG_INSTALL
AC_PROG_RANLIB

# -----------------------------------------------------------------------
BUILD_DIR=`pwd`
ITCL_SRC_DIR=`cd $srcdir/..; pwd`
cd ${BUILD_DIR}

dnl CYGNUS LOCAL: allow gcc without a special flag
dnl AC_ARG_ENABLE(gcc, [  --enable-gcc            allow use of gcc if available],
dnl     [itcl_ok=$enableval], [itcl_ok=no])
dnl if test "$itcl_ok" = "yes"; then
    AC_PROG_CC
dnl else
dnl     CC=${CC-cc}
dnl AC_SUBST(CC)
dnl fi
dnl END CYGNUS LOCAL

#--------------------------------------------------------------------
#   See if there was a command-line option for where Tcl is;  if
#   not, assume that its top-level directory is a sibling of ours.
# CYGNUS LOCAL - Actually, tcl is one level higher - a sibling of the
# itcl directory that contains itcl proper, itk & iwidgets.
#--------------------------------------------------------------------

dnl CYGNUS LOCAL: We just call the Tcl directory "tcl", not "tcl8.0"
AC_ARG_WITH(tcl, [  --with-tcl=DIR          use Tcl 8.0 binaries from DIR],
        itcl_search=$withval, itcl_search=`cd ../../..; ls -d \`pwd\`/tcl*/unix`)
dnl END CYGNUS LOCAL

TCL_LIB_DIR=""
dnl CYGNUS LOCAL: Look in the local tree FIRST, not the install directory...
for dir in $itcl_search $exec_prefix/lib ; do
    if test -r $dir/tclConfig.sh; then
        TCL_LIB_DIR=$dir
        break
    fi
done

if test -z "$TCL_LIB_DIR"; then
    AC_MSG_ERROR(Can't find Tcl libraries.  Use --with-tcl to specify the directory containing tclConfig.sh on your system.)
fi

#--------------------------------------------------------------------
#   Read in configuration information generated by Tcl for shared
#   libraries, and arrange for it to be substituted into our
#   Makefile.
#--------------------------------------------------------------------

file=$TCL_LIB_DIR/tclConfig.sh
. $file
CFLAGS=$TCL_CFLAGS
SHLIB_CFLAGS=$TCL_SHLIB_CFLAGS
SHLIB_LD=$TCL_SHLIB_LD
SHLIB_LD_LIBS=$TCL_SHLIB_LD_LIBS
SHLIB_SUFFIX=$TCL_SHLIB_SUFFIX
DL_LIBS=$TCL_DL_LIBS
LD_FLAGS=$TCL_LD_FLAGS
LD_SEARCH_FLAGS=$TCL_LD_SEARCH_FLAGS

#--------------------------------------------------------------------
#   Make sure that we can find the Tcl sources, so we can include
#   the "tclInt.h" file.
#--------------------------------------------------------------------

if test ! -d "$TCL_SRC_DIR"; then
    AC_MSG_ERROR(Can't find Tcl source directory "$TCL_SRC_DIR".  Itcl can't be built without this directory.)
fi

#--------------------------------------------------------------------
#   If this is gcc, add some extra compile flags.
#--------------------------------------------------------------------

AC_MSG_CHECKING([whether C compiler is gcc])
AC_CACHE_VAL(itcl_cv_prog_gcc, [
    AC_EGREP_CPP(_cc_is_gcc_, [
#ifdef __GNUC__
_cc_is_gcc_
#endif
],      [itcl_cv_prog_gcc=yes], [itcl_cv_prog_gcc=no])])
AC_MSG_RESULT([$itcl_cv_prog_gcc])

# CYGNUS LOCAL - CFLAGS for gcc should include -g -O2
if test -z "$CFLAGS" ; then
if test "$itcl_cv_prog_gcc" = "yes" ; then
   CFLAGS="-g -O2"
else
   CFLAGS="-O"
fi
fi
# CYGNUS LOCAL - use -fwritable-strings with gcc, needed for Tcl8.1
if test "$itcl_cv_prog_gcc" = "yes" ; then
    CFLAGS="$CFLAGS -fwritable-strings -Wshadow -Wtraditional -Wall"
fi

AC_MSG_CHECKING([default compiler flags])
AC_ARG_WITH(cflags, [  --with-cflags=FLAGS     set compiler flags to FLAGS],
    [CFLAGS="$with_cflags"])

AC_MSG_RESULT([$CFLAGS])

if test "$TCL_CC" != "$CC" ; then
    echo ""
    echo "WARNING:  Compiler is $CC but Tcl was compiled with $TCL_CC"
    echo ""
fi

#--------------------------------------------------------------------
#   The statements below define a collection of symbols related to
#   building libitcl as a shared library instead of a static library.
#--------------------------------------------------------------------

AC_ARG_ENABLE(shared,
    [  --enable-shared         build libitcl as a shared library],
    [ok=$enableval], [ok=no])
if test "$ok" = "yes"; then
    if test ${TCL_SHARED_BUILD} = 0; then
        AC_MSG_ERROR(Tcl was not built with --enable-shared, so you can't use shared libraries.)
    fi
    SHLIB_CFLAGS="${SHLIB_CFLAGS}"
    eval "ITCL_LIB_FILE=libitcl${VERSION}${SHLIB_SUFFIX}"
    ITCL_PKG_FILE="[[file join [file dirname \$dir] ${ITCL_LIB_FILE}]]"
    MAKE_LIB="\$(SHLIB_LD) -o ${ITCL_LIB_FILE} \$(OBJS) ${SHLIB_LD_LIBS} "
    RANLIB=":"
else
    SHLIB_CFLAGS=""
    # CYGNUS LOCAL - Strip dots from library name for SunOS4, etc...
    if test ${TCL_LIB_VERSIONS_OK} = "nodots"; then
        ITCL_LIB_FILE="libitcl`echo ${VERSION} | tr -d .`.a"
    else
        eval "ITCL_LIB_FILE=libitcl${VERSION}.a"
    fi
    ITCL_PKG_FILE=""
    MAKE_LIB="ar cr ${ITCL_LIB_FILE} \${OBJS}"
fi

ITCL_SH="`pwd`/itclsh"

# Note:  in the following variable, it's important to use the absolute
# path name of the Tcl directory rather than "..":  this is because
# AIX remembers this path and will attempt to use it at run-time to look
# up the Tcl library.

if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
    ITCL_BUILD_LIB_SPEC="-L`pwd` -litcl${VERSION}"
    ITCL_LIB_SPEC="-L${exec_prefix}/lib -litcl${VERSION}"
else
    ITCL_BUILD_LIB_SPEC="-L`pwd` -litcl`echo ${VERSION} | tr -d .`"
    ITCL_LIB_SPEC="-L${exec_prefix}/lib -litcl`echo ${VERSION} | tr -d .`"
fi

ITCL_LIB_FULL_PATH="`pwd`/${ITCL_LIB_FILE}"

AC_SUBST(CFLAGS)
AC_SUBST(DL_LIBS)
AC_SUBST(LD_FLAGS)
AC_SUBST(MAKE_LIB)
AC_SUBST(SHLIB_CFLAGS)
AC_SUBST(SHLIB_LD)
AC_SUBST(SHLIB_LD_LIBS)
AC_SUBST(SHLIB_SUFFIX)
AC_SUBST(LD_SEARCH_FLAGS)

AC_SUBST(TCL_VERSION)
AC_SUBST(TCL_SRC_DIR)
AC_SUBST(TCL_LIB_DIR)
AC_SUBST(TCL_LIB_SPEC)
AC_SUBST(TCL_BUILD_LIB_SPEC)
AC_SUBST(TCL_LIB_FLAG)
AC_SUBST(TCL_DBGX)
AC_SUBST(TCL_DEFS)
AC_SUBST(TCL_LIBS)
AC_SUBST(TCL_SHLIB_LD_LIBS)
AC_SUBST(TCL_SHLIB_SUFFIX)
AC_SUBST(TCL_COMPAT_OBJS)
AC_SUBST(TCL_CFLAGS)
AC_SUBST(TCL_LIB_FULL_PATH)

AC_SUBST(ITCL_VERSION)
AC_SUBST(ITCL_MAJOR_VERSION)
AC_SUBST(ITCL_MINOR_VERSION)
AC_SUBST(ITCL_RELEASE_LEVEL)

AC_SUBST(ITCL_BUILD_LIB_SPEC)
AC_SUBST(ITCL_LIB_FILE)
AC_SUBST(ITCL_LIB_SPEC)
AC_SUBST(ITCL_PKG_FILE)
AC_SUBST(ITCL_SRC_DIR)
AC_SUBST(ITCL_SH)
AC_SUBST(ITCL_LIB_FULL_PATH)

AC_OUTPUT(Makefile pkgIndex.tcl ../itclConfig.sh)

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.