dnl Process this file with autoconf to produce a configure script. AC_INIT(netlist.h) AC_CONFIG_HEADER(config.h) dnl Checks for programs. AC_PROG_CC AC_PROG_CXX AC_CHECK_TOOL(STRIP, strip, true) AC_CHECK_PROGS(XGPERF,gperf,none) if test "$XGPERF" = "none" then echo "*** Error: No suitable gperf found. ***" echo " Please install the 'gperf' package." exit 1 fi AC_LANG_CPLUSPLUS AC_CHECK_HEADERS(getopt.h iosfwd sys/wait.h) AC_MSG_CHECKING(for sys/times) AC_TRY_LINK( #include #include ,{clock_t a = times(0)/sysconf(_SC_CLK_TCK);}, do_times=yes AC_DEFINE(HAVE_TIMES,1), do_times=no ) AC_MSG_RESULT($do_times) AC_CHECK_HEADER(ipal.h, HAVE_IPAL=yes, HAVE_IPAL=) AC_ARG_WITH(ipal,enable PAL target, if test "$with_ipal" = no; then echo Disabling ipal support HAVE_IPAL= fi ) AC_SUBST(HAVE_IPAL) # -- # Look for a dl library to use. First look for the standard dlopen # functions, and failing that look for the HP specific shl_load function. AC_CHECK_HEADERS(dlfcn.h dl.h, break) DLLIB='' AC_CHECK_LIB(dl,dlopen,[DLLIB=-ldl]) if test -z "$DLLIB" ; then AC_CHECK_LIB(dld,shl_load,[DLLIB=-ldld]) fi AC_SUBST(DLLIB) AC_PROG_INSTALL AC_LANG_C AC_CANONICAL_HOST # $host ####################### ## test for underscores. The vpi module loader in vvm needs to know this ## in order to know the name of the start symbol for the .vpi module. ####################### AC_CYGWIN AC_EXEEXT AC_MINGW32 WIN32=no AC_MSG_CHECKING("Checking for windows") if test "$CYGWIN" = "yes" -o "$MINGW32" = "yes" then WIN32=yes fi AC_SUBST(WIN32) AC_MSG_RESULT($WIN32) AC_SUBST(EXEEXT) AC_MSG_CHECKING("for leading and/or trailing underscores") cat << EOF > underscore.c void underscore(void){} EOF $CC -shared -c underscore.c > /dev/null 2>&1 CC_LEADING_UNDERSCORE=no CC_TRAILING_UNDERSCORE=no output=`nm underscore.o|grep _underscore 2>&1` if test ! -z "$output" -a -z "$CYGWIN" -a -z "$MINGW32"; then CC_LEADING_UNDERSCORE=yes AC_DEFINE(NEED_LU) fi output=`nm underscore.o|grep underscore_ 2>&1` if test ! -z "$output"; then CC_TRAILING_UNDERSCORE=yes AC_DEFINE(NEED_TU) fi if test "$CC_LEADING_UNDERSCORE" = yes; then AC_DEFINE(WLU) fi if test "$CC_TRAILING_UNDERSCORE" = yes; then AC_DEFINE(WTU) fi rm underscore.c underscore.o AC_MSG_RESULT("$CC_LEADING_UNDERSCORE $CC_TRAILING_UNDERSCORE") ####################### ## end of test for underscores ####################### # The -fPIC flag is used to tell the compiler to make position # independent code. It is needed when making shared objects. AC_MSG_CHECKING("for flag to make position independent code") PICFLAG=-fPIC case "${host}" in *-*-cygwin*) PICFLAG= ;; *-*-hpux*) PICFLAG=+z ;; esac AC_SUBST(PICFLAG) AC_MSG_RESULT($PICFLAG) # mingw needs to link with libiberty.a AC_MSG_CHECKING("for extra libs needed") EXTRALIBS= case "${host}" in *-*-cygwin*) if test $ac_cv_mingw32 = yes; then EXTRALIBS="-liberty" fi ;; esac AC_SUBST(EXTRALIBS) AC_MSG_RESULT($EXTRALIBS) # The -rdynamic flag is used by iverilog when compiling the target, # to know how to export symbols of the main program to loadable modules # that are brought in by -ldl AC_MSG_CHECKING("for -rdynamic compiler flag") rdynamic=-rdynamic case "${host}" in *-*-netbsd*) rdynamic="-Wl,--export-dynamic" ;; *-*-solaris*) rdynamic="" ;; *-*-cygwin*) rdynamic="" ;; *-*-hpux*) rdynamic="-E" ;; esac AC_SUBST(rdynamic) AC_MSG_RESULT($rdynamic) AC_MSG_CHECKING("for shared library link flag") shared=-shared case "${host}" in *-*-cygwin*) shared="-mdll -Wl,--enable-auto-image-base" if test $ac_cv_mingw32 = yes; then shared="-shared -Wl,--enable-auto-image-base" fi ;; *-*-hpux*) shared="-b" ;; esac AC_SUBST(shared) AC_MSG_RESULT($shared) AC_CONFIG_SUBDIRS(vpip vvp tgt-vvp) AC_OUTPUT(Makefile vpi/Makefile ivlpp/Makefile vvm/Makefile driver/Makefile tgt-null/Makefile tgt-stub/Makefile tgt-verilog/Makefile tgt-pal/Makefile)