summaryrefslogtreecommitdiff
path: root/libs/midi++2/mmc.cc
diff options
context:
space:
mode:
authorTim Mayberry <mojofunk@gmail.com>2013-10-20 09:27:35 +1000
committerTim Mayberry <mojofunk@gmail.com>2013-10-20 09:27:35 +1000
commitb97ab7d7bc0af68c1079a192b3c7924cbe61936e (patch)
tree69d4e8058888c3eebee3127c3f68d7ead85488b4 /libs/midi++2/mmc.cc
parentf85c67501c2bef578eeb53741d0dfecaa0c723df (diff)
Statically link libtimecode into libmidi++ instead of libardour
This is necessary to get the libmidi++ test to work as libmidi++ has unresolved symbols in libtimecode. This was not a problem when libtimecode was statically linked into libardour if the executable depended on both libtimecode and libardour as the symbols would get resolved. This is not true for the midi++ test case as it doesn't depend on libardour Also as libmidi++ only references symbols from one object file in the libtimecode static archive only that object file gets included/exported from libmidi++. This is fixed by adding a dummy reference to a symbol in the other object file in the libtimecode static archive.
Diffstat (limited to 'libs/midi++2/mmc.cc')
-rw-r--r--libs/midi++2/mmc.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/midi++2/mmc.cc b/libs/midi++2/mmc.cc
index b93dc0f260..a3f8f01fe4 100644
--- a/libs/midi++2/mmc.cc
+++ b/libs/midi++2/mmc.cc
@@ -22,6 +22,7 @@
#include <map>
#include "timecode/time.h"
+#include "timecode/bbt_time.h"
#include "pbd/error.h"
@@ -33,6 +34,13 @@ using namespace std;
using namespace MIDI;
using namespace PBD;
+/**
+ * As libtimecode is linked statically to libmidi++ this
+ * is necessary to pull in all the symbols from libtimecode
+ * so they are exported for other users of libtimecode.
+ */
+double tmp = Timecode::BBT_Time::ticks_per_beat;
+
static std::map<int,string> mmc_cmd_map;
static void build_mmc_cmd_map ()
{