summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac100
1 files changed, 100 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..50973e5
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,100 @@
+AC_PREREQ(2.59)
+AC_INIT([libslv2],[0.0.1],[drobilla@connect.carleton.ca])
+AC_CONFIG_SRCDIR([src/plugin.c])
+AC_CONFIG_SRCDIR([slv2/plugin.h])
+AC_CONFIG_SRCDIR([include/lv2.h])
+AC_CONFIG_SRCDIR([examples/plugins/Amp-swh.lv2/amp.c])
+AC_CONFIG_SRCDIR([examples/hosts/test_host.c])
+AC_CONFIG_HEADER([config.h])
+AM_INIT_AUTOMAKE
+
+# Checks for compiler
+AC_PROG_CC
+
+# Check pedantic other stuff autoscan says we should :)
+AC_C_CONST
+AC_C_INLINE
+AC_HEADER_STDBOOL
+AC_TYPE_SIZE_T
+
+# Library building stuff
+AC_PROG_LIBTOOL
+
+# Check for debugging flag
+debug="no"
+AC_ARG_ENABLE(debug,
+ [AS_HELP_STRING(--enable-debug, [Enable debugging (false)])],
+ [debug="$enableval"])
+if test "$debug" = "yes"; then
+ CFLAGS="-O0 -g -DDEBUG"
+ CXXFLAGS="$CFLAGS"
+else
+ CFLAGS="$CFLAGS -DNDEBUG"
+ CXXFLAGS="$CXXFLAGS -DNDEBUG"
+fi
+
+# Check for strict flag
+strict="no"
+AC_ARG_ENABLE(strict,
+ [AS_HELP_STRING(--enable-strict, [Enable strict compiler warnings and errors (false)])],
+ [strict="$enableval"])
+if test "$strict" = "yes"; then
+ CFLAGS="$CFLAGS -std=c99 -pedantic -Wall -Wconversion -Winit-self"
+ CXXFLAGS="$CXXFLAGS -ansi -pedantic -Wall -Wconversion -Winit-self -Woverloaded-virtual -Wsign-promo"
+fi
+
+# Bolt on a few specific flags to CXXFLAGS that should always be used
+#CXXFLAGS="$CXXFLAGS -pipe -Wall -fmessage-length=139 -fdiagnostics-show-location=every-line"
+#CFLAGS="$CFLAGS -pipe -Wall -fmessage-length=139 -fdiagnostics-show-location=every-line"
+
+# Check plugin install directory
+AC_MSG_CHECKING([where to install LV2 plugins])
+AC_ARG_WITH(lv2-dir,
+ AS_HELP_STRING([--with-lv2-dir=DIR],
+ [directory that LV2 plugins should be installed in ($libdir/lv2)]),
+ [lv2dir=$withval], [lv2dir=$libdir/lv2])
+AC_MSG_RESULT($lv2dir)
+AC_SUBST(lv2dir)
+
+# Check for RASQAL
+PKG_CHECK_MODULES(RASQAL, rasqal >= 0.20, build_rasqal="yes", build_rasqal="no")
+AC_SUBST(JACK_CFLAGS)
+AC_SUBST(JACK_LIBS)
+
+# Check for JACK
+build_jack="yes"
+AC_ARG_ENABLE(jack,
+ [AS_HELP_STRING(--with-jack, [Build JACK clients (true)])],
+ [ if test x$with_jack = xno ; then build_jack=no ; fi ])
+if test "$build_jack" = "yes"; then
+ PKG_CHECK_MODULES(JACK, jack >= 0.99.0, build_jack="yes", build_jack="no")
+fi
+if test "$build_jack" = "yes"; then
+ AC_DEFINE(HAVE_JACK, 1, [Has JACK])
+ AC_SUBST(JACK_CFLAGS)
+ AC_SUBST(JACK_LIBS)
+else
+ AC_MSG_WARN([JACK not found, JACK clients will not be built.])
+fi
+AM_CONDITIONAL(WITH_JACK, [test "$build_jack" = "yes"])
+
+
+# Write output files
+AC_CONFIG_FILES([Makefile])
+AC_CONFIG_FILES([src/Makefile])
+AC_CONFIG_FILES([slv2/Makefile])
+AC_CONFIG_FILES([include/Makefile])
+AC_CONFIG_FILES([examples/Makefile])
+AC_CONFIG_FILES([examples/plugins/Makefile])
+AC_CONFIG_FILES([examples/hosts/Makefile])
+AC_CONFIG_FILES([libslv2.pc])
+AC_CONFIG_FILES([doc/Makefile])
+AC_CONFIG_FILES([doc/reference.doxygen])
+AC_OUTPUT
+
+
+# Display summary message
+AC_MSG_RESULT([])
+AC_MSG_RESULT([Building JACK client: $build_jack])
+AC_MSG_RESULT([])
+