From: <ro...@us...> - 2012-05-02 17:53:31
|
Revision: 1998 http://nsclspectcl.svn.sourceforge.net/nsclspectcl/?rev=1998&view=rev Author: ron-fox Date: 2012-05-02 17:53:24 +0000 (Wed, 02 May 2012) Log Message: ----------- More in keeping with current autoconf conventions Modified Paths: -------------- trunk/SpecTcl/gri-2.12.20/doc/index.html Added Paths: ----------- trunk/SpecTcl/configure.ac Added: trunk/SpecTcl/configure.ac =================================================================== --- trunk/SpecTcl/configure.ac (rev 0) +++ trunk/SpecTcl/configure.ac 2012-05-02 17:53:24 UTC (rev 1998) @@ -0,0 +1,929 @@ +# Process this file with autoconf to produce a configure script. + +AC_INIT(SpecTcl/MySpecTclApp.cpp) +AC_CONFIG_AUX_DIR(config) +AM_CONFIG_HEADER(config.h) +AC_CANONICAL_HOST +AM_INIT_AUTOMAKE(SpecTcl, 3.3-008) +AC_CONFIG_MACRO_DIR([m4]) + +AC_EXEEXT +AC_OBJEXT + +# This should track the version in +# AM_INIT_AUTOMAKE it will be used to +# define the version information in shared +# images. + +SOVERSION="3:2" +# +# This symbol describes where the bundled Gri graphics package lives. +# Gri is used to help Xamine do printing. +# +MYGRIDIR="gri-2.12.20" + +# Checks for programs. + + +AC_PROG_AWK +AC_PROG_CXX +AC_PROG_CC +AC_PROG_CPP +AC_PROG_INSTALL +AC_PROG_LN_S +AC_PROG_MAKE_SET +AM_PROG_LEX +AC_PROG_YACC +AC_PROG_GCC_TRADITIONAL +AC_PROG_LIBTOOL + + +# The following are for doctools things: + +AC_PATH_PROG(HCDOCBOOK, docbook2dvi, echo) +AC_PATH_PROG(HTMLDOCBOOK, docbook2html, echo) +AC_PATH_PROG(DVIPDF, dvipdf, echo) +AC_PATH_PROG(MANDOCBOOK, xmlto, echo) + + + +# Checks for header files. +AC_HEADER_STDC +AC_HEADER_SYS_WAIT +AC_CHECK_HEADER(time.h) +AC_CHECK_HEADERS([fcntl.h limits.h malloc.h memory.h stddef.h stdlib.h strings.h string.h sys/file.h sys/ioctl.h sys/socket.h sys/time.h unistd.h values.h windows.h machine/hal_sysinfo.h sys/proc.h sys/mtio.h sys/mman.h sys/ipc.h sys/shm.h machine/param.h sys/un.h]) + +# Checks for typedefs, structures, and compiler characteristics. +AC_HEADER_STAT +AC_HEADER_TIME +AC_STRUCT_TM +AC_C_CONST +AC_C_INLINE +AC_TYPE_OFF_T +AC_TYPE_PID_T +AC_TYPE_SIZE_T +AC_TYPE_SIGNAL + +# Checks for library functions. +AC_FUNC_MMAP +AC_REPLACE_FUNCS([atexit dup2 ftruncate getpagesize memset putenv]) +AC_REPLACE_FUNCS([strchr strcspn strerror strrchr bzero mkstemp stat]) +AC_REPLACE_FUNCS([malloc memcmp strftime alloca vfork strtok_r]) +AC_CHECK_FUNCS([select socket strspn fork drand48 seed48]) +AC_CHECK_FUNCS([pipe sbrk shm_open shmget fcntl]) +AC_CHECK_FUNCS([floor getcwd gethostname gettimeofday mbrlen]) +AC_CHECK_FUNCS(time) +AC_CHECK_LIB(m, pow) +AC_CHECK_LIB(m, sqrt) +AC_CHECK_LIB(m, logb) +AC_CHECK_FUNCS([strdup strstr strtol tzset mktime strtod timezone]) + + +# The following are needed for strict ANSI c++ compilers The major features +# are whether or not there are .h -less headers and if there's an std +# namespace we'll need to import. + +# See if the C runtime libs have .h's on them or +# if h-less versions can be used for what we need: +# + +AC_LANG_PUSH(C++) +AC_CHECK_HEADER(iostream, [AC_DEFINE([HAVE_HLESS_IOSTREAM],1,[<iostream> exists])],[]) +AC_CHECK_HEADER(istream, [AC_DEFINE([HAVE_HLESS_ISTREAM],1,[<istream> exists])],[]) +AC_CHECK_HEADER(ostream, [AC_DEFINE([HAVE_HLESS_OSTREAM],1,[<ostream> exists])],[]) +AC_CHECK_HEADER(streambuf,[AC_DEFINE([HAVE_HLESS_STREAMBUF],1,[<streambuf> exists])],[]) +AC_CHECK_HEADER(fstream, [AC_DEFINE([HAVE_HLESS_FSTREAM],1,[<fstream> exists])],[]) +AC_CHECK_HEADER(iomanip, [AC_DEFINE([HAVE_HLESS_IOMANIP],1,[<iomanip> exists])],[]) +AC_CHECK_HEADER(sstream, [AC_DEFINE([HAVE_HLESS_SSTREAM],1,[<sstream> exists])],[]) +AC_CHECK_HEADER(typeinfo, [AC_DEFINE([HAVE_HLESS_TYPEINFO],1,[<typeinfo> exists])],[]) + + + +# Is there an std namespace to import from? + +AC_COMPILE_IFELSE([using namespace std;], [AC_DEFINE([HAVE_STD_NAMESPACE],[1],[1 if std namespace defined])]) +AH_VERBATIM([VHAVE_STD_NAMESPACE],[ +/* Define STD macro according to HAVE_STD_NAMESPACE value */ +#ifdef HAVE_STD_NAMESPACE +#define STD(name) std::name +#else +#define STD(name) name +#endif]) + + + +AC_LANG_POP(C++) + +# -------------------- X11 tests + +# Locate the X11 header files and the X11 library archive. Try the +# ac_path_x macro first, but if it doesn't find the X stuff then check +# a list of possible directories. + +AC_PATH_X +AC_PATH_XTRA + +if test "$x_includes" != "" +then + XINCLUDES="-I$x_includes" +else + XINCLUDES="" +fi +if test "$x_libraries" != "" +then + XLIBSW="-L$x_libraries" +else + XLIBSW="" +fi + + +# +# Locate motif headers and libraries. (Xm.h and libXm.{so,dylib,a}). +# +motif_headerdir="" +motif_h_found="no" +AC_MSG_CHECKING([for Xm/Xm.h]) + +AC_ARG_WITH(motif-header-dir, + [ --with-motif-header-dir=path Path to Xm header directory], + [motif_headerdir="$withval"; motif_h_found="yes"]) + +# first try is for the headers in the same dir as the X headers: + +if test $motif_h_found = no +then + # Special case: if it's in x_includes, no extra sws. + + mdir="$x_includes" + if test "$mdir" = "" + then + mdir="/usr/include" + fi + AC_CHECK_FILE([${mdir}/Xm/Xm.h], + [motif_h_found="yes"], + [motif_h_found="no"]) +fi + +# Next search: +# /usr/include/X11 +# /usr/include/X11R6 +# /usr/X11/include +# /usr/X11R6/include +# /usr/include/Xm +# /sw/include (Darwin lesstif). +# /usr/local/include (default lesstif installation). +# + +# If in /usr/include we don't need anything: + + +if test $motif_h_found = no +then + motif_header_dirs="/usr/include/X11 /usr/include/X11R6 /usr/X11/include /usr/X11R6/include /usr/include /sw/include /usr/local/include" + for d in ${motif_header_dirs} + do + AC_CHECK_FILE([${d}/Xm/Xm.h], + [motif_h_found="yes"; \ + motif_headerdir="$d"]) + if test $motif_h_found = yes + then + break + fi + done +fi + +# +# If motif_h_found and nonblank motif_headerdir prepend +# with -I to make MOTIF_INCLUDES (blank means XINCLUDES has it +# covered. If not motif_h_found error and ask for help. +# +if test $motif_h_found = yes +then + if test "$motif_headerdir" = "" + then + AC_MSG_RESULT([Xm/Xm.h is relative to $x_includes]) + else + AC_MSG_RESULT([Xm/Xm.h is relative to $motif_headerdir]) + MOTIF_INCLUDES="-I$motif_headerdir" + fi +else + AC_MSG_ERROR([ Can't find Xm/Xm.h try using --with-motif-header-dir=path]) +fi + +# +# Look for libXm.{so,dylib,a} +# Our search order is: +# --with-motif-lib=path (user always can override). +# $x_libraries (Pretty normal place e.g. openmotif). +# /usr/lib (e.g. OSF1). +# /sw/lib (Darwin lesstif installation). +# /usr/local/lesstif/lib (normal lesstif install wo links?). +# + +libexts=".so .dylib .a" # prefer shared libs to static. +motiflibdirs="/usr/X11/lib /usr/X11R6/lib /sw/lib /usr/local/lesstif/lib /usr/lib" +motif_libdir="" +motif_lib_found="no" + +AC_MSG_CHECKING([for libXm]) +AC_ARG_WITH(motif-lib, + [ --with-motif-lib=path Path to libXm], + [motif_libdir="" + motif_lib_found="yes"] + ) + +# If necessary, try in $x_libraries: + +for ext in $libexts +do + if test $motif_lib_found = "no" + then + if "$x_libraries" != "" + then + AC_CHECK_FILE([$x_libraries/libXm${ext}], +x [motif_lib_found="yes"]) + else + AC_CHECK_FILE([/usr/lib/libXm${ext}], + [motif_lib_found="yes"]) + fi + fi +done + +# If necessary try in the list of good directories: + +for lib in $motiflibdirs +do + for ext in $libexts + do + if test $motif_lib_found = "no" + then + AC_CHECK_FILE([$lib/libXm${ext}], + [motif_lib_found="yes" + motif_libdir="$lib"]) + fi + done +done + +# If found set MOTIF_LIBSW accordingly. Note this will be +# empty if found in with the x libraries. +# + +if test $motif_lib_found = "yes" +then + if test "$motif_libdir" = "" + then + AC_MSG_RESULT([Found libXm in $x_libraries]) + else + AC_MSG_RESULT([Found libXm in $motif_libdir]) + MOTIF_LIBSW="-L$motif_libdir" + fi +else + AC_MSG_ERROR([Can't fine libXm give me a hand with --with-motif-lib]) +fi + + +# Checks for include declarations + + +# These checks are for declarations within specific system headers. For +# instance, MTSETBLK is not declared in sys/mtio.h on all platforms, but +# is needed on Linux. + + # MTSETBLK in sys/mtio.h +AC_MSG_CHECKING([for MTSETBLK in sys/mtio.h]) + AC_TRY_COMPILE([ +#include <sys/mtio.h> +#ifndef MTSETBLK +# error mtsetblk not defined +#endif +], , my_cv_have_mtsetblk=yes, my_cv_have_mtsetblk=no) + if test $my_cv_have_mtsetblk = yes ; then + AC_DEFINE(HAVE_DECL_MTSETBLK, 1, [True if MTSETBLK defined in sys/mtio.h]) + fi +AC_MSG_RESULT($my_cv_have_mtsetblk) + + # MTOVERRUN in sys/mtio.h +AC_MSG_CHECKING([for MTOVERRUN in sys/mtio.h]) + AC_TRY_COMPILE([ +#include <sys/mtio.h> +#ifndef MTOVERRUN +# error overrun not defined +#endif +], , my_cv_have_mtoverrun=yes, my_cv_have_mtoverrun=no) + if test $my_cv_have_mtoverrun = yes ; then + AC_DEFINE(HAVE_DECL_MTOVERRUN, 1, [True if MTOVERRUN defined in sys/mtio.h]) + fi +AC_MSG_RESULT($my_cv_have_mtoverrun) + + + # MTCSE in sys/mtio.h +AC_MSG_CHECKING([for MTCSE in sys/mtio.h]) + AC_TRY_COMPILE([ +#include <sys/mtio.h> +#ifndef MTCSE +# error mtcse not defined +#endif +], , my_cv_have_mtcse=yes, my_cv_have_mtcse=no) + if test $my_cv_have_mtcse = yes ; then + AC_DEFINE(HAVE_DECL_MTCSE, 1, [True if MTCSE defined in sys/mtio.h]) + fi +AC_MSG_RESULT($my_cv_have_mtcse) + + # PAGESIZE in limits.h +AC_MSG_CHECKING([for PAGESIZE in limits.h]) + AC_TRY_COMPILE([ +#include <limits.h> +#ifndef PAGESIZE +# error pagesize not defined +#endif +], , my_cv_have_pagesize=yes, my_cv_have_pagesize=no) + if test $my_cv_have_pagesize = yes ; then + AC_DEFINE(HAVE_DECL_PAGESIZE, 1, [True if PAGESIZE is defined in limits.h as on HP-UX]) + fi +AC_MSG_RESULT($my_cv_have_pagesize) + + # PADSIZE in limits.h +AC_MSG_CHECKING([for PADSIZE in limits.h]) + AC_TRY_COMPILE([ +#include <limits.h> +#ifndef PADSIZE +# error padsize not defined +#endif +], , my_cv_have_padsize=yes, my_cv_have_padsize=no) + if test $my_cv_have_padsize = yes ; then + AC_DEFINE(HAVE_DECL_PADSIZE, 1, [True if PADSIZE defined in limits.h]) + fi +AC_MSG_RESULT($my_cv_have_padsize) + + # INT_MAX in limits.h +AC_MSG_CHECKING([for INT_MAX in limits.h]) + AC_TRY_COMPILE([ +#include <limits.h> +#ifndef INT_MAX +# error intmax not defined +#endif +], , my_cv_have_int_max=yes, my_cv_have_int_max=no) + if test $my_cv_have_int_max = yes ; then + AC_DEFINE(HAVE_DECL_INT_MAX, 1, [True if INT_MAX defined in limits.h]) + fi +AC_MSG_RESULT($my_cv_have_int_max) + + # MAXINT in values.h +AC_MSG_CHECKING([for MAXINT in values.h]) + AC_TRY_COMPILE([ +#include <values.h> +#ifndef MAXINT +# error maxint not defined +#endif +], , my_cv_have_maxint=yes, my_cv_have_maxint=no) + if test $my_cv_have_maxint = yes ; then + AC_DEFINE(HAVE_DECL_MAXINT, 1, [True if MAXINT defined in values.h]) + fi +AC_MSG_RESULT($my_cv_have_maxint) + + # Check for 64 bit longs +AC_MSG_CHECKING([whether long int is 64 bits]) + AC_TRY_RUN([ +int main(int argc, char **argv) { + if(sizeof(long) == 8) + return 0; + else + return 1; +} +], [AC_DEFINE(HAVE_TRUE_SIXTY_FOUR, 1, [True if long int is 8 bits]) AC_MSG_RESULT(yes)], AC_MSG_RESULT(no), AC_MSG_RESULT(assuming not on target machine)) + +# Determine the particular platform we are running on. Specifically, +# we need to know if we are running on a SPARC processor, so that we +# can do the tape reading appropriately. + +AC_MSG_CHECKING([for SPARC processor type]) +case $host in + *sparc*) + AC_DEFINE(SPARC, 1, [Set to 1 if SPARC Processor]) + echo "yes" + ;; + *) echo "no" ;; +esac + +# Determine what OS we are running so we know whether or not to +# declare some things extern "C". Also helpful for some Cygwin +# and Ultrix specific calls. + +LD_EXTRA_FLAGS="" +X11EXTRA_LDFLAGS="" +AC_MSG_CHECKING([for supported OS]) +OS="$host_os" # Default guess. +case $host_os in + *cygwin* ) + AC_DEFINE(CYGWIN, 1, [Set to 1 if Cygwin environment]) + AC_MSG_RESULT([Cygwin... xdr.h broken for c++]) + + # cygwin we have doesn't seem to get the object extension + # quite right: + + OBJEXT="o" + AC_SUBST(OBJEXT) + AC_DEFINE(BROKEN_XDR_H, 1, + [defined if xdr.h unusuable for c++]) + + + # Windows doesn't allow undefined symbols at link time + # + LD_EXTRA_FLAGS="$LD_EXTRA_FLAGS -no-undefined -lrpc" + X11EXTRA_LDFLAGS="-lSM -lICE" + ;; + *linux* ) + AC_DEFINE(LINUX, 1, [Set to 1 if Linux environment]) + AC_MSG_RESULT([Linux]) + ;; + *ultrix* ) + AC_DEFINE(ULTRIX, 1, [Set to 1 if Ultrix environment]) + AC_MSG_RESULT([Ultrix]) + ;; + *osf* ) + AC_DEFINE(OSF, 1, [Set to 1 if OSF environment]) + AC_MSG_RESULT([OSF1]) + WCHAR_T_DEF=-D_WCHAR_T + OBJEXT=o + + # Missing on OSF1 for some reason + AC_SUBST(OBJEXT) + + # This does away with "weak symbol" warnings + LD_EXTRA_FLAGS="$LD_EXTRA_FLAGS -Wl,\"-S\"" + ;; + *darwin* ) + OBJEXT="o" + AC_SUBST(OBJEXT) + AC_DEFINE(DARWIN, 1, [Set to 1 if Darwin environment]) + AC_DEFINE(BROKEN_XDR_H, 1, + [defined if xdr.h is unusable for c++]) + AC_MSG_RESULT([Darwin .. xdr.h broken for c++]) + OS="darwin" # It's crapped up with versions otherwise. + ;; + * ) + AC_MSG_RESULT([ok]) + ;; +esac + +# Locate Tcl/Tk and setup compile/link switches for them too: + +# TCL headers: +# We know of a few places the headers can live: +# /usr/include redhat linux. +# /usr/include/tcl debian dude that made link to default tcl. +# /usr/include/tcl<version> debian linux +# /usr/local/include default for source based install. +# Whatever the user specifies. +# For now, the versions we look for are determined by the +# variable tcl_versions that variable is a list of version +# number specifiers. +# + +tcl_versions="8.5 8.4 8.3 8.2 8.1 8.0" # First match; so order new -> old. + + +# The TCL Shell - used to run tests... must be in path. +# First check for a version qualified command: +# + +AC_MSG_CHECKING([for tcl shell command...]) +for version in $tcl_versions +do + name=tclsh${version} + AC_CHECK_PROG(TCLSH_CMD, $name, $name) +done + + +tcl_header_dir="" +AC_MSG_CHECKING([for tcl header directory]) + +AC_ARG_WITH(tcl-header-dir, + [ --with-tcl-header-dir=path Path to tcl headers], + [tcl_header_dir=$withval ; + tcl_headers_found="yes"],[tcl_headers_found="no"]) + + +# +# Look for tcl.h in the following places: +# Note that the order is important for Darwin and OSF1. + # + # /sw/include (Best for darwin). + # /usr/local/tcl/include (Best for NSCL Cygwin). + # /usr/local/include (Best for NSCL OSF1) + # /usr/include (Best for e.g. Linux). + # + # For all of these directories, + # look for tcl.h in: + # - the directory itself. + # - a tcl subdirectory to the directory. + # - subdirectories of the form tcl${version} where + # version is chosein from tcl_versions. + # + +tcl_h_testdirs="/sw/include /usr/local/tcl/include /usr/local/include \ + /usr/include" + +if test $tcl_headers_found = "no" +then + for d in $tcl_h_testdirs + do + for v in ${tcl_versions}; + do + if test $tcl_headers_found = "no" + then + AC_CHECK_FILE([${d}/tcl${v}/tcl.h], + [tcl_header_dir=${d}/tcl${v} + tcl_headers_found="yes"]) + fi + done + if test $tcl_headers_found = "no" + then + AC_CHECK_FILE([${d}/tcl.h], + [tcl_header_dir=$d + tcl_headers_found="yes"]) + fi + if test $tcl_headers_found = "no" + then + AC_CHECK_FILE([${d}/tcl/tcl.h], + [tcl_header_dir=${d}/tcl + tcl_headers_found="yes"]) + fi + done +fi + +if test $tcl_headers_found = "yes"; then + TCL_FLAGS=-I${tcl_header_dir} + AC_MSG_RESULT(Using path $tcl_header_dir) +else + AC_MSG_ERROR([can't find tcl.h try using --with-tcl-header-dir to help me]) +fi + +# Tcl libraries: +# We look for the following +# /sw/lib +# /usr/lib/libtcl.{so,dylib,a} - link to a default lib. +# /usr/lib/libtcl<version>.{so,dylib,a} - link to a specific lib. +# If --with-tcl-libdir=dir is supplied, that directory is +# searched first. +# ASSUMPTIONS: libtcl and libtk will have the same naming conventions. +# + +tcl_libsearchpath="" +tcl_libfound="no" +AC_MSG_CHECKING([Tcl/Tk library to use]) + + # Does the user want us to look somewhere in particular: + +AC_ARG_WITH(tcl-libdir, + [ --with-tcl-libdir=dir Specify where the tcl libraries live.], + [tcl_libsearchpath=$withval]) + +tcl_libsearchpath="$tcl_libsearchpath /sw/lib /usr/lib /usr/local/lib" + +tcl_libfiles="" +for v in ${tcl_versions} +do + tcl_libfiles="$tcl_libfiles libtcl${v}.so libtcl${v}.dylib libtcl${v}.a" +done +tcl_libfiles="$tcl_libfiles libtcl.so libtcl.dylib libtcl.a" + + +for dir in ${tcl_libsearchpath} +do + for file in ${tcl_libfiles} + do + fname=$dir/$file + if test $tcl_libfound = "no" + then + AC_CHECK_FILE($fname, + [tcl_libdir=$dir + tcl_libname=$file + tcl_libfound="yes" + ]) + fi + done +done + +if test $tcl_libfound = "yes" ; then + # Find the lib basename: + + + + tcl_libname=$(echo $tcl_libname|cut -c 4- ) # trim off lib + + # The suffix now is either .so, .dylib or .a; basename can get rid of that: + + tcl_libname=$(basename $(basename $(basename $tcl_libname .a) .so) .dylib) + + # Rather than repeat this mess for tk, we require the same version and + # just replace the tcl with tk. + + tk_libname=tk$(echo $tcl_libname|cut -c 4-) # trim off tc...and use tk + TCL_LDFLAGS="-L${tcl_libdir} -l${tk_libname} -l${tcl_libname}" + AC_MSG_RESULT([Using directory $tcl_libdir]) + +else + AC_MSG_ERROR([Unable to find the tcl library, help me out with --with-tcl-libdir]) +fi + +# Look for image magick convert + +# Try to find ImageMagick's convert program, used for converting postscript +# files created by Gri into JPEGs or PNGs. This is only useful if Gri is +# present as well. + +AC_CHECK_PROG(have_convert, convert, "yes", "no") +if test $have_convert = "no" ; then + AC_MSG_WARN(Cannot print to JPG or PNG files without ImageMagick convert.) +else + AC_DEFINE(HAVE_CONVERT, 1, [True if ImageMagick's convert is present]) +fi + +# libgd: We'll only hunt for the headers in /usr/include /usr/local/include +# which I >think< will be automatically searched by the compiler. +# libs we will also only look for in /usr/lib and /usr/local/lib +# If not found we invite the user to use --with-gd-headerdir +# and --with-gd-libdir +# + +AC_MSG_CHECKING([ libgd used to do wysiwyg printing in Xamine]) + +AC_ARG_WITH(gd-headerdir, + [ --with-gd-headerdir=path Path to the gd.h header], + [gdheaderdir=$withval], + [gdheaderdir=""]) +AC_ARG_WITH(gd-libdir, + [ --with-gd-headerdir=path Path to libgd], + [gdlibdir=$withval], + [gdlibdri=""]) + + +# If user supplied a directory for gd.h, keep them honest: + +if test "$gdheaderdir" != "" +then + AC_MSG_RESULT([ User provided --with-gd-headerdir=$gdheaderdir]) + if test -e $gdheaderdir/gd.h + then + GDINCLUDES="-I$gdheaderdir" + else + AC_MSG_ERROR([ User provided --with-gd-headerdir=$gdheaderdir does not contain gd.h]) + fi +else +# Need to hunt in 'normal places'. + + AC_CHECK_HEADER(gd.h, [gdheaderdir="found in -I path"]) + + if test "$gdheaderdir" != "" + then + AC_MSG_RESULT([gd.h $gdheaderdir]) + GDINCLUDES="" + else + AC_MSG_ERROR([Unable to locate gd.h, try --with-gd-headerdir to help me out]) + fi +fi + +# if user supplied a directory for libgd keep them honest. We'll look for the +# static lib libgd.a - since .so is not the only shared object header supported. +# + +if test "$gdlibdir" != "" +then + AC_MSG_RESULT([ User providied --with-gd-libdir=$gdlibdir]) + if test -e $gdlibdir/libgd.a + then + GDLDSW="-L$gdlibdir -lgd" + else + AC_MSG_ERROR([ User provided --with-gd-libdir=$gdlibdir does not contain libgd.a]) + fi +else +# Need to hunt in the normal places. + + AC_CHECK_LIB(gd, gdImageCreate, [gdlibdir="found in -L path"]) + if test "$gdlibdir" != "" + then + AC_MSG_RESULT([libgd $gdlibdir]) + GDLDSW="-lgd" + else + AC_MSG_ERROR([Unable to locate libgd try --with-gd-libdir to help me out]) + fi +fi + + +# Look for Gri to allow production quality printing + +# If Gri is present, then printing will be enabled. Also required is the +# file gri.cmd, which tell's gri how to behave on command files. If Gri +# is not present, printing will simply be disabled. + +# regardless, in order to build the distro, we need to configure +# our version of gri. + + +AC_ARG_WITH(gri-dir, + [ --with-gri-dir=path Path to Gri binary], + [gri_dir=$withval ; gri_found="yes"], + [gri_found="no"]) + + +if test $gri_found = "no" ; then + AC_MSG_CHECKING([for gri...]) +fi + + # /usr/bin +if test $gri_found = "no" ; then + AC_CHECK_FILE([/usr/bin/gri], + [gri_dir="/usr/bin"; + gri_found="yes"]) +fi + + # /usr/local/bin +if test $gri_found = "no" ; then + AC_CHECK_FILE([/usr/local/bin/gri], + [gri_dir="/usr/local/bin"; + gri_found="yes"]) +fi + # Installed with SpecTcl: + +if test $gri_found = "no" ; then + AC_CHECK_FILE([$prefix/share/gri], + [gri_dir=$prefix/bin; + gri_found="yes"]) +fi + + # I give up at this point, if necessary the Gri packaged with SpecTcl is + # configured here and built. +if test $gri_found = "yes" ; then + AC_MSG_RESULT([yes]) + mygri="no" + GRI="" +else + # + # Configure GRI and build it into SpecTcl's directories: + AC_MSG_NOTICE([Cannot find GRI so I'll build my copy of it]) + # + + # this so CXX etc. propagates at the risk we wind up stranded + # in the Gri directory on failure or ^C + # + + (cd ${MYGRIDIR}; \ + rm -f Makefile; \ + ./configure --prefix=$prefix ; \ + make ;\ + make install ;\ + ) + AC_MSG_NOTICE([Now that GRI is build I know where I put stuff]) + + gri_dir=$prefix/bin + mygri="yes" + gri_found="yes" + GRI="" + +fi + + + +if test $gri_found = "yes" +then + AC_DEFINE(HAVE_GRI, 1, [True if Gri is available]) +fi + + + + +# If cppunit is available we can try to bundle some tests. +# CPPUNIT will be defined to makefiles and CPPUNIT_INCLUDES +# CPPUNIT_LDFLAGS will be about what you'd expect them to be. + + +AC_ARG_ENABLE(cppunit, + AS_HELP_STRING([--enable-cppunit],[build cppunit based tests]), + [havecppunit="check"], [havecppunit="no"]) + +if test "$havecppunit" != "no" +then + AC_LANG_PUSH(C++) + AC_MSG_CHECKING([for cppunit unit testing framework]) + + AC_CHECK_HEADERS([cppunit/Test.h], [havecppunit="yes"], [havecppunit="no"]) + AC_MSG_RESULT([$havecppunit]) + if test "$havecppunit" == "yes" + then + CPPUNIT_INCLUDES="" + CPPUNIT_LDFLAGS="-lcppunit" + AC_SUBST(CPPUNIT_INCLUDES) + AC_SUBST(CPPUNIT_LDFLAGS) + fi + +AC_LANG_POP(C++) + +# We also want the 'check' package for C language unit tests. + +# AM_PATH_CHECK() + +fi + +AM_CONDITIONAL(CPPUNIT, test $havecppunit == "yes") + + +# We use mandb to index the man pages if it exists... not sure what the +# alternatives are on other systems so transform mandb -> echo if +# we can't find it: + +AC_CHECK_PROG(MANDB, mandb, mandb, echo) + +# +# We'd like to compile with -pedantic if supported +# Intel looks like gcc so we check explicitly for a gcc +# named compiler +# + +AC_MSG_CHECKING([gcc so use -pedantic?]) + +if `echo $CC | grep -q gcc` +then + CFLAGS="$CFLAGS -pedantic -Wno-long-long" + CXXFLAGS="$CXXFLAGS -pedantic -Wno-long-long" + AC_MSG_RESULT(yes) +else + AC_MSG_RESULT(no) +fi + +# mandb: + +AC_SUBST(MANDB) + +# tcl/tk +AC_SUBST(TCL_FLAGS) +AC_SUBST(TCL_LDFLAGS) +AC_SUBST(TCLSH_CMD) + +# X flags + +AC_SUBST(X11EXTRA_LDFLAGS) + +AC_SUBST(XINCLUDES) +AC_SUBST(XLIBSW) +AC_SUBST(CFLAGS) + +# Motif flags +AC_SUBST(MOTIF_INCLUDES) +AC_SUBST(MOTIF_LIBSW) +AC_SUBST(XTLIBSW) + +# Gri directories +AC_SUBST(gri_dir) +AC_SUBST(MYGRIDIR) + +# Tru64 specific +AC_SUBST(WCHAR_T_DEF) +AC_SUBST(LD_EXTRA_FLAGS) + +AC_SUBST(ac_aux_dir) + +# LIBOBJS and LTLILBOBJS set +AC_SUBST(LTLIBOBJS) + +# Operating system designator: + +AC_SUBST(OS) + +# .so version information. + +AC_SUBST(SOVERSION) + +# docbook tools: + +AC_SUBST(HCDOCBOOK) +AC_SUBST(HTMLDOCBOOK) +AC_SUBST(DVIPDF) +AC_SUBST(MANDOCBOOK) + +# Xamine uses libgd for wysiwyg printing: + + AC_SUBST(GDINCLUDES) + AC_SUBST(GDLDSW) + + +# create output files. + + +AC_OUTPUT(Makefile Replace/Makefile Scripts/Makefile Utility/Makefile \ + factories/Makefile \ + Display/Makefile NSCLException/Makefile \ + Xamine/Makefile Tape/Makefile \ + EventSource/Makefile TCL/Makefile Events/Makefile Gates/Makefile \ + Sorter/Makefile SpectrumIO/Makefile Filter/Makefile \ + Analysis/Makefile \ + DecoderRing/Makefile \ + TreeParam/Makefile \ + Fits/Makefile \ + SpecTcl/Makefile \ + contrib/Makefile contrib/scriptable/Makefile \ + TestFiles/Makefile \ + Gui/Makefile splash/Makefile \ + treegui/Makefile \ + filtsplit/Makefile doc/Makefile \ + calibratedparams/Makefile) Modified: trunk/SpecTcl/gri-2.12.20/doc/index.html =================================================================== --- trunk/SpecTcl/gri-2.12.20/doc/index.html 2012-05-02 17:50:46 UTC (rev 1997) +++ trunk/SpecTcl/gri-2.12.20/doc/index.html 2012-05-02 17:53:24 UTC (rev 1998) @@ -8,7 +8,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head> <body bgcolor="#FFFFFF" text="#000000" link="#0000EE" vlink="#551A8B" alink="FF0000"> <!-- Created automatically from texinfo source --> -<!-- Mon Dec 5 8:36:28 2011 --> +<!-- Wed May 2 13:52:04 2012 --> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |