59 lines
1.6 KiB
Diff
59 lines
1.6 KiB
Diff
diff --git a/configure.ac b/configure.ac
|
|
index aa127b68..fc034f28 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -45,6 +45,7 @@ AC_PROG_CXX
|
|
AC_CHECK_TOOL(AR, ar)
|
|
AC_PROG_RANLIB
|
|
AC_PROG_LIBTOOL
|
|
+
|
|
SED_SUBST=["\
|
|
-e 's|@CXX@|${CXX}|g' \
|
|
-e 's|@CC@|${CC}|g' \
|
|
@@ -420,6 +421,13 @@ test -e src/include/colm || ln -s .. src/include/colm
|
|
echo "#define VERSION \"$VERSION\"" > src/version.h
|
|
echo "#define PUBDATE \"$PUBDATE\"" >> src/version.h
|
|
|
|
+if test "x$enable_static" = "xyes"; then
|
|
+ AC_DEFINE([LINK_STATIC], [1], [Link static lib when invoking C compile and link])
|
|
+fi
|
|
+
|
|
+if test "x$enable_shared" = "xyes"; then
|
|
+ AC_DEFINE([LINK_SHARED], [1], [Link shared lib when invoking C compile and link])
|
|
+fi
|
|
|
|
dnl
|
|
dnl Wrap up.
|
|
diff --git a/src/main.cc b/src/main.cc
|
|
index 301fae91..8ca395f0 100644
|
|
--- a/src/main.cc
|
|
+++ b/src/main.cc
|
|
@@ -485,7 +485,14 @@ void compileOutput( const char *argv0, const bool inSource, char *srcLocation )
|
|
" -I%s/../aapl"
|
|
" -I%s/include"
|
|
" -L%s"
|
|
+#if defined(LINK_STATIC)
|
|
" %s/libcolm.a",
|
|
+#elif defined(LINK_SHARED)
|
|
+ " %s/libcolm.so",
|
|
+#else
|
|
+# error "must enabled at least one of shared or static libs"
|
|
+#endif
|
|
+
|
|
binaryFn, intermedFn, srcLocation,
|
|
srcLocation, location, location );
|
|
}
|
|
diff --git a/src/libfsm/codegen.cc b/src/libfsm/codegen.cc
|
|
index 21edb5ac..1150384e 100644
|
|
--- a/src/libfsm/codegen.cc
|
|
+++ b/src/libfsm/codegen.cc
|
|
@@ -30,6 +30,8 @@
|
|
#include <assert.h>
|
|
#include <iomanip>
|
|
|
|
+// Convenience: for checking for the presence of the libfsm.
|
|
+extern "C" void libfsm_present() {}
|
|
|
|
using std::ostream;
|
|
using std::ostringstream;
|