summaryrefslogtreecommitdiff
path: root/libs/surfaces/control_protocol
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-09-03 08:33:51 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-09-03 08:33:51 -0400
commita435e6357f0366558c4aa4e70f35993269044444 (patch)
tree28a9b98e811ab0c4bfba0cd54aea53a905d21b58 /libs/surfaces/control_protocol
parent4898b95e933597fccd8e024c7847c7881204d8ac (diff)
use visibility macros to control visibility in control surface DLL/DSO's
Diffstat (limited to 'libs/surfaces/control_protocol')
-rw-r--r--libs/surfaces/control_protocol/control_protocol/control_protocol.h13
-rw-r--r--libs/surfaces/control_protocol/wscript1
2 files changed, 12 insertions, 2 deletions
diff --git a/libs/surfaces/control_protocol/control_protocol/control_protocol.h b/libs/surfaces/control_protocol/control_protocol/control_protocol.h
index 0c849064bb..b20771b726 100644
--- a/libs/surfaces/control_protocol/control_protocol/control_protocol.h
+++ b/libs/surfaces/control_protocol/control_protocol/control_protocol.h
@@ -33,13 +33,22 @@
#include "control_protocol/basic_ui.h"
#include "control_protocol/types.h"
+#include "ardour/visibility.h"
+
+#ifdef ARDOURSURFACE_DLL_EXPORTS // defined if we are building the ARDOUR surface DLLs (instead of using them)
+ #define ARDOURSURFACE_API LIBARDOUR_HELPER_DLL_EXPORT
+#else
+ #define ARDOURSURFACE_API LIBARDOUR_HELPER_DLL_IMPORT
+#endif
+#define ARDOURSURFACE_LOCAL LIBARDOUR_HELPER_DLL_LOCAL
+
namespace ARDOUR {
class Route;
class Session;
class Bundle;
-class ControlProtocol : public PBD::Stateful, public PBD::ScopedConnectionList, public BasicUI
+class ARDOURSURFACE_API ControlProtocol : public PBD::Stateful, public PBD::ScopedConnectionList, public BasicUI
{
public:
ControlProtocol (Session&, std::string name);
@@ -142,7 +151,7 @@ class ControlProtocol : public PBD::Stateful, public PBD::ScopedConnectionList,
void prev_track (uint32_t initial_id);
private:
- ControlProtocol (const ControlProtocol&); /* noncopyable */
+ ARDOURSURFACE_LOCAL ControlProtocol (const ControlProtocol&); /* noncopyable */
};
extern "C" {
diff --git a/libs/surfaces/control_protocol/wscript b/libs/surfaces/control_protocol/wscript
index 2ba48d5138..eb0f2cdae9 100644
--- a/libs/surfaces/control_protocol/wscript
+++ b/libs/surfaces/control_protocol/wscript
@@ -28,6 +28,7 @@ def build(bld):
obj.export_includes = ['.', './control_protocol' ]
obj.cxxflags = '-DPACKAGE="ardour_cp" -fPIC'
obj.includes = ['.', './control_protocol']
+ obj.defines = [ 'ARDOURSURFACE_DLL_EXPORTS' ]
obj.name = 'libardour_cp'
obj.target = 'ardourcp'
obj.use = 'ardour libtimecode'