2003-08-11 22:59:48 +02:00
|
|
|
dnl configure.in script for ngspice
|
|
|
|
|
dnl
|
|
|
|
|
dnl This file is part of ngspice.
|
|
|
|
|
dnl
|
|
|
|
|
dnl (Process this file with autoconf to produce a configure script.)
|
2000-04-27 22:03:57 +02:00
|
|
|
AC_INIT(src/main.c)
|
2000-10-18 18:29:59 +02:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl Create a configuration header
|
|
|
|
|
AM_CONFIG_HEADER(config.h)
|
|
|
|
|
|
2000-10-18 18:29:59 +02:00
|
|
|
dnl Initialize automake stuff
|
2003-08-05 19:20:17 +02:00
|
|
|
AM_INIT_AUTOMAKE(ng-spice-rework,15pre1)
|
2000-10-18 18:29:59 +02:00
|
|
|
|
2001-12-02 21:12:56 +01:00
|
|
|
dnl --enable-ftedebug : enable frontend debug macros
|
|
|
|
|
AC_ARG_ENABLE(ftedebug,
|
|
|
|
|
[ --enable-ftedebug Enable ngspice frontend debug])
|
|
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl --enable-ansi : try to force --ansi option to the compiler
|
|
|
|
|
AC_ARG_ENABLE(ansi,
|
|
|
|
|
[ --enable-ansi Force --ansi option for compilation])
|
|
|
|
|
|
|
|
|
|
dnl --disable-debug : remove -g and -Wall option to the compiler
|
|
|
|
|
AC_ARG_ENABLE(debug,
|
|
|
|
|
[ --enable-debug Add -g option for compilation (default)])
|
|
|
|
|
|
|
|
|
|
dnl --enable-checker : add --with-checker-debug option to the compiler
|
|
|
|
|
AC_ARG_ENABLE(checker,
|
|
|
|
|
[ --enable-checkergcc Option for compilation with checkergcc])
|
|
|
|
|
|
2003-08-11 22:59:48 +02:00
|
|
|
dnl --enable-gc : Enable Boehm-Weiser Conservative Garbage Collector
|
|
|
|
|
AC_ARG_ENABLE(checker,
|
|
|
|
|
[ --enable-gc Use Boehm-Weiser Conservative Garbage Collector ])
|
|
|
|
|
|
|
|
|
|
dnl --enable-nosqrt : define NOSQRT for the code
|
|
|
|
|
AC_ARG_ENABLE(nosqrt,
|
|
|
|
|
[ --enable-nosqrt Use always log/exp for nonlinear capacitances])
|
|
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl --enable-bypass : define BYPASS for the code
|
|
|
|
|
AC_ARG_ENABLE(nobypass,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-nobypass Don't bypass recalculations of slowly changing
|
|
|
|
|
variables])
|
2000-04-27 22:03:57 +02:00
|
|
|
|
2003-08-11 22:59:48 +02:00
|
|
|
dnl --enable-capbypass : define CAPBYPASS for the code
|
|
|
|
|
AC_ARG_ENABLE(capbypass,
|
2003-08-12 00:32:15 +02:00
|
|
|
[ --enable-capbypass Bypass calculation of cbd/cbs in the mosfets if the vbs/vbd voltages are unchanged])
|
2003-08-11 22:59:48 +02:00
|
|
|
|
|
|
|
|
dnl --enable-capzerobypass : define CAPZEROBYPASS for the code
|
|
|
|
|
AC_ARG_ENABLE(capzerobypass,
|
|
|
|
|
[ --enable-capzerobypass Bypass all the cbd/cbs calculations if Czero is zero])
|
|
|
|
|
|
|
|
|
|
dnl --enable-nodelimiting : define NODELIMITING for the code
|
|
|
|
|
AC_ARG_ENABLE(nodelimiting,
|
|
|
|
|
[ --enable-nodelimiting Experimental damping scheme])
|
|
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl --enable-predictor : define PREDICTOR for the code
|
|
|
|
|
AC_ARG_ENABLE(predictor,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-predictor Enable a predictor method for convergence])
|
|
|
|
|
|
|
|
|
|
dnl --enable-newtrunc : define NEWTRUNC for the code
|
|
|
|
|
AC_ARG_ENABLE(newtrunc,
|
|
|
|
|
[ --enable-newtrunc Enable the newtrunc option])
|
2000-04-27 22:03:57 +02:00
|
|
|
|
2003-08-11 22:59:48 +02:00
|
|
|
dnl --enable-sense2 : define WANT_SENSE2 for the code
|
2000-04-27 22:03:57 +02:00
|
|
|
AC_ARG_ENABLE(sense2,
|
|
|
|
|
[ --enable-sense2 Use spice2 sensitivity analysis])
|
|
|
|
|
|
2003-08-11 22:59:48 +02:00
|
|
|
dnl --enable-sensdebug : define SENSDEBUG for the code
|
|
|
|
|
AC_ARG_ENABLE(sensedebug,
|
|
|
|
|
[ --enable-sensdebug Debug sensitivity code])
|
|
|
|
|
|
|
|
|
|
dnl --enable-stepdebug : define STEPDEBUG for the code
|
|
|
|
|
AC_ARG_ENABLE(stepdebug,
|
|
|
|
|
[ --enable-stepdebug Unkown debug option])
|
|
|
|
|
|
2001-01-24 18:15:31 +01:00
|
|
|
dnl --enable-intnoise : define INT_NOISE for the code
|
|
|
|
|
AC_ARG_ENABLE(intnoise,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-intnoise Enable noise integration in noise analysis])
|
2001-01-24 18:15:31 +01:00
|
|
|
|
2000-09-05 21:48:22 +02:00
|
|
|
dnl --enable-smoketest : a smoketest
|
|
|
|
|
AC_ARG_ENABLE(smoketest,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-smoketest Enable smoketest compile])
|
2000-09-05 21:48:22 +02:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl --enable-experimental : define EXPERIMENTAL_CODE for the code
|
|
|
|
|
AC_ARG_ENABLE(experimental,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-experimental Enable some experimental code])
|
2000-04-27 22:03:57 +02:00
|
|
|
|
2001-05-13 15:24:12 +02:00
|
|
|
dnl --enable-ekv: define HAVE_EKV in the code. This is for EKV model support
|
2001-05-09 20:54:48 +02:00
|
|
|
AC_ARG_ENABLE(ekv,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-ekv Enable ekv model *not in standard distribution*])
|
2001-05-09 20:54:48 +02:00
|
|
|
|
2003-07-23 21:36:39 +02:00
|
|
|
dnl --enable-xspice: define XSPICE in the code. This is for xspice support
|
|
|
|
|
AC_ARG_ENABLE(xspice,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-xspice Enable XSpice enchancements, experimental *not in standard distribution*])
|
|
|
|
|
|
|
|
|
|
dnl --enable-cider: define CIDER in the code. This is for CIDER support
|
|
|
|
|
AC_ARG_ENABLE(cider,
|
|
|
|
|
[ --enable-cider Enable CIDER enchancements, experimental *not in standard distribution*])
|
2003-07-23 21:36:39 +02:00
|
|
|
|
|
|
|
|
dnl --enable-cluster: define CLUSTER in the code. This is for tcl support
|
|
|
|
|
AC_ARG_ENABLE(cluster,
|
2003-08-11 22:59:48 +02:00
|
|
|
[ --enable-cluster Enable cluster support, experimental *not in standard distribution*])
|
2003-07-23 21:36:39 +02:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl Enable maintainer commands only if requested
|
|
|
|
|
AM_MAINTAINER_MODE
|
|
|
|
|
|
|
|
|
|
dnl Work on compiler options according to system:
|
|
|
|
|
dnl Set default CFLAG - only use -Wall if we have gcc
|
|
|
|
|
|
|
|
|
|
AC_PROG_CC
|
|
|
|
|
|
|
|
|
|
if test "x$GCC" = "xyes"; then
|
|
|
|
|
CFLAGS="$CFLAGS -Wall "
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if test "$enable_debug" = "no"; then
|
|
|
|
|
AC_MSG_WARN(Removing debugging option!)
|
|
|
|
|
CFLAGS=" "
|
|
|
|
|
fi
|
|
|
|
|
|
2000-09-05 21:48:22 +02:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl Not sure that this will work....
|
|
|
|
|
if test "$with_checkergcc" = "yes"; then
|
|
|
|
|
CC="checkergcc"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dnl Checks for ANSI-C header files.
|
|
|
|
|
AC_HEADER_STDC
|
|
|
|
|
|
|
|
|
|
if test "$enable_ansi" = "yes"; then
|
|
|
|
|
AM_PROG_CC_STDC
|
|
|
|
|
if test ! "$am_cv_prog_cc_stdc"="yes"; then
|
|
|
|
|
AC_MSG_WARN(Failed to find Ansi flag!)
|
|
|
|
|
fi
|
|
|
|
|
fi
|
|
|
|
|
|
2000-09-05 21:48:22 +02:00
|
|
|
if test "$enable_smoketest" = "yes"; then
|
|
|
|
|
dnl CFLAGS="$CFLAGS -Werror"
|
|
|
|
|
CFLAGS="$CFLAGS -pedantic -W -Wmissing-prototypes"
|
|
|
|
|
CFLAGS="$CFLAGS -Wstrict-prototypes -Wtraditional"
|
|
|
|
|
CFLAGS="$CFLAGS -Wconversion -Wshadow -Wpointer-arith"
|
|
|
|
|
CFLAGS="$CFLAGS -Wcast-qual -Wcast-align -Wwrite-strings"
|
|
|
|
|
CFLAGS="$CFLAGS -Waggregate-return -fshort-enums -fno-common"
|
|
|
|
|
CFLAGS="$CFLAGS -Wnested-externs -Dinline= -g -O4"
|
|
|
|
|
fi
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
dnl Chech system we're on , and tune accordingly
|
|
|
|
|
AC_CANONICAL_HOST
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dnl Checks for programs
|
|
|
|
|
|
|
|
|
|
AC_LIBTOOL_DLOPEN
|
|
|
|
|
AM_PROG_LIBTOOL
|
2003-07-23 21:36:39 +02:00
|
|
|
AC_PROG_LIBTOOL
|
2000-04-27 22:03:57 +02:00
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
dnl --with-windows : the user wants to use generate the MS WINDOWS executable
|
|
|
|
|
AC_ARG_WITH(windows,
|
|
|
|
|
[ --with-windows MS WINDOWS executable],
|
|
|
|
|
dnl set HAS_WINDOWS flag:
|
|
|
|
|
AC_DEFINE(HAS_WINDOWS)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case $with_windows in
|
|
|
|
|
|
|
|
|
|
yes )
|
|
|
|
|
AC_DEFINE(X_DISPLAY_MISSING)
|
|
|
|
|
AC_MSG_RESULT(No X display!)
|
2003-07-27 22:44:57 +02:00
|
|
|
CFLAGS="$CFLAGS -mwindows";;
|
|
|
|
|
*)
|
|
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
dnl Checks for X11 header files and libraries - X11 support can be disabled
|
|
|
|
|
dnl by passing the '--without-x' option to configure:
|
|
|
|
|
|
|
|
|
|
AC_PATH_X
|
|
|
|
|
AC_PATH_XTRA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dnl Checks for X libraries - if X11 wasn't found then don't make following
|
|
|
|
|
dnl tests and compile without X11 support - otherwise, check if the following
|
|
|
|
|
dnl libraries are present (error if they are not)
|
2002-01-03 23:44:21 +01:00
|
|
|
dnl In CYGWIN library ordering has to be changed. Is this compatible to LINUX?
|
|
|
|
|
dnl XShmAttach is a struct in CYGWIN, not a function
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
if test ! "$no_x" = "yes" ; then
|
2003-07-23 21:36:39 +02:00
|
|
|
X_LIBS="$X_LIBS -lX11 -lXt"
|
|
|
|
|
AC_CHECK_LIB(Xext, XShmAttach,X_LIBS="$X_LIBS -lXext",AC_MSG_ERROR(Couldn't find Xext librairies), $X_LIBS $X_EXTRA_LIBS)
|
2002-01-03 23:44:21 +01:00
|
|
|
AC_CHECK_LIB(Xmu,main,X_LIBS="$X_LIBS -lXmu",AC_MSG_ERROR(Couldn't find Xmu librairies), $X_LIBS $X_EXTRA_LIBS)
|
2003-07-23 21:36:39 +02:00
|
|
|
AC_CHECK_LIB(Xaw,main,X_LIBS="$X_LIBS -lXaw",AC_MSG_ERROR(Couldn't find Xaw librairies),$X_LIBS $X_EXTRA_LIBS)
|
|
|
|
|
|
|
|
|
|
|
2003-07-27 22:44:57 +02:00
|
|
|
fi ;;
|
2001-11-25 19:11:44 +01:00
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
esac
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
dnl Check for a few typdefs:
|
|
|
|
|
AC_TYPE_PID_T
|
|
|
|
|
AC_TYPE_SIGNAL
|
|
|
|
|
|
|
|
|
|
dnl Check for a few libraries and headers:
|
|
|
|
|
|
|
|
|
|
dnl Look for ncurses first, then termcap
|
2003-07-23 21:36:39 +02:00
|
|
|
AC_SEARCH_LIBS(tputs,ncurses termcap,AC_DEFINE(HAVE_TERMCAP),
|
|
|
|
|
AC_MSG_ERROR(Found neither ncurses or termcap))
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
AC_HEADER_DIRENT
|
2001-02-11 01:47:21 +01:00
|
|
|
AC_CHECK_HEADERS(ctype.h unistd.h pwd.h fcntl.h string.h)
|
2000-04-27 22:03:57 +02:00
|
|
|
AC_HEADER_SYS_WAIT
|
|
|
|
|
AC_HEADER_STAT
|
|
|
|
|
|
|
|
|
|
dnl Check time and ressources headers and functions:
|
|
|
|
|
AC_HEADER_TIME
|
|
|
|
|
AC_STRUCT_TM
|
|
|
|
|
AC_STRUCT_TIMEZONE
|
|
|
|
|
AC_CHECK_FUNCS(localtime)
|
2002-01-03 23:44:21 +01:00
|
|
|
|
|
|
|
|
case $host_os in
|
|
|
|
|
*cygwin* )
|
|
|
|
|
AC_CHECK_FUNCS(ftime)
|
2003-07-27 22:44:57 +02:00
|
|
|
AC_DEFINE(HAVE__MEMAVL);;
|
2002-01-03 23:44:21 +01:00
|
|
|
* )
|
|
|
|
|
AC_CHECK_FUNCS(gettimeofday time ftime , break)
|
|
|
|
|
AC_CHECK_FUNCS(getrusage utimes, break)
|
2003-07-27 22:44:57 +02:00
|
|
|
AC_CHECK_FUNCS(getrlimit ulimit, break);;
|
2002-01-03 23:44:21 +01:00
|
|
|
esac
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
dnl Look for termios first (posix)
|
|
|
|
|
AC_CHECK_HEADERS(termios.h termio.h sgtty.h , break)
|
2002-01-03 23:44:21 +01:00
|
|
|
AC_CHECK_FUNCS(isatty tcgetattr tcsetattr)
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
dnl Check for a few functions:
|
|
|
|
|
AC_FUNC_VFORK
|
|
|
|
|
AC_CHECK_FUNCS(access bcopy qsort dup2 popen)
|
|
|
|
|
AC_CHECK_FUNCS(strchr index , break)
|
|
|
|
|
AC_CHECK_FUNCS(getcwd getwd , break)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AC_MSG_RESULT(Checking mathematical features of the system:)
|
|
|
|
|
dnl Look for math library:
|
|
|
|
|
AC_CHECK_LIB(m,sqrt)
|
|
|
|
|
AC_CHECK_HEADERS(float.h limits.h values.h)
|
|
|
|
|
|
|
|
|
|
dnl Check for a few mathematical functions:
|
|
|
|
|
AC_CHECK_FUNCS(erfc logb scalb scalbn asinh acosh atanh)
|
|
|
|
|
|
2001-04-16 11:58:25 +02:00
|
|
|
AC_MSG_RESULT(Checking for the presence of the Garbage Collector:)
|
|
|
|
|
dnl Check for the garbage collector:
|
2000-10-14 23:49:25 +02:00
|
|
|
AC_CHECK_LIB(gc,GC_malloc,AC_DEFINE(HAVE_LIBGC) LIBS="$LIBS -lgc")
|
|
|
|
|
|
2001-04-16 11:58:25 +02:00
|
|
|
dnl Check for the asprintf function:
|
2002-01-03 23:44:21 +01:00
|
|
|
AC_CHECK_FUNCS(asprintf,,AC_CHECK_LIB(iberty,asprintf,AC_DEFINE(HAVE_ASPRINTF) LIBS="$LIBS -liberty"))
|
2001-04-16 11:58:25 +02:00
|
|
|
|
2003-07-23 21:36:39 +02:00
|
|
|
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
|
2000-10-14 23:49:25 +02:00
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
# AC_CHECK_FUNC(getopt_long, getopt_long=true)
|
|
|
|
|
# AM_CONDITIONAL(HAVE_GETOPT_LONG, test "$getopt_long" = "true")
|
|
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
# Expand the prefix variable (this is really annoying!)
|
|
|
|
|
if eval "test x$prefix = xNONE"; then
|
|
|
|
|
dprefix=$ac_default_prefix
|
|
|
|
|
else
|
|
|
|
|
dprefix=$prefix
|
|
|
|
|
fi
|
|
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
AC_DEFINE_UNQUOTED(NGSPICEBINDIR, "`echo $dprefix/bin`" )
|
2001-01-21 18:24:23 +01:00
|
|
|
AC_DEFINE_UNQUOTED(NGSPICEDATADIR, "`echo $dprefix/share/ng-spice-rework`" )
|
2000-04-27 22:03:57 +02:00
|
|
|
AC_DEFINE_UNQUOTED(NGSPICEBUILDDATE, "`date`" )
|
|
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
dnl with the MS WINDOWS executable we suggest /spice_win/bin as *.exe-path
|
|
|
|
|
if test "$with_windows" = "yes"; then
|
|
|
|
|
dnl redefine the path for WINDOWS:
|
2003-07-27 22:44:57 +02:00
|
|
|
AC_MSG_RESULT(WINDOWS code enabled)
|
2002-01-03 23:44:21 +01:00
|
|
|
AC_DEFINE_UNQUOTED(NGSPICEBINDIR, "`echo /spice_win/bin`" )
|
|
|
|
|
AC_DEFINE_UNQUOTED(NGSPICEDATADIR, "`echo /spice_win/lib`" )
|
2003-07-27 22:44:57 +02:00
|
|
|
WINMAIN="winmain.o"
|
2002-01-03 23:44:21 +01:00
|
|
|
else
|
2003-07-27 22:44:57 +02:00
|
|
|
WINMAIN=""
|
2002-01-03 23:44:21 +01:00
|
|
|
fi
|
2003-07-27 22:44:57 +02:00
|
|
|
|
2002-01-03 23:44:21 +01:00
|
|
|
AC_SUBST(WINMAIN)
|
2000-04-27 22:03:57 +02:00
|
|
|
|
2003-07-27 22:44:57 +02:00
|
|
|
|
2000-04-27 22:03:57 +02:00
|
|
|
# Recapitulate settings:
|
|
|
|
|
AC_MSG_RESULT(Settings which were chosen:)
|
|
|
|
|
if test "$enable_sense2" = "yes"; then
|
|
|
|
|
AC_DEFINE(WANT_SENSE2)
|
|
|
|
|
AC_MSG_RESULT(Spice2 sensitivity analysis enabled)
|
|
|
|
|
fi
|
|
|
|
|
if test "$enable_nobypass" = "yes"; then
|
|
|
|
|
AC_DEFINE(NOBYPASS)
|
|
|
|
|
AC_MSG_RESULT(NOBYPASS option enabled)
|
|
|
|
|
fi
|
2003-08-12 00:32:15 +02:00
|
|
|
if test "$enable_capbypass" = "yes"; then
|
2003-08-11 22:59:48 +02:00
|
|
|
AC_DEFINE(CAPBYPASS)
|
|
|
|
|
AC_MSG_RESULT(CAPBYPASS option enabled)
|
|
|
|
|
fi
|
2003-08-12 00:32:15 +02:00
|
|
|
if test "$enable_capzerobypass" = "yes"; then
|
2003-08-11 22:59:48 +02:00
|
|
|
AC_DEFINE(CAPZEROBYPASS)
|
|
|
|
|
AC_MSG_RESULT(CAPZEROBYPASS option enabled)
|
|
|
|
|
fi
|
|
|
|
|
if test "$enable_nodelimiting" = "yes"; then
|
|
|
|
|
AC_DEFINE(NODELIMITING)
|
|
|
|
|
AC_MSG_RESULT(NODELIMITING option enabled)
|
|
|
|
|
fi
|
2000-04-27 22:03:57 +02:00
|
|
|
if test "$enable_predictor" = "yes"; then
|
|
|
|
|
AC_DEFINE(PREDICTOR)
|
|
|
|
|
AC_MSG_RESULT(PREDICTOR algorithm enabled)
|
|
|
|
|
fi
|
2003-08-11 22:59:48 +02:00
|
|
|
if test "$enable_newtrunc" = "yes"; then
|
|
|
|
|
AC_DEFINE(NEWTRUNC)
|
|
|
|
|
AC_MSG_RESULT(New truncation error calculation enabled)
|
|
|
|
|
fi
|
2001-01-24 18:15:31 +01:00
|
|
|
if test "$enable_intnoise" = "yes"; then
|
|
|
|
|
AC_DEFINE(INT_NOISE)
|
|
|
|
|
AC_MSG_RESULT(Noise integration enabled)
|
|
|
|
|
fi
|
2000-04-27 22:03:57 +02:00
|
|
|
if test "$enable_experimental" = "yes"; then
|
|
|
|
|
AC_DEFINE(EXPERIMENTAL_CODE)
|
|
|
|
|
AC_MSG_RESULT(EXPERIMENTAL_CODE enabled)
|
|
|
|
|
fi
|
2001-05-13 15:24:12 +02:00
|
|
|
|
2001-12-02 21:12:56 +01:00
|
|
|
if test "$enable_ftedebug" = "yes"; then
|
|
|
|
|
AC_DEFINE(FTEDEBUG)
|
|
|
|
|
AC_MSG_RESULT(WARNING: Frontend debug is enabled)
|
|
|
|
|
fi
|
2003-08-11 22:59:48 +02:00
|
|
|
if test "$enable_sensdebug" = "yes"; then
|
|
|
|
|
AC_DEFINE(SENSDEBUG)
|
|
|
|
|
AC_MSG_RESULT(WARNING: Sensitivity code debug is enabled)
|
|
|
|
|
fi
|
|
|
|
|
if test "$enable_stepdebug" = "yes"; then
|
|
|
|
|
AC_DEFINE(STEPDEBUG)
|
|
|
|
|
AC_MSG_RESULT(WARNING: STEPDEBUG debug is enabled)
|
|
|
|
|
fi
|
2001-05-13 15:24:12 +02:00
|
|
|
|
2001-05-09 20:54:48 +02:00
|
|
|
if test "$enable_ekv" = "yes"; then
|
|
|
|
|
AC_MSG_RESULT(Model EKV included)
|
2001-05-13 15:24:12 +02:00
|
|
|
AC_DEFINE(HAVE_EKV)
|
|
|
|
|
EKVDIR="ekv"
|
2003-08-11 22:59:48 +02:00
|
|
|
EKVLIB="spicelib/devices/ekv/libekv.a"
|
2001-05-13 15:24:12 +02:00
|
|
|
else
|
|
|
|
|
EKVDIR=""
|
|
|
|
|
EKVLIB=""
|
2001-05-09 20:54:48 +02:00
|
|
|
fi
|
2003-07-27 22:44:57 +02:00
|
|
|
|
2001-05-13 15:24:12 +02:00
|
|
|
AC_SUBST(EKVDIR)
|
|
|
|
|
AC_SUBST(EKVLIB)
|
|
|
|
|
|
2003-07-23 21:36:39 +02:00
|
|
|
dnl Add new code models to the build by pointing to them here.
|
|
|
|
|
if test "$enable_xspice" = "yes"; then
|
|
|
|
|
AC_MSG_RESULT(X-Spice features included)
|
|
|
|
|
AC_DEFINE(XSPICE)
|
|
|
|
|
XSPICEDIR="xspice"
|
|
|
|
|
XSPICELIB1="$XSPICEDIR/xspice.o \
|
|
|
|
|
$XSPICEDIR/mif/libmifxsp.a \
|
|
|
|
|
$XSPICEDIR/cm/libcmxsp.a"
|
|
|
|
|
XSPICELIB2="$XSPICEDIR/evt/libevtxsp.a \
|
|
|
|
|
$XSPICEDIR/enh/libenhxsp.a \
|
|
|
|
|
$XSPICEDIR/ipc/libipcxsp.a \
|
|
|
|
|
$XSPICEDIR/idn/libidnxsp.a \
|
|
|
|
|
-ldl"
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
XSPCIEDIR=""
|
|
|
|
|
XSPICELIB1=""
|
|
|
|
|
XSPICELIB2=""
|
|
|
|
|
fi
|
|
|
|
|
AC_SUBST(XSPICEDIR)
|
|
|
|
|
AC_SUBST(XSPICELIB1)
|
|
|
|
|
AC_SUBST(XSPICELIB2)
|
|
|
|
|
|
2003-08-11 22:59:48 +02:00
|
|
|
dnl Add CIDER enhacements to ngspice.
|
|
|
|
|
if test "$enable_cider" = "yes"; then
|
|
|
|
|
AC_MSG_RESULT(CIDER features enabled)
|
|
|
|
|
AC_DEFINE(CIDER)
|
|
|
|
|
CIDERDIR="ciderlib"
|
|
|
|
|
CIDERSIM=" $CIDERDIR/twod/libcidertwod.a \
|
|
|
|
|
$CIDERDIR/oned/libcideroned.a \
|
|
|
|
|
$CIDERDIR/input/libciderinput.a \
|
|
|
|
|
$CIDERDIR/support/libcidersuprt.a \"
|
|
|
|
|
|
|
|
|
|
NUMDEV=" spicelib/devices/nbjt/libnbjt.a \
|
|
|
|
|
spicelib/devices/nbjt2/libnbjt2.a \
|
|
|
|
|
spicelib/devices/numd/libnumd.a \
|
|
|
|
|
spicelib/devices/numd2/libnumd2.a \
|
|
|
|
|
spicelib/devices/numos/libnumos.a"
|
|
|
|
|
NUMDEVDIR=" nbjt \
|
|
|
|
|
nbjt2 \
|
|
|
|
|
numd \
|
|
|
|
|
numd2 \
|
|
|
|
|
numos"
|
|
|
|
|
|
|
|
|
|
CIDERSCRIPTS="devload devaxis ciderinit"
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
CIDERLIB=""
|
|
|
|
|
CIDERSIM=""
|
|
|
|
|
NUMDEV=""
|
|
|
|
|
NUMDEVDIR=""
|
|
|
|
|
CIDERSCRIPTS=""
|
|
|
|
|
fi
|
|
|
|
|
AC_SUBST(CIDERDIR)
|
|
|
|
|
AC_SUBST(CIDERSIM)
|
|
|
|
|
AC_SUBST(NUMDEV)
|
2003-08-12 00:32:15 +02:00
|
|
|
AC_SUBST(NUMDEVDIR)
|
|
|
|
|
AC_SUBST(CIDERSCRIPTS)
|
2003-08-11 22:59:48 +02:00
|
|
|
|
2003-07-23 21:36:39 +02:00
|
|
|
dnl Cluster option
|
|
|
|
|
if test "$enable_cluster" = "yes"; then
|
|
|
|
|
AC_MSG_RESULT(Cluster version is being compiled)
|
|
|
|
|
AC_DEFINE(CLUSTER)
|
|
|
|
|
LIBS="$LIBS -lpthread"
|
|
|
|
|
fi
|
2001-05-13 15:24:12 +02:00
|
|
|
|
|
|
|
|
dnl --with-readline : the user wants to use readline library
|
|
|
|
|
AC_ARG_WITH(readline,
|
|
|
|
|
[ --with-readline Use the readline package: SEE README],
|
|
|
|
|
AC_MSG_RESULT(Checking for readline library:)
|
|
|
|
|
dnl Check for the readline library:
|
|
|
|
|
AC_CHECK_LIB(readline,readline, AC_DEFINE(HAVE_GNUREADLINE) LIBS="$LIBS -lreadline")
|
|
|
|
|
)
|
2000-04-27 22:03:57 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
AC_OUTPUT( \
|
|
|
|
|
Makefile \
|
|
|
|
|
doc/Makefile \
|
|
|
|
|
man/Makefile \
|
|
|
|
|
man/man1/Makefile \
|
|
|
|
|
src/Makefile \
|
2000-07-24 23:06:46 +02:00
|
|
|
src/spicelib/Makefile \
|
|
|
|
|
src/spicelib/analysis/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/Makefile \
|
|
|
|
|
src/spicelib/devices/asrc/Makefile \
|
|
|
|
|
src/spicelib/devices/bjt/Makefile \
|
2001-04-20 09:31:30 +02:00
|
|
|
src/spicelib/devices/bjt2/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/bsim1/Makefile \
|
|
|
|
|
src/spicelib/devices/bsim2/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/spicelib/devices/bsim3v0/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/bsim3v1/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/spicelib/devices/bsim3v1a/Makefile \
|
|
|
|
|
src/spicelib/devices/bsim3v1s/Makefile \
|
|
|
|
|
src/spicelib/devices/bsim3v2/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/bsim3/Makefile \
|
|
|
|
|
src/spicelib/devices/bsim4/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/spicelib/devices/bsim3soi/Makefile \
|
2000-11-21 08:38:51 +01:00
|
|
|
src/spicelib/devices/bsim3soi_pd/Makefile \
|
2000-12-08 17:58:47 +01:00
|
|
|
src/spicelib/devices/bsim3soi_fd/Makefile \
|
2001-01-21 18:24:23 +01:00
|
|
|
src/spicelib/devices/bsim3soi_dd/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/cap/Makefile \
|
|
|
|
|
src/spicelib/devices/cccs/Makefile \
|
|
|
|
|
src/spicelib/devices/ccvs/Makefile \
|
|
|
|
|
src/spicelib/devices/csw/Makefile \
|
2003-07-23 21:36:39 +02:00
|
|
|
src/spicelib/devices/cpl/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/dio/Makefile \
|
2003-08-06 15:54:38 +02:00
|
|
|
dnl src/spicelib/devices/ekv/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/ind/Makefile \
|
|
|
|
|
src/spicelib/devices/isrc/Makefile \
|
2001-04-25 19:58:59 +02:00
|
|
|
src/spicelib/devices/hfet1/Makefile \
|
|
|
|
|
src/spicelib/devices/hfet2/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/spicelib/devices/hisim/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/jfet/Makefile \
|
|
|
|
|
src/spicelib/devices/jfet2/Makefile \
|
|
|
|
|
src/spicelib/devices/ltra/Makefile \
|
|
|
|
|
src/spicelib/devices/mes/Makefile \
|
2001-04-25 19:58:59 +02:00
|
|
|
src/spicelib/devices/mesa/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/mos1/Makefile \
|
|
|
|
|
src/spicelib/devices/mos2/Makefile \
|
|
|
|
|
src/spicelib/devices/mos3/Makefile \
|
|
|
|
|
src/spicelib/devices/mos6/Makefile \
|
2001-04-20 09:31:30 +02:00
|
|
|
src/spicelib/devices/mos9/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/res/Makefile \
|
2001-05-02 22:33:10 +02:00
|
|
|
src/spicelib/devices/soi3/Makefile \
|
2000-07-25 08:03:06 +02:00
|
|
|
src/spicelib/devices/sw/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/tra/Makefile \
|
2003-07-23 21:36:39 +02:00
|
|
|
src/spicelib/devices/txl/Makefile \
|
2000-07-23 11:17:22 +02:00
|
|
|
src/spicelib/devices/urc/Makefile \
|
|
|
|
|
src/spicelib/devices/vccs/Makefile \
|
|
|
|
|
src/spicelib/devices/vcvs/Makefile \
|
|
|
|
|
src/spicelib/devices/vsrc/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/spicelib/devices/nbjt/Makefile \
|
|
|
|
|
src/spicelib/devices/nbjt2/Makefile \
|
|
|
|
|
src/spicelib/devices/numd/Makefile \
|
|
|
|
|
src/spicelib/devices/numd2/Makefile \
|
|
|
|
|
src/spicelib/devices/numos/Makefile \
|
|
|
|
|
src/spicelib/parser/Makefile \
|
|
|
|
|
src/ciderlib/Makefile \
|
|
|
|
|
src/ciderlib/input/Makefile \
|
|
|
|
|
src/ciderlib/support/Makefile \
|
|
|
|
|
src/ciderlib/oned/Makefile \
|
|
|
|
|
src/ciderlib/twod/Makefile \
|
2000-04-27 22:03:57 +02:00
|
|
|
src/frontend/Makefile \
|
2000-07-20 22:33:26 +02:00
|
|
|
src/frontend/help/Makefile \
|
2000-07-21 20:25:47 +02:00
|
|
|
src/frontend/parser/Makefile \
|
|
|
|
|
src/frontend/plotting/Makefile \
|
2002-01-03 23:44:21 +01:00
|
|
|
src/frontend/wdisp/Makefile \
|
2000-04-27 22:03:57 +02:00
|
|
|
src/include/Makefile \
|
|
|
|
|
src/maths/Makefile \
|
|
|
|
|
src/maths/cmaths/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/maths/misc/Makefile \
|
2000-04-27 22:03:57 +02:00
|
|
|
src/maths/ni/Makefile \
|
2000-06-16 23:12:45 +02:00
|
|
|
src/maths/deriv/Makefile \
|
2000-05-13 13:02:40 +02:00
|
|
|
src/maths/poly/Makefile \
|
2000-04-27 22:03:57 +02:00
|
|
|
src/maths/sparse/Makefile \
|
2003-08-11 22:59:48 +02:00
|
|
|
src/maths/sparse/tests/Makefile \
|
2000-04-27 22:03:57 +02:00
|
|
|
src/misc/Makefile \
|
2003-07-23 21:36:39 +02:00
|
|
|
src/xspice/Makefile \
|
|
|
|
|
src/xspice/cm/Makefile \
|
2003-08-05 19:20:17 +02:00
|
|
|
src/xspice/icm/makedefs \
|
2003-07-23 21:36:39 +02:00
|
|
|
src/xspice/mif/Makefile \
|
|
|
|
|
src/xspice/evt/Makefile \
|
|
|
|
|
src/xspice/enh/Makefile \
|
|
|
|
|
src/xspice/ipc/Makefile \
|
|
|
|
|
src/xspice/idn/Makefile \
|
2000-04-27 22:03:57 +02:00
|
|
|
tests/Makefile \
|
2000-06-05 23:24:21 +02:00
|
|
|
tests/filters/Makefile \
|
2000-06-11 12:32:50 +02:00
|
|
|
tests/polezero/Makefile \
|
|
|
|
|
tests/resistance/Makefile \
|
2000-12-08 17:58:47 +01:00
|
|
|
tests/bsim3soipd/Makefile \
|
2001-01-21 18:24:23 +01:00
|
|
|
tests/bsim3soifd/Makefile \
|
2001-01-24 18:15:31 +01:00
|
|
|
tests/bsim3soidd/Makefile \
|
2003-07-23 21:36:39 +02:00
|
|
|
tests/bsim4/Makefile \
|
|
|
|
|
tests/mesa/Makefile \
|
|
|
|
|
tests/TransImpedanceAmp/Makefile
|
2000-04-27 22:03:57 +02:00
|
|
|
)
|