diff --git a/configure.ac b/configure.ac index 7c4169939..afee25296 100644 --- a/configure.ac +++ b/configure.ac @@ -1156,13 +1156,49 @@ if test "x$enable_xspice" = xyes; then AC_SUBST([VIS_CFLAGS]) else XSPICEINIT="*" + if test "x$enable_osdi" = xyes; then\ + case $host_os in + *mingw* | *msys* | *cygwin* | *solaris* ) + XSPICEDLLIBS="" + ;; + * ) + XSPICEDLLIBS="-ldl" + ;; + esac + fi fi + AC_SUBST([XSPICEINIT]) AC_SUBST([XSPICEDLLIBS]) AM_CONDITIONAL([XSPICE_WANTED], [test "x$enable_xspice" = xyes]) + + if test "x$enable_osdi" = xyes; then + AC_DEFUN([AX_CHECK_COMPILE_FLAG], + [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF + AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl + AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ + ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS + _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" + AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], + [AS_VAR_SET(CACHEVAR,[yes])], + [AS_VAR_SET(CACHEVAR,[no])]) + _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) + AS_VAR_IF(CACHEVAR,yes, + [m4_default([$2], :)], + [m4_default([$3], :)]) + AS_VAR_POPDEF([CACHEVAR])dnl + ])dnl AX_CHECK_COMPILE_FLAGS + + AX_CHECK_COMPILE_FLAG([-std=c11], [ + CFLAGS="$CFLAGS -std=c11" + LDLAGS="$LDLAGS -std=c11" + ], [ + echo "C compiler cannot compile C11 code" + exit -1 + ]) AC_MSG_RESULT([OSDI features included]) AC_DEFINE([OSDI], [1], [The OSDI enhancements]) fi diff --git a/src/Makefile.am b/src/Makefile.am index a9bb994d8..26f397966 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -165,9 +165,9 @@ ngspice_LDADD += \ xspice/evt/libevtxsp.la \ xspice/enh/libenhxsp.la \ xspice/ipc/libipcxsp.la \ - xspice/idn/libidnxsp.la \ - @XSPICEDLLIBS@ + xspice/idn/libidnxsp.la endif +ngspice_LDADD += @XSPICEDLLIBS@ ngspice_LDADD += \ frontend/parser/libparser.la \ @@ -452,9 +452,9 @@ libspice_la_LIBADD += \ xspice/evt/libevtxsp.la \ xspice/enh/libenhxsp.la \ xspice/ipc/libipcxsp.la \ - xspice/idn/libidnxsp.la \ - @XSPICEDLLIBS@ + xspice/idn/libidnxsp.la endif +libspice_la_LIBADD += @XSPICEDLLIBS@ libspice_la_LIBADD += \ frontend/parser/libparser.la \ @@ -576,9 +576,9 @@ libngspice_la_LIBADD += \ xspice/evt/libevtxsp.la \ xspice/enh/libenhxsp.la \ xspice/ipc/libipcxsp.la \ - xspice/idn/libidnxsp.la \ - @XSPICEDLLIBS@ + xspice/idn/libidnxsp.la endif +libngspice_la_LIBADD += @XSPICEDLLIBS@ libngspice_la_LIBADD += \ frontend/parser/libparser.la \