summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-07-24 06:48:02 +0000
committerDavid Robillard <d@drobilla.net>2007-07-24 06:48:02 +0000
commitcf1c161a0209cdce869a3e8c3b48b1d53c1bab00 (patch)
treef56c68b22bb013127ed5bc02501ee124ae46d873
parentdb1861e76aa1a42789c78f37f110cc81c0339a2d (diff)
downloadingen-cf1c161a0209cdce869a3e8c3b48b1d53c1bab00.tar.gz
ingen-cf1c161a0209cdce869a3e8c3b48b1d53c1bab00.tar.bz2
ingen-cf1c161a0209cdce869a3e8c3b48b1d53c1bab00.zip
Removed recursive autohell, except for SLv2.
Always build against local copies, hopefully fixing broken compilation against outdated system versions. git-svn-id: http://svn.drobilla.net/lad/ingen@610 a436a847-0d15-0410-975c-d299462d15a1
-rwxr-xr-xautogen.sh9
-rw-r--r--configure.ac385
-rw-r--r--src/libs/client/Makefile.am16
-rw-r--r--src/libs/client/PluginModel.h2
-rw-r--r--src/libs/engine/DSSINode.h2
-rw-r--r--src/libs/engine/Engine.cpp16
-rw-r--r--src/libs/engine/JackAudioDriver.cpp11
-rw-r--r--src/libs/engine/JackMidiDriver.cpp8
-rw-r--r--src/libs/engine/LashDriver.cpp8
-rw-r--r--src/libs/engine/Makefile.am22
-rw-r--r--src/libs/engine/OSCDriver.h83
-rw-r--r--src/libs/engine/OmInProcess.cpp4
-rw-r--r--src/libs/engine/events.h4
-rw-r--r--src/libs/engine/events/LashRestoreDoneEvent.h55
-rw-r--r--src/libs/engine/tests/Makefile.am4
-rw-r--r--src/libs/gui/App.cpp6
-rw-r--r--src/libs/gui/ConnectWindow.cpp2
-rw-r--r--src/libs/gui/Makefile.am13
-rw-r--r--src/libs/module/Makefile.am2
-rw-r--r--src/libs/serialisation/Makefile.am4
-rw-r--r--src/progs/ingen/Makefile.am5
21 files changed, 151 insertions, 510 deletions
diff --git a/autogen.sh b/autogen.sh
deleted file mode 100755
index a232b237..00000000
--- a/autogen.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-echo 'Generating necessary files...'
-libtoolize --copy --force
-aclocal
-autoheader -Wall
-automake --gnu --add-missing
-autoconf
-
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 972117aa..00000000
--- a/configure.ac
+++ /dev/null
@@ -1,385 +0,0 @@
-AC_PREREQ(2.59)
-AC_INIT([ingen],[0.4.0pre],[dave@drobilla.net])
-AC_CONFIG_SRCDIR([src/common/interface/EngineInterface.h])
-AC_CONFIG_SRCDIR([src/common/lv2ext/lv2-miditype.h])
-AC_CONFIG_SRCDIR([src/libs/module/Module.cpp])
-AC_CONFIG_SRCDIR([src/libs/engine/JackAudioDriver.cpp])
-AC_CONFIG_SRCDIR([src/libs/engine/tests/node_tree_test.cpp])
-AC_CONFIG_SRCDIR([src/libs/serialisation/Loader.cpp])
-AC_CONFIG_SRCDIR([src/libs/client/OSCController.cpp])
-AC_CONFIG_SRCDIR([src/libs/gui/App.cpp])
-AC_CONFIG_SRCDIR([src/progs/ingen/main.cpp])
-AC_CONFIG_HEADER([config.h])
-AM_INIT_AUTOMAKE
-
-
-##########################################################################
-## Global Checks
-##########################################################################
-
-# Checks for compilers
-AC_PROG_CXX
-AC_PROG_LIBTOOL
-
-# Check random other stuff
-AC_C_CONST
-AC_C_INLINE
-AC_FUNC_MALLOC
-AC_HEADER_STDC
-AC_HEADER_STDBOOL
-AC_TYPE_SIZE_T
-AC_TYPE_SIGNAL
-AC_FUNC_ERROR_AT_LINE
-AC_HEADER_DIRENT
-
-# Check for liblo
-PKG_CHECK_MODULES(LOSC, liblo >= 0.22)
-
-# Check for pthreads
-AC_CHECK_LIB(pthread, pthread_create, [],
- AC_MSG_ERROR([*** Ingen requires POSIX threads support]))
-AC_CHECK_HEADER([pthread.h])
-
-PKG_CHECK_MODULES(RAUL, raul >= 0.0.0)
-
-# Check for LASH
-build_lash="no"
-AC_ARG_ENABLE(lash,
- [AS_HELP_STRING(--enable-lash, [Enable LASH session management support (no)])],
- [ if test x$enable_lash = xno ; then build_lash=no ; fi ])
-if test "$build_lash" = "yes"; then
- PKG_CHECK_MODULES(LASH, lash-1.0 >= 0.5.0, build_lash="yes", build_lash="no")
-fi
-if test "$build_lash" = "yes"; then
- AC_DEFINE(HAVE_LASH, 1, [Has lash.h])
-else
- AC_MSG_WARN([LASH not found, session support will not be built.])
-fi
-AC_MSG_WARN([NOTE: LASH support is not available at this time])
-
-AM_CONDITIONAL(WITH_LASH, [test "$build_lash" = "yes"])
-
-
-# Debug stuff
-
-
-debug="no"
-debug_symbols="no"
-assertions="no"
-
-AC_ARG_ENABLE(debug,
- [AS_HELP_STRING(--enable-debug, [Enable debugging symbols and assertions (no)])],
- [debug="$enableval"])
-if test "$debug" = "yes"; then
- debug_symbols="yes"
- debug_assertions="yes"
-fi
-
-AC_ARG_ENABLE(debug_symbols,
- [AS_HELP_STRING(--enable-debug-symbols, [Enable debugging symbols - overrides CXXFLAGS (no)])],
- [debug_symbols="$enableval"])
-
-AC_ARG_ENABLE(debug_asertions,
- [AS_HELP_STRING(--enable-debug-assertions, [Enable debugging assertions (no)])],
- [assertions="$enableval"])
-
-if test "$debug_symbols" = "yes"; then
- CFLAGS="-O0 -g"
- CXXFLAGS="$CFLAGS"
-fi
-
-if test "$debug_assertions" = "yes"; then
- CFLAGS="$CFLAGS -DDEBUG"
- CXXFLAGS="$CXXFLAGS -DDEBUG"
-else
- CFLAGS="$CFLAGS -DNDEBUG"
- CXXFLAGS="$CXXFLAGS -DNDEBUG"
-fi
-
-# Boost shared_ptr debugging
-pointer_debug="no"
-AC_ARG_ENABLE(pointer_debug,
- [AS_HELP_STRING(--enable-pointer-debug, [Enable smart pointer debugging (no)])],
- [pointer_debug="$enableval"])
-if test "$pointer_debug" = "yes"; then
- CFLAGS+=" -DBOOST_SP_ENABLE_DEBUG_HOOKS"
- CXXFLAGS+=" -DBOOST_SP_ENABLE_DEBUG_HOOKS"
-fi
-
-# Use strict flags?
-strict="no"
-AC_ARG_ENABLE(strict,
- [AS_HELP_STRING(--enable-strict, [Enable strict compiler warnings and errors (no)])],
- [strict="$enableval"])
-if test "$strict" = "yes"; then
- # Stupid Gtkmm won't build with -pedantic
- CFLAGS="$CFLAGS -std=c99 -Wall -Wextra -Wno-unused-parameter -Wconversion -Winit-self"
- CXXFLAGS="$CXXFLAGS -ansi -Wall -Wextra -Wno-unused-parameter -Wconversion -Winit-self -Woverloaded-virtual -Wsign-promo"
-fi
-
-# Bolt on a few specific flags to CFLAGS that should always be used
-CXXFLAGS="$CXXFLAGS -pipe -fmessage-length=999"
-CFLAGS="$CFLAGS -pipe -fmessage-length=999"
-
-
-
-##########################################################################
-## ENGINE (Universal engine options)
-##########################################################################
-
-# Build support for running as an in-process jack client
-build_in_process_engine="no"
-AC_ARG_ENABLE([in-process-engine],
- AS_HELP_STRING(--enable-in-process-engine, Build engine as an in-process Jack client (no)),
- [ if test x$enable_in_process_engine = xyes ; then build_in_process_engine=yes ; fi ])
-
-# Jack MIDI support
-build_jack_midi="yes"
-AC_ARG_ENABLE(jack-midi,
- [AS_HELP_STRING(--enable-jack-midi, [Enable Jack MIDI support (yes)])],
- [ if test x$enable_jack_midi = xyes ; then build_jack_midi=yes ; fi ])
-
-# LV2 support
-build_lv2="yes"
-AC_ARG_ENABLE(lv2,
- [AS_HELP_STRING(--enable-lv2, [Enable LV2 plugin support through libslv2 (yes) - Requires: libslv2])],
- [ if test x$enable_lv2 = xno ; then build_lv2=no ; fi ])
-
-# DSSI support
-build_dssi="yes"
-AC_ARG_ENABLE(dssi,
- [AS_HELP_STRING(--enable-dssi, [Enable DSSI plugin support (yes) - Requires: alsa])],
- [ if test x$enable_dssi = xno ; then build_dssi=no ; fi ])
-
-# LADSPA support
-build_ladspa="yes"
-AC_ARG_ENABLE(ladspa,
- [AS_HELP_STRING(--enable-ladspa, [Enable LADSPA plugin support (yes)])],
- [ if test x$enable_ladspa = xno ; then build_ladspa=no ; fi ])
-
-
-if test "$build_in_process_engine" = "yes"; then
- AC_DEFINE(BUILD_IN_PROCESS_ENGINE, 1, [Whether to support running as a Jack in-process client])
-fi
-
-
-
-##########################################################################
-## COMPONENTS (options for which components to build)
-##########################################################################
-
-# Build unit tests?
-build_unit_tests="no"
-AC_ARG_ENABLE(unit-tests,
- [AS_HELP_STRING(--enable-unit-tests, [Build unit tests (no) - Developers only])],
- [build_unit_tests="$enableval"])
-
-# Stand-alone engine (OSC controlled)
-build_server="yes"
-AC_ARG_ENABLE([server],
- AS_HELP_STRING(--enable-server, Build OSC controlled stand-alone engine (yes)),
- [ if test x$enable_server = xno ; then build_server=no ; fi ])
-
-# Command-line clients
-build_console_clients="yes"
-AC_ARG_ENABLE([console-clients],
- AS_HELP_STRING(--enable-console-clients, [Build command-line clients (yes) - Requires: libxml2, raptor, libsigc++]),
- [ if test x$enable_console_clients = xno ; then build_console_clients=no ; fi ])
-
-# Gtk client (Ingenuity)
-build_gtk_client="yes"
-AC_ARG_ENABLE([gtk-client],
- AS_HELP_STRING(--enable-gtk-client, [Build GTK client, Ingenuity (true)]),
- [ if test x$enable_gtk_client = xno ; then build_gtk_client=no ; fi ])
-
-
-##########################################################################
-## SERVER
-##########################################################################
-
-if test "$build_server" = "yes"; then
- # Check for standard lib stuff
- AC_CHECK_FUNCS([posix_memalign, fesetround])
- AC_CHECK_HEADERS([float.h stddef.h fenv.h])
-
- # Check random other stuff
- AC_FUNC_CLOSEDIR_VOID
-
- # Check for Jack
- # (102.20 = MIDI API changes)
- PKG_CHECK_MODULES(JACK, jack >= 0.103.0)
-
- # Check for Jack MIDI
- if test "$build_jack_midi" = "yes"; then
- AC_CHECK_HEADER([jack/midiport.h], [build_jack_midi="yes"],
- [AC_MSG_WARN([You don't seem to build jack/midiport.h, Jack MIDI support will not be built])])
- fi
- if test "$build_jack_midi" = "yes"; then
- AC_DEFINE(HAVE_JACK_MIDI, 1, [Has Jack MIDI])
- AC_JACK_MIDI_NFRAMES_CHECK()
- if test "$jackmidi_nframes" = "yes"; then
- AC_DEFINE([JACK_MIDI_NEEDS_NFRAMES], 1, [Defined if we JACK MIDI functions need nframes parameter.])
- fi
- fi
-
- # Check for LADSPA
- if test "$build_ladspa" = "yes"; then
- build_ladspa="no"
- AC_CHECK_HEADER([ladspa.h], [build_ladspa="yes"],
- [AC_MSG_WARN([You don't seem to build ladspa.h, Ingen will not be very useful!])])
- fi
- if test "$build_ladspa" = "yes"; then
- AC_DEFINE(HAVE_LADSPA, 1, [Has ladspa.h])
- fi
-
- # Check for DSSI
- if test "$build_dssi" = "yes"; then
- if test "$build_ladspa" = "no"; then
- AC_MSG_WARN([DSSI support requires LADSPA. DSSI support will not be built.])
- build_dssi="no"
- fi
- if test "$build_dssi" = "yes"; then
- PKG_CHECK_MODULES(ALSA, alsa >= 1.0.0, [build_dssi="yes"], [build_dssi="no"])
- if test "$build_dssi" = "no"; then
- AC_MSG_WARN([DSSI support requires Alsa. DSSI support will not be built.])
- fi
- fi
- if test "$build_dssi" = "yes"; then
- build_dssi="no"
- AC_CHECK_HEADER([dssi.h], [build_dssi="yes"],
- [AC_MSG_WARN([You do not seem to have dssi.h, DSSI support will not be built.])])
- if test "$build_dssi" = "yes"; then
- AC_DEFINE(HAVE_DSSI, 1, [Has dssi.h])
- fi
- fi
- fi
-
- # Check for LV2 (libslv2)
- if test "$build_lv2" = "yes"; then
- build_lv2="no"
- PKG_CHECK_MODULES(SLV2, libslv2 >= 0.0.1, [build_lv2="yes"], [build_lv2="no"])
- fi
- if test "$build_lv2" = "yes"; then
- AC_DEFINE(HAVE_SLV2, 1, [Has libslv2])
- fi
-
-else
- AC_MSG_WARN([Engine will NOT be built! (Nothing you're building produces any sound itself)])
-fi
-AM_CONDITIONAL(BUILD_SERVER, [test "$build_server" = "yes"])
-AM_CONDITIONAL(BUILD_IN_PROCESS_ENGINE, [test "$build_in_process_engine" = "yes"])
-AM_CONDITIONAL(BUILD_UNIT_TESTS, [test "$build_unit_tests" = "yes"])
-AM_CONDITIONAL(WITH_JACK_MIDI, [test "$build_jack_midi" = "yes"])
-AM_CONDITIONAL(WITH_LADSPA, [test "$build_ladspa" = "yes"])
-AM_CONDITIONAL(WITH_LV2, [test "$build_lv2" = "yes"])
-AM_CONDITIONAL(WITH_DSSI, [test "$build_dssi" = "yes"])
-
-
-
-##########################################################################
-## Console Clients
-##########################################################################
-
-if test "$build_console_clients" = "yes"; then
-
- # Check for libxml2 # FIXME: deprecated, make optional
- PKG_CHECK_MODULES(LXML2, libxml-2.0 >= 2.6.0)
-
- # Check for glibmm
- PKG_CHECK_MODULES(GLIBMM, glibmm-2.4)
-
- # Check for glib threads
- PKG_CHECK_MODULES(GTHREAD, gthread-2.0)
-
- # Check for raptor (for RDF serialization)
- PKG_CHECK_MODULES(RAPTOR, raptor >= 1.4.14, build_raptor="yes", build_raptor="no")
-
- # Check for rasqal (for RDF querying)
- PKG_CHECK_MODULES(RASQAL, rasqal >= 0.9.11, build_rasqal="yes", build_rasqal="no")
-
- # Check for sigc++ (FIXME: make this only necessary where.. uh.. necessary)
- PKG_CHECK_MODULES(LSIGCPP, sigc++-2.0)
-else
- AC_MSG_WARN([Console clients will be built!])
-fi
-AM_CONDITIONAL(BUILD_CONSOLE_CLIENTS, [test "$build_console_clients" = "yes"])
-
-
-
-##########################################################################
-## GTK Client (Ingenuity)
-##########################################################################
-
-if test "$build_gtk_client" = "yes"; then
-
- # Check misc. system stuff
- AC_CHECK_HEADERS([string.h sys/time.h unistd.h])
- AC_HEADER_TIME
- AC_FUNC_ERROR_AT_LINE
- AC_FUNC_FORK
- AC_FUNC_MALLOC
- AC_FUNC_STAT
- AC_CHECK_FUNCS([gettimeofday mkdir strcasecmp strchr strdup strtol])
-
- PKG_CHECK_MODULES(GTKMM, gtkmm-2.4)
- PKG_CHECK_MODULES(GNOMECANVASMM, libgnomecanvasmm-2.6)
- PKG_CHECK_MODULES(LIBGLADEMM, libglademm-2.4)
- PKG_CHECK_MODULES(FLOWCANVAS, flowcanvas >= 0.1.0)
- PKG_CHECK_MODULES(CURL, libcurl >= 7.15.0, build_curl="yes", build_curl="no")
-
-else
- AC_MSG_WARN([GTK client will NOT be built!])
-fi
-AM_CONDITIONAL(BUILD_GTK_CLIENT, [test "$build_gtk_client" = "yes"])
-
-# Build client lib if anything above that depends on it is to be built
-AM_CONDITIONAL(BUILD_CLIENT_LIB, [test "$build_console_clients" = "yes" -o "$build_gtk_client" = "yes"])
-
-# Write Makefiles
-AC_CONFIG_FILES([Makefile])
-AC_CONFIG_FILES([src/Makefile])
-AC_CONFIG_FILES([src/common/Makefile])
-AC_CONFIG_FILES([src/common/interface/Makefile])
-AC_CONFIG_FILES([src/common/lv2ext/Makefile])
-AC_CONFIG_FILES([src/libs/Makefile])
-AC_CONFIG_FILES([src/libs/module/Makefile])
-AC_CONFIG_FILES([src/libs/engine/Makefile])
-AC_CONFIG_FILES([src/libs/engine/tests/Makefile])
-AC_CONFIG_FILES([src/libs/engine/events/Makefile])
-AC_CONFIG_FILES([src/libs/serialisation/Makefile])
-AC_CONFIG_FILES([src/libs/client/Makefile])
-AC_CONFIG_FILES([src/libs/gui/Makefile])
-AC_CONFIG_FILES([src/progs/Makefile])
-AC_CONFIG_FILES([src/progs/ingen/Makefile])
-AC_CONFIG_FILES([src/progs/supercollider/Makefile])
-AC_CONFIG_FILES([src/progs/python/Makefile])
-AC_CONFIG_FILES([src/progs/python/scripts/Makefile])
-AC_CONFIG_FILES([src/progs/ingen/ingen.desktop])
-AC_CONFIG_FILES([patches/Makefile])
-AC_CONFIG_FILES([doc/Doxyfile])
-AC_OUTPUT
-
-AC_MSG_RESULT([])
-AC_MSG_RESULT([**********************************************************************])
-AC_MSG_RESULT([Ingen build configuration:])
-AC_MSG_RESULT([])
-AC_MSG_RESULT([Building engine: $build_engine])
-AC_MSG_RESULT([ JACK in-process support: $build_in_process_engine])
-AC_MSG_RESULT([ Jack MIDI support: $build_jack_midi])
-AC_MSG_RESULT([ LV2 Plugin support: $build_lv2])
-AC_MSG_RESULT([ DSSI Plugin support: $build_dssi])
-AC_MSG_RESULT([ LADSPA Plugin support: $build_ladspa])
-AC_MSG_RESULT([ LASH support: $build_lash])
-AC_MSG_RESULT([])
-AC_MSG_RESULT([Building console clients: $build_console_clients])
-AC_MSG_RESULT([])
-AC_MSG_RESULT([Building GUI: $build_gtk_client])
-AC_MSG_RESULT([])
-AC_MSG_RESULT([AGAIN, LASH SUPPORT IS NOT AVAILABLE.])
-AC_MSG_RESULT([THERE IS NO LASH SUPPORT IN INGEN AT THIS TIME])
-AC_MSG_RESULT([YES IT'S COMING. DO NOT ASK ME ABOUT LASH SUPPORT])
-AC_MSG_RESULT([])
-AC_MSG_RESULT([Building with flags: $CXXFLAGS])
-AC_MSG_RESULT([Please note the above and see README for performance information.])
-AC_MSG_RESULT([**********************************************************************])
-AC_MSG_RESULT([])
diff --git a/src/libs/client/Makefile.am b/src/libs/client/Makefile.am
index 7250de36..1c009868 100644
--- a/src/libs/client/Makefile.am
+++ b/src/libs/client/Makefile.am
@@ -6,14 +6,16 @@ moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_client.la
libingen_client_la_CXXFLAGS = \
- @RAUL_CFLAGS@ @SLV2_CFLAGS@ @LOSC_CFLAGS@ \
+ -I$(top_srcdir)/slv2 \
+ -I$(top_srcdir)/raul \
+ -I$(top_srcdir)/ingen/src/common \
+ -DPKGDATADIR=\"$(pkgdatadir)\" \
+ @LIBLO_CFLAGS@ \
@LXML2_CFLAGS@ @RASQAL_CFLAGS@ @RAPTOR_CFLAGS@ \
- @LSIGCPP_CFLAGS@ @GLIBMM_CFLAGS@ \
- -I$(top_srcdir)/src/common \
- -DPKGDATADIR=\"$(pkgdatadir)\"
+ @LSIGCPP_CFLAGS@ @GLIBMM_CFLAGS@
libingen_client_la_LIBADD = \
- @RAUL_LIBS@ @SLV2_LIBS@ @LOSC_LIBS@ \
+ @RAUL_LIBS@ @SLV2_LIBS@ @LIBLO_LIBS@ \
@LXML2_LIBS@ @RASQAL_LIBS@ @RAPTOR_LIBS@ \
@LSIGCPP_LIBS@ @GLIBMM_LIBS@
@@ -48,8 +50,8 @@ libingen_client_la_SOURCES = \
ConnectionModel.cpp \
Store.h \
Store.cpp \
- $(top_srcdir)/src/common/interface/ClientInterface.h \
- $(top_srcdir)/src/common/interface/EngineInterface.h
+ $(top_srcdir)/ingen/src/common/interface/ClientInterface.h \
+ $(top_srcdir)/ingen/src/common/interface/EngineInterface.h
endif # BUILD_CLIENT_LIB
diff --git a/src/libs/client/PluginModel.h b/src/libs/client/PluginModel.h
index b7de3101..6da388d6 100644
--- a/src/libs/client/PluginModel.h
+++ b/src/libs/client/PluginModel.h
@@ -18,7 +18,7 @@
#ifndef PLUGINMODEL_H
#define PLUGINMODEL_H
-#include "../../../config.h"
+#include "../../../../config/config.h"
#include <string>
#include <iostream>
#include <raul/Path.h>
diff --git a/src/libs/engine/DSSINode.h b/src/libs/engine/DSSINode.h
index ffe1a641..d569e720 100644
--- a/src/libs/engine/DSSINode.h
+++ b/src/libs/engine/DSSINode.h
@@ -18,7 +18,7 @@
#ifndef DSSINODE_H
#define DSSINODE_H
-#include <asoundlib.h>
+#include <alsa/asoundlib.h>
#include <dssi.h>
#include <lo/lo.h>
#include "LADSPANode.h"
diff --git a/src/libs/engine/Engine.cpp b/src/libs/engine/Engine.cpp
index e80bcafe..a2bfc757 100644
--- a/src/libs/engine/Engine.cpp
+++ b/src/libs/engine/Engine.cpp
@@ -40,10 +40,10 @@
#ifdef HAVE_JACK_MIDI
#include "JackMidiDriver.h"
#endif
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
-using std::cout; using std::cerr; using std::endl;
+#endif*/
+using namespace std;
namespace Ingen {
@@ -56,11 +56,11 @@ Engine::Engine()
_broadcaster(new ClientBroadcaster()),
_object_store(new ObjectStore()),
_node_factory(new NodeFactory()),
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
_lash_driver(new LashDriver()),
-#else
+#else */
_lash_driver(NULL),
-#endif
+//#endif
_quit_flag(false),
_activated(false)
{
@@ -129,11 +129,11 @@ Engine::main()
bool
Engine::main_iteration()
{
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
// Process any pending LASH events
if (lash_driver->enabled())
lash_driver->process_events();
-#endif
+#endif*/
// Run the maid (garbage collector)
_maid->cleanup();
diff --git a/src/libs/engine/JackAudioDriver.cpp b/src/libs/engine/JackAudioDriver.cpp
index 45f8616d..3f6f58c0 100644
--- a/src/libs/engine/JackAudioDriver.cpp
+++ b/src/libs/engine/JackAudioDriver.cpp
@@ -35,12 +35,11 @@
#include "DuplexPort.h"
#include "EventSource.h"
#include "AudioBuffer.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
-
-using std::cout; using std::cerr; using std::endl;
+#endif*/
+using namespace std;
namespace Ingen {
@@ -183,9 +182,9 @@ JackAudioDriver::activate()
exit(EXIT_FAILURE);
} else {
cout << "[JackAudioDriver] Activated Jack client." << endl;
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
_engine.lash_driver()->set_jack_client_name(jack_client_get_name(_client));
-#endif
+#endif*/
}
}
diff --git a/src/libs/engine/JackMidiDriver.cpp b/src/libs/engine/JackMidiDriver.cpp
index 0ec2170b..f8ed3064 100644
--- a/src/libs/engine/JackMidiDriver.cpp
+++ b/src/libs/engine/JackMidiDriver.cpp
@@ -15,22 +15,22 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "JackMidiDriver.h"
#include <iostream>
#include <cstdlib>
#include <pthread.h>
#include <raul/Maid.h>
#include <raul/midi_events.h>
#include "types.h"
+#include "JackMidiDriver.h"
#include "ThreadManager.h"
#include "AudioDriver.h"
#include "MidiBuffer.h"
#include "DuplexPort.h"
#include "jack_compat.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
-using std::cout; using std::cerr; using std::endl;
+#endif*/
+using namespace std;
namespace Ingen {
diff --git a/src/libs/engine/LashDriver.cpp b/src/libs/engine/LashDriver.cpp
index 72090e70..452af1f0 100644
--- a/src/libs/engine/LashDriver.cpp
+++ b/src/libs/engine/LashDriver.cpp
@@ -15,14 +15,14 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "LashDriver.h"
-#include "config.h"
#include <iostream>
#include <string>
#include <cassert>
+#include "config/config.h"
+#include "LashDriver.h"
+#include "App.h"
-using std::cerr; using std::cout; using std::endl;
-using std::string;
+using namespace std;
namespace Ingen {
diff --git a/src/libs/engine/Makefile.am b/src/libs/engine/Makefile.am
index 7b873c93..7ef0bdaf 100644
--- a/src/libs/engine/Makefile.am
+++ b/src/libs/engine/Makefile.am
@@ -5,9 +5,16 @@ MAINTAINERCLEANFILES = Makefile.in
moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_engine.la
-libingen_engine_la_CXXFLAGS = @RAUL_CFLAGS@ @JACK_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @SLV2_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/libs/engine/events
+libingen_engine_la_CXXFLAGS = \
+ -I$(top_srcdir)/slv2 \
+ -I$(top_srcdir)/raul \
+ -I$(top_srcdir)/ingen/src/common \
+ -I$(top_srcdir)/ingen/src/libs \
+ -I$(top_srcdir)/ingen/src/libs/engine/events \
+ @JACK_CFLAGS@ @LIBLO_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @GLIBMM_CFLAGS@
+
libingen_engine_la_LDFLAGS = -no-undefined -module -avoid-version
-libingen_engine_la_LIBADD = @RAUL_LIBS@ @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@
+libingen_engine_la_LIBADD = @RAUL_LIBS@ @JACK_LIBS@ @LIBLO_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ @GLIBMM_LIBS@
AM_CFLAGS=-std=c99
@@ -91,6 +98,7 @@ libingen_engine_la_SOURCES = \
Driver.h \
AudioDriver.h \
MidiDriver.h \
+ OSCDriver.h \
instantiations.cpp \
events/RegisterClientEvent.h \
events/RegisterClientEvent.cpp \
@@ -200,9 +208,9 @@ libingen_engine_la_SOURCES += \
LV2Node.cpp
endif
-if WITH_LASH
-libingen_engine_la_SOURCES += \
- LashDriver.h \
- LashDriver.cpp
-endif
+#if WITH_LASH
+#libingen_engine_la_SOURCES += \
+# LashDriver.h \
+# LashDriver.cpp
+#endif
diff --git a/src/libs/engine/OSCDriver.h b/src/libs/engine/OSCDriver.h
new file mode 100644
index 00000000..08294783
--- /dev/null
+++ b/src/libs/engine/OSCDriver.h
@@ -0,0 +1,83 @@
+/* This file is part of Ingen.
+ * Copyright (C) 2007 Dave Robillard <http://drobilla.net>
+ *
+ * Ingen is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version.
+ *
+ * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef OSCDRIVER_H
+#define OSCDRIVER_H
+
+#include "types.h"
+#include "Driver.h"
+#include <iostream>
+#include "OSCBuffer.h"
+
+namespace Ingen {
+
+
+/** OSC driver abstract base class.
+ *
+ * \ingroup engine
+ */
+class OSCDriver : public Driver
+{
+public:
+ OSCDriver() : Driver(DataType::OSC) {}
+
+ /** Prepare events (however neccessary) for the specified block (realtime safe) */
+ virtual void prepare_block(const SampleCount block_start, const SampleCount block_end) = 0;
+};
+
+
+
+/** Dummy OSCDriver.
+ *
+ * Not abstract, all functions are dummies. One of these will be allocated and
+ * "used" if no working OSC driver is loaded. (Doing it this way as opposed to
+ * just making OSCDriver have dummy functions makes sure any existing OSCDriver
+ * derived class actually implements the required functions).
+ *
+ * \ingroup engine
+ */
+class DummyOSCDriver : public OSCDriver
+{
+public:
+ DummyOSCDriver() {
+ std::cout << "[DummyOSCDriver] Started Dummy OSC driver." << std::endl;
+ }
+
+ ~DummyOSCDriver() {}
+
+ void activate() {}
+ void deactivate() {}
+
+ bool is_activated() const { return false; }
+ bool is_enabled() const { return false; }
+
+ void enable() {}
+ void disable() {}
+
+ DriverPort* create_port(DuplexPort* patch_port) { return NULL; }
+
+ void add_port(DriverPort* port) {}
+ DriverPort* remove_port(const Raul::Path& path) { return NULL; }
+
+ void prepare_block(const SampleCount block_start, const SampleCount block_end) {}
+};
+
+
+
+} // namespace Ingen
+
+#endif // OSCDRIVER_H
diff --git a/src/libs/engine/OmInProcess.cpp b/src/libs/engine/OmInProcess.cpp
index 2096204e..6893ebe2 100644
--- a/src/libs/engine/OmInProcess.cpp
+++ b/src/libs/engine/OmInProcess.cpp
@@ -22,9 +22,9 @@
#include "Engine.h"
#include "OSCReceiver.h"
#include "JackAudioDriver.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
+#endif*/
extern "C"
{
diff --git a/src/libs/engine/events.h b/src/libs/engine/events.h
index f1f4e78b..05b1a148 100644
--- a/src/libs/engine/events.h
+++ b/src/libs/engine/events.h
@@ -50,10 +50,6 @@
#include "PingQueuedEvent.h"
#include "MidiLearnEvent.h"
-#ifdef HAVE_LASH
-#include "LashRestoreDoneEvent.h"
-#endif
-
#ifdef HAVE_DSSI
#include "DSSIUpdateEvent.h"
#include "DSSIControlEvent.h"
diff --git a/src/libs/engine/events/LashRestoreDoneEvent.h b/src/libs/engine/events/LashRestoreDoneEvent.h
deleted file mode 100644
index fd33d813..00000000
--- a/src/libs/engine/events/LashRestoreDoneEvent.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* This file is part of Ingen.
- * Copyright (C) 2007 Dave Robillard <http://drobilla.net>
- *
- * Ingen is free software; you can redistribute it and/or modify it under the
- * terms of the GNU General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option) any later
- * version.
- *
- * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef LASHRESTOREDONEEVENT_H
-#define LASHRESTOREDONEEVENT_H
-
-#include "QueuedEvent.h"
-#include "LashDriver.h"
-#include "types.h"
-
-#include <iostream>
-using std::cerr;
-
-namespace Ingen {
-
-class Port;
-
-
-/** Notification from a client that the LASH session is finished restoring.
- *
- * This is a bit of a hack, but needed to defer notifying LASH of our
- * existance until all ports are created.
- *
- * \ingroup engine
- */
-class LashRestoreDoneEvent : public QueuedEvent
-{
-public:
- LashRestoreDoneEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp) : QueuedEvent(engine, responder, timestamp) {}
-
- void post_process()
- {
- _responder->respond_ok();
- lash_driver->restore_finished();
- }
-};
-
-
-} // namespace Ingen
-
-#endif // LASHRESTOREDONEEVENT_H
diff --git a/src/libs/engine/tests/Makefile.am b/src/libs/engine/tests/Makefile.am
index 6faed130..9363f51f 100644
--- a/src/libs/engine/tests/Makefile.am
+++ b/src/libs/engine/tests/Makefile.am
@@ -1,7 +1,7 @@
if BUILD_UNIT_TESTS
-AM_CXXFLAGS = @JACK_CFLAGS@ @RAUL_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ -I../../common
-common_ldadd = @JACK_LIBS@ @RAUL_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ -lrt
+AM_CXXFLAGS = @JACK_CFLAGS@ @RAUL_CFLAGS@ @LIBLO_CFLAGS@ @ALSA_CFLAGS@ -I../../common
+common_ldadd = @JACK_LIBS@ @RAUL_LIBS@ @LIBLO_LIBS@ @ALSA_LIBS@ -lrt
node_tree_test_LDADD = $(common_ldadd)
noinst_PROGRAMS = node_tree_test
diff --git a/src/libs/gui/App.cpp b/src/libs/gui/App.cpp
index 7697ca11..7b815db2 100644
--- a/src/libs/gui/App.cpp
+++ b/src/libs/gui/App.cpp
@@ -15,7 +15,7 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "config.h"
+#include "../../../config/config.h"
#include "App.h"
#include <cassert>
#include <string>
@@ -41,9 +41,9 @@
#include "ConnectWindow.h"
#include "ThreadedLoader.h"
#include "WindowFactory.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashController.h"
-#endif
+#endif*/
using std::cerr; using std::cout; using std::endl;
using std::string;
namespace Ingen { namespace Client { class PluginModel; } }
diff --git a/src/libs/gui/ConnectWindow.cpp b/src/libs/gui/ConnectWindow.cpp
index 0bc24452..ae787c99 100644
--- a/src/libs/gui/ConnectWindow.cpp
+++ b/src/libs/gui/ConnectWindow.cpp
@@ -22,7 +22,7 @@
#include <sys/time.h>
#include <sys/resource.h>
#include <raul/Process.h>
-#include "config.h"
+#include "../../../../config/config.h"
#include "interface/ClientKey.h"
#include "interface/EngineInterface.h"
#include "engine/tuning.h"
diff --git a/src/libs/gui/Makefile.am b/src/libs/gui/Makefile.am
index c94ebbb5..13e082b1 100644
--- a/src/libs/gui/Makefile.am
+++ b/src/libs/gui/Makefile.am
@@ -12,18 +12,21 @@ moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_gui.la
libingen_gui_la_CXXFLAGS = \
+ -I$(top_srcdir)/slv2 \
+ -I$(top_srcdir)/raul \
+ -I$(top_srcdir)/flowcanvas \
+ -I$(top_srcdir)/ingen/src/common \
+ -I$(top_srcdir)/ingen/src/libs \
-DPKGDATADIR=\"$(pkgdatadir)\" \
-DINGEN_MODULE_DIR=\"$(libdir)/ingen\" \
-DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED \
- @RAUL_CFLAGS@ @LOSC_CFLAGS@ @SLV2_CFLAGS@ @CURL_CFLAGS@ \
- @GTKMM_CFLAGS@ @LIBGLADEMM_CFLAGS@ @FLOWCANVAS_CFLAGS@ @GNOMECANVASMM_CFLAGS@ \
- -I$(top_srcdir)/src/common \
- -I$(top_srcdir)/src/libs
+ @LIBLO_CFLAGS@ @CURL_CFLAGS@ \
+ @GTKMM_CFLAGS@ @LIBGLADEMM_CFLAGS@ @GNOMECANVASMM_CFLAGS@
libingen_gui_la_LDFLAGS = -no-undefined -module -avoid-version
libingen_gui_la_LIBADD = \
- @RAUL_LIBS@ @LOSC_LIBS@ @SLV2_LIBS@ @CURL_LIBS@ \
+ @RAUL_LIBS@ @LIBLO_LIBS@ @SLV2_LIBS@ @CURL_LIBS@ \
@GTKMM_LIBS@ @LIBGLADEMM_LIBS@ @FLOWCANVAS_LIBS@ @GNOMECANVASMM_LIBS@ \
../module/libingen_module.la \
../client/libingen_client.la
diff --git a/src/libs/module/Makefile.am b/src/libs/module/Makefile.am
index 28cd2822..4d296f44 100644
--- a/src/libs/module/Makefile.am
+++ b/src/libs/module/Makefile.am
@@ -1,6 +1,6 @@
noinst_LTLIBRARIES = libingen_module.la
-libingen_module_la_CXXFLAGS = @RAUL_CFLAGS@ @GLIBMM_CFLAGS@ -DINGEN_MODULE_DIR=\"$(libdir)/ingen\"
+libingen_module_la_CXXFLAGS = -I$(top_srcdir)/raul -DINGEN_MODULE_DIR=\"$(libdir)/ingen\" @GLIBMM_CFLAGS@
libingen_module_la_LIBADD = @RAUL_LIBS@ @GLIBMM_LIBS@
diff --git a/src/libs/serialisation/Makefile.am b/src/libs/serialisation/Makefile.am
index f1343463..4dbacc5f 100644
--- a/src/libs/serialisation/Makefile.am
+++ b/src/libs/serialisation/Makefile.am
@@ -4,9 +4,9 @@ moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_serialisation.la
-libingen_serialisation_la_CXXFLAGS = @RAUL_CFLAGS@ -I$(top_srcdir)/src/common
+libingen_serialisation_la_CXXFLAGS = -I$(top_srcdir)/ingen/src/common -I$(top_srcdir)/raul @GLIBMM_CFLAGS@
libingen_serialisation_la_LDFLAGS = -no-undefined -module -avoid-version
-libingen_serialisation_la_LIBADD = @RAUL_LIBS@
+libingen_serialisation_la_LIBADD = @RAUL_LIBS@ @GLIBMM_LIBS@
libingen_serialisation_la_SOURCES = \
serialisation.h \
diff --git a/src/progs/ingen/Makefile.am b/src/progs/ingen/Makefile.am
index 7a500868..7f84191e 100644
--- a/src/progs/ingen/Makefile.am
+++ b/src/progs/ingen/Makefile.am
@@ -1,13 +1,12 @@
-AM_CXXFLAGS = @RAUL_CFLAGS@ @GTHREAD_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/libs -DINGEN_MODULE_DIR=\"$(libdir)/ingen\"
+AM_CXXFLAGS = -I$(top_srcdir)/raul -I$(top_srcdir)/ingen/src/common -I$(top_srcdir)/ingen/src/libs -DINGEN_MODULE_DIR=\"$(libdir)/ingen\" @GTHREAD_CFLAGS@ @GLIBMM_CFLAGS@
MAINTAINERCLEANFILES = Makefile.in
-EXTRA_DIST = ingen_dev
desktopfilesdir = $(datadir)/applications
dist_desktopfiles_DATA = ingen.desktop
bin_PROGRAMS = ingen
-ingen_LDADD = @RAUL_LIBS@ @GTHREAD_LIBS@../../libs/module/libingen_module.la
+ingen_LDADD = @RAUL_LIBS@ @GTHREAD_LIBS@ @GLIBMM_LIBS@ ../../libs/module/libingen_module.la
ingen_DEPENDENCIES = ../../libs/module/libingen_module.la
ingen_SOURCES = \