Skip to content
Snippets Groups Projects
Commit 4a2ebf21 authored by Ken Martin's avatar Ken Martin
Browse files

out of place cmake

parent 619864c0
No related branches found
No related tags found
No related merge requests found
srcdir = @srcdir@
VPATH = @srcdir@
CMAKE_CONFIG_DIR = @CMAKE_CONFIG_DIR@
all:
cd Source; ${MAKE}
configure 0 → 100755
This diff is collapsed.
# Process this file with autoconf to produce a configure script.
AC_INIT()
AC_CONFIG_HEADER(Source/cmConfigure.h)
CMAKE_CONFIG_DIR=`pwd`
AC_SUBST(CMAKE_CONFIG_DIR)
#
# check for some programs we use
#
AC_PROG_CC
AC_PROG_CXX
AC_PROG_RANLIB
AC_PROG_INSTALL
AC_PATH_XTRA
fullSrcDir=`cd $srcdir; pwd`
CMAKE_ROOT_DIR=$fullSrcDir
AC_SUBST(CMAKE_ROOT_DIR)
# get byte swapping info
AC_C_BIGENDIAN
if test $ac_cv_c_bigendian = yes; then
CMAKE_WORDS_BIGENDIAN=1
fi
AC_SUBST(CMAKE_WORDS_BIGENDIAN)
# some stuff Tcl uses
#
AC_CHECK_HEADER(limits.h, HAVE_LIMITS_H=-DHAVE_LIMITS_H,HAVE_LIMITS_H="")
AC_SUBST(CMAKE_HAVE_LIMITS_H)
AC_HAVE_HEADERS(unistd.h, HAVE_UNISTD_H=-DHAVE_UNISTD_H,HAVE_UNISTD_H="")
AC_SUBST(CMAKE_HAVE_UNISTD_H)
# Step 1: set the variable "system" to hold the name and version number
# for the system. This can usually be done via the "uname" command, but
# there are a few systems, like Next, where this doesn't work.
AC_MSG_CHECKING([system version (for dynamic loading)])
if test -f /usr/lib/NextStep/software_version; then
system=NEXTSTEP-`awk '/3/,/3/' /usr/lib/NextStep/software_version`
else
system=`uname -s`-`uname -r`
if test "$?" -ne 0 ; then
AC_MSG_RESULT([unknown (can't find uname command)])
system=unknown
else
# Special check for weird MP-RAS system (uname returns weird
# results, and the version is kept in special file).
if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
system=MP-RAS-`awk '{print $3}' /etc/.relid'`
fi
AC_MSG_RESULT($system)
fi
fi
#
# use shared libs
#
CMAKE_shared_ok="yes"
# the following is an excerpt from the tcl7.5b2 configure.in
#--------------------------------------------------------------------
# The statements below define a collection of symbols related to
# dynamic loading and shared libraries:
#
# CMAKE_SHLIB_CFLAGS - Flags to pass to cc when compiling the components
# of a shared library (may request position-independent
# code, among other things).
# CMAKE_SHLIB_LD_LIBS - Dependent libraries for the linker to scan when
# creating shared libraries. This symbol typically
# goes at the end of the "ld" commands that build
# shared libraries. The value of the symbol if
# "${LIBS}" if all of the dependent libraries should
# be specified when creating a shared library. If
# dependent libraries should not be specified (as on
# SunOS 4.x, where they cause the link to fail, or in
# general if Tcl and Tk aren't themselves shared
# libraries), then this symbol has an empty string
# as its value.
# CMAKE_SHLIB_SUFFIX - Suffix to use for the name of the shared library. An
# empty string means we don't know how to use shared
# libraries on this platform.
# CMAKE_SHLIB_BUILD_FLAGS -
# Flags to use when building a shared library.
# CMAKE_SHLIB_LINK_FLAGS -
# Flags to pass to the compiler when linking object
# files into an executable application binary such
# as tclsh.
#--------------------------------------------------------------------
# Step 2: check for existence of -ldl library. This is needed because
# Linux can use either -ldl or -ldld for dynamic loading.
AC_CHECK_LIB(dl, dlopen, have_dl=yes, have_dl=no)
# Step 4: set configuration options based on system name and version.
fullSrcDir=`cd $srcdir; pwd`
AC_SUBST(fullSrcDir)
case $system in
AIX-*)
# AIX: can't link shared library extensions unless Tcl and Tk are
# also shared libraries.
CMAKE_SHLIB_CFLAGS=""
CMAKE_SHLIB_LD_LIBS='${LIBS}'
CMAKE_SHLIB_SUFFIX="..o"
CMAKE_DL_LIBS=""
AC_CHECK_LIB(ld,printf, CMAKE_DL_LIBS="-lld")
CMAKE_SHLIB_LINK_FLAGS=""
;;
HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*)
CMAKE_SHLIB_CFLAGS="+z"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".sl"
CMAKE_DL_LIBS="-ldld"
CMAKE_SHLIB_BUILD_FLAGS='+Z -Wl,-E -Wl,-b'
CMAKE_SHLIB_LINK_FLAGS='-Wl,+s -Wl,+b,${LIB_RUNTIME_DIR}'
if test "$CC" = "gcc" -o `$CC -v 2>&1 | grep -c gcc` != "0" ; then
CMAKE_SHLIB_BUILD_FLAGS='-shared -Wl,-E -Wl,-b'
CMAKE_SHLIB_LINK_FLAGS='-Wl,+s -Wl,+b,${LIB_RUNTIME_DIR}'
fi
;;
IRIX-5.*)
CMAKE_SHLIB_CFLAGS=""
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_BUILD_FLAGS="-shared -rdata_shared"
;;
IRIX-6* | IRIX64-6* | IRIX-64-6*)
CMAKE_SHLIB_CFLAGS=""
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_BUILD_FLAGS="-shared -rdata_shared"
;;
Linux*)
CMAKE_SHLIB_CFLAGS="-fPIC"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_SHLIB_BUILD_FLAGS="-shared"
if test "$have_dl" = yes; then
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_LINK_FLAGS="-rdynamic"
else
AC_CHECK_HEADER(dld.h, [
CMAKE_DL_LIBS="-ldld"
CMAKE_SHLIB_LINK_FLAGS=""])
fi
;;
CYGWIN_NT*)
CMAKE_SHLIB_CFLAGS=""
CMAKE_DL_LIBS="-lgdi32"
CMAKE_SHLIB_SUFFIX=".dll"
CMAKE_SHLIB_LINK_FLAGS="-shared"
;;
MP-RAS-02*)
CMAKE_SHLIB_CFLAGS="-K PIC"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_LINK_FLAGS=""
;;
MP-RAS-*)
CMAKE_SHLIB_CFLAGS="-K PIC"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_LINK_FLAGS="-Wl,-Bexport"
;;
NetBSD-*|FreeBSD-*)
# Not available on all versions: check for include file.
if test -f /usr/include/dlfcn.h; then
CMAKE_SHLIB_CFLAGS="-fpic"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS="-shared"
else
CMAKE_SHLIB_CFLAGS=""
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX="..o"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS=""
fi
;;
NEXTSTEP-*)
CMAKE_SHLIB_CFLAGS=""
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS=""
;;
OSF1-1.[012])
# OSF/1 1.[012] from OSF, and derivatives, including Paragon OSF/1
CMAKE_SHLIB_CFLAGS=""
# Hack: make package name same as library name
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS=""
;;
OSF1-1.*)
# OSF/1 1.3 from OSF using ELF, and derivatives, including AD2
CMAKE_SHLIB_CFLAGS="-fpic"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS=""
;;
OSF1-V*)
# Digital OSF/1
CMAKE_SHLIB_CFLAGS=""
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_BUILD_FLAGS='-shared -Wl,-expect_unresolved,"*"'
CMAKE_SHLIB_LINK_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
;;
RISCos-*)
CMAKE_SHLIB_CFLAGS="-G 0"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX="..o"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS="-Wl,-D,08000000"
;;
SCO_SV-3.2*)
# Note, dlopen is available only on SCO 3.2.5 and greater. However,
# this test works, since "uname -s" was non-standard in 3.2.4 and
# below.
CMAKE_SHLIB_CFLAGS="-Kpic -belf"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS="-belf -Wl,-Bexport"
;;
SINIX*5.4*)
CMAKE_SHLIB_CFLAGS="-K PIC"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_LINK_FLAGS=""
;;
SunOS-4*)
CMAKE_SHLIB_CFLAGS="-PIC"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_BUILD_FLAGS='-shared -Wl,-r -nostdlib'
CMAKE_SHLIB_LINK_FLAGS='-Wl,-L${LIB_RUNTIME_DIR}'
;;
SunOS-5*)
CMAKE_SHLIB_CFLAGS="-KPIC"
CMAKE_SHLIB_LD_LIBS='${LIBS}'
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_BUILD_FLAGS='-G'
CMAKE_SHLIB_LINK_FLAGS='-R ${LIB_RUNTIME_DIR}'
if test "$CC" = "gcc" -o `$CC -v 2>&1 | grep -c gcc` != "0" ; then
CMAKE_SHLIB_BUILD_FLAGS='-Wl,-G'
CMAKE_SHLIB_LINK_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'
fi
;;
ULTRIX-4.*)
CMAKE_SHLIB_CFLAGS="-G 0"
CMAKE_SHLIB_SUFFIX="..o"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_DL_LIBS=""
CMAKE_SHLIB_LINK_FLAGS="-Wl,-D,08000000"
;;
UNIX_SV*)
CMAKE_SHLIB_CFLAGS="-K PIC"
CMAKE_SHLIB_LD_LIBS=""
CMAKE_SHLIB_SUFFIX=".so"
CMAKE_DL_LIBS="-ldl"
CMAKE_SHLIB_LINK_FLAGS="-Wl,-Bexport"
;;
esac
export CMAKE_SHLIB_SUFFIX
# If we're running gcc, then change the C flags for compiling shared
# libraries to the right flags for gcc, instead of those for the
# standard manufacturer compiler.
if test "$CC" = "gcc" -o `$CC -v 2>&1 | grep -c gcc` != "0" ; then
CMAKE_SHLIB_CFLAGS="-fPIC"
fi
# if running on cygwin remove -fPIC flag
case $system in
CYGWIN_NT*)
CMAKE_SHLIB_CFLAGS=""
;;
esac
CMAKE_SHLIB_CFLAGS="${SHLIB_CFLAGS}"
CMAKE_LD_SEARCH_FLAGS="${LD_SEARCH_FLAGS}"
AC_SUBST(CMAKE_SHLIB_LINK_FLAGS)
AC_SUBST(CMAKE_SHLIB_BUILD_FLAGS)
AC_SUBST(CMAKE_SHLIB_CFLAGS)
AC_SUBST(CMAKE_LIB_EXT)
AC_SUBST(CMAKE_DL_LIBS)
AC_SUBST(CMAKE_SHLIB_LD_LIBS)
AC_SUBST(CMAKE_SHLIB_SUFFIX)
##########################
## ##
## Check thread support ##
## ##
##########################
# initialize thread vars
CMAKE_THREAD_LIBS=""
use_sproc=no
CMAKE_USE_SPROC=0
CMAKE_USE_PTHREADS=0
CMAKE_HP_PTHREADS=0
##########################
## ##
## sproc ##
## ##
##########################
# check for sproc
force_sproc=no
AC_ARG_WITH(sproc,
[ --with-sproc use sproc instead of pthreads if possible],
if test "$withval" = yes; then
force_sproc=yes
fi,)
AC_CHECK_HEADERS(sys/prctl.h, [use_sproc=yes])
if test "$use_sproc" = "yes"; then
case $system in
Linux* | IRIX64-6.5 | IRIX-6.5)
if test "$force_sproc" = "yes"; then
CMAKE_USE_SPROC=1
else
use_sproc=no
fi
;;
IRIX*)
CMAKE_USE_SPROC=1
;;
esac
fi
use_pthreads=no
AC_CHECK_HEADERS(pthread.h, [use_pthreads=yes])
if test "$use_pthreads" = "yes"; then
if test "$use_sproc" = "no"; then
AC_CHECK_LIB(pthreads, pthread_create, CMAKE_THREAD_LIBS="-lpthreads")
AC_CHECK_LIB(pthread, pthread_create, CMAKE_THREAD_LIBS="-lpthread")
# Work around Solaris 5.6 and 5.7 bug:
if test "`uname -s -r`" = "SunOS 5.6"; then
AC_CHECK_LIB(thread, thr_create, CMAKE_THREAD_LIBS="$CMAKE_THREAD_LIBS -lthread")
fi
if test "`uname -s -r`" = "SunOS 5.7"; then
AC_CHECK_LIB(thread, thr_create, CMAKE_THREAD_LIBS="$CMAKE_THREAD_LIBS -lthread")
fi
CMAKE_USE_PTHREADS=1
fi
fi
# on an HP with pthread we need to use -lcma
# on dec alphas we have had problems as well
if test "$use_pthreads" = "yes"; then
case $system in
HP-UX-*.10.*)
CMAKE_THREAD_LIBS="-lcma"
CMAKE_USE_PTHREADS=1
CMAKE_HP_PTHREADS=1
;;
OSF1-V*)
CMAKE_USE_PTHREADS=0
CMAKE_THREAD_LIBS=""
;;
FreeBSD*)
CMAKE_USE_PTHREADS=0
CMAKE_THREAD_LIBS=""
;;
esac
fi
AC_SUBST(CMAKE_USE_SPROC)
AC_SUBST(CMAKE_USE_PTHREADS)
AC_SUBST(CMAKE_HP_PTHREADS)
AC_SUBST(CMAKE_THREAD_LIBS)
CMAKE_ANSI_CFLAGS=""
# on hp use -Aa for ansi
if test $ac_cv_prog_gxx = no; then
case $system in
HP-UX-*.08.*|HP-UX-*.09.*|HP-UX-*.10.*)
echo $ac_n "checking whether ${CC} accepts -Aa""... $ac_c" 1>&6
echo 'void f(){}' > conftest.c
if test -z "`${CC} -Aa -c conftest.c 2>&1`"; then
echo "$ac_t""yes" 1>&6
CMAKE_ANSI_CFLAGS="-Aa"
else
echo "$ac_t""no" 1>&6
fi
rm -f conftest*
;;
esac
fi
AC_SUBST(CMAKE_ANSI_CFLAGS)
# if we are not running g++ then we might need some other flags
# to get the templates compiled correctly
CMAKE_TEMPLATE_FLAGS=""
if test $ac_cv_prog_gxx = no; then
echo $ac_n "checking whether ${CXX} accepts -ptused -no_prelink""... $ac_c" 1>&6
echo 'void f(){}' > conftest.cc
if test -z "`${CXX} -ptused -no_prelink -c conftest.cc 2>&1`"; then
echo "$ac_t""yes" 1>&6
CMAKE_TEMPLATE_FLAGS="-ptused -no_prelink"
else
echo "$ac_t""no" 1>&6
fi
rm -f conftest*
echo $ac_n "checking whether ${CXX} accepts -instances=semiexplicit""... $ac_c" 1>&6
echo 'void f(){}' > conftest.cc
if test -z "`${CXX} -instances=static -c conftest.cc 2>&1`"; then
echo "$ac_t""yes" 1>&6
CMAKE_TEMPLATE_FLAGS="-instances=static"
else
echo "$ac_t""no" 1>&6
fi
fi
AC_SUBST(CMAKE_TEMPLATE_FLAGS)
# check no g++ compilers to see if they have the standard
# ansi stream files (without the .h)
if test $ac_cv_prog_gxx = no; then
AC_MSG_CHECKING( ansi standard C++ stream headers )
echo "******"
rm -rf conftest.*
cat > conftest.cc <<!
#include <iostream>
!
if test -z "`${CXX} -c conftest.cc 2>&1`"; then
echo "$ac_t""yes" 1>&6
else
AC_DEFINE(CMAKE_NO_STD_NAMESPACE)
echo "$ac_t""no" 1>&6
fi
fi
# check to see if stl is in the std namespace
if test $ac_cv_prog_gxx = no; then
echo "******"
AC_MSG_CHECKING( ansi standard namespace support )
rm -rf conftest.*
cat > conftest.cc <<!
#include <list>
void foo() { std::list<int> l; }
!
if test -z "`${CXX} -c conftest.cc 2>&1`"; then
echo "$ac_t""yes" 1>&6
else
AC_DEFINE(CMAKE_NO_ANSI_STREAM_HEADERS)
echo "$ac_t""no" 1>&6
fi
fi
if test "$CC" = "gcc" -o `$CC -v 2>&1 | grep -c gcc` != "0" ; then
SHLIB_CFLAGS="-fPIC"
fi
# find make to use to build cmake, prefer gmake
AC_PATH_PROGS(RUNMAKE, gmake make)
AC_PATH_PROGS(CMAKE_AR, ar)
AC_SUBST(CMAKE_AR)
# generate output files.
# create mkdir files just to make some of the directories
AC_OUTPUT(Makefile Source/Makefile)
#!/bin/sh
#
# install - install a program, script, or datafile
# This comes from X11R5; it is not part of GNU.
#
# $XConsortium: install.sh,v 1.2 89/12/18 14:47:22 jim Exp $
#
# This script is compatible with the BSD install script, but was written
# from scratch.
#
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir -p}"
instcmd="$mvprog"
chmodcmd=""
chowncmd=""
chgrpcmd=""
stripcmd=""
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=""
dst=""
mkdir=n
while [ x"$1" != x ]; do
case $1 in
-c) instcmd="$cpprog"
shift
continue;;
-d) instcmd="$mkdirprog"
mkdir=y
src="/dev/null"
shift
continue;;
-m) chmodcmd="$chmodprog $2"
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
-s) stripcmd="$stripprog"
shift
continue;;
*) if [ x"$src" = x ]
then
src=$1
else
dst=$1
fi
shift
continue;;
esac
done
if [ x"$src" = x ]
then
echo "install: no input file specified"
exit 1
fi
if [ x"$dst" = x ]
then
echo "install: no destination specified"
exit 1
fi
if [ $mkdir = y ]; then
$doit $instcmd $dst
dsttmp=$dst
else
# If destination is a directory, append the input filename; if your
# system does not like double slashes in filenames, you may need to
# add some logic
if [ $mkdir = n -a -d $dst ]
then
dst="$dst"/`basename $src`
fi
# Make a temp file name in the proper directory.
dstdir=`dirname $dst`
dsttmp=$dstdir/#inst.$$#
# Move or copy the file name to the temp name
$doit $instcmd $src $dsttmp
fi
# and set any options; do chmod last to preserve setuid bits
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; fi
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; fi
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; fi
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; fi
if [ $mkdir = n ]; then
# Now rename the file to the real destination.
$doit $rmcmd $dst
$doit $mvcmd $dsttmp $dst
fi
exit 0
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment