diff options
36 files changed, 166 insertions, 153 deletions
diff --git a/libs/pbd/epa.cc b/libs/pbd/epa.cc index 1a27a436a6..c7a1d41b0e 100644 --- a/libs/pbd/epa.cc +++ b/libs/pbd/epa.cc @@ -146,4 +146,4 @@ EnvironmentalProtectionAgency::clear () const string before = estring.substr (0, equal); g_unsetenv(before.c_str()); } -} +} diff --git a/libs/pbd/fallback_folders.cc b/libs/pbd/fallback_folders.cc index deecd60d7a..f17e69e417 100644 --- a/libs/pbd/fallback_folders.cc +++ b/libs/pbd/fallback_folders.cc @@ -521,7 +521,7 @@ gchar *pUsrHome = 0; // relevant index. // On Failure: NULL // -PBD_API G_CONST_RETURN gchar* PBD_APICALLTYPE +LIBPBD_API G_CONST_RETURN gchar* PBD_APICALLTYPE get_platform_fallback_folder (PBD::fallback_folder_t index) { if ((index >= 0) && (index < FALLBACK_FOLDER_MAX)) @@ -546,7 +546,7 @@ get_platform_fallback_folder (PBD::fallback_folder_t index) // // The value obtained from 'get_platform_fallback_folders()' // -PBD_API G_CONST_RETURN gchar* G_CONST_RETURN * PBD_APICALLTYPE +LIBPBD_API G_CONST_RETURN gchar* G_CONST_RETURN * PBD_APICALLTYPE alloc_platform_fallback_folders () { return ((G_CONST_RETURN gchar* G_CONST_RETURN *)get_platform_fallback_folders ()); @@ -564,7 +564,7 @@ alloc_platform_fallback_folders () // // NONE. // -PBD_API void PBD_APICALLTYPE +LIBPBD_API void PBD_APICALLTYPE free_platform_fallback_folders () { int index = FOLDER_LOCALE; diff --git a/libs/pbd/msvc/msvc_pbd.cc b/libs/pbd/msvc/msvc_pbd.cc index f6efe9cdad..5b9c9d449a 100644 --- a/libs/pbd/msvc/msvc_pbd.cc +++ b/libs/pbd/msvc/msvc_pbd.cc @@ -49,7 +49,7 @@ struct timezone int tz_dsttime; /* type of dst correction */ }; -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE gettimeofday(struct timeval *__restrict tv, __timezone_ptr_t tz) // Does this need to be exported ? { FILETIME ft; @@ -94,22 +94,22 @@ static int tzflag = 0; #ifndef PTHREAD_H // Defined by PTW32 (Linux and other versions define _PTHREAD_H) #error "An incompatible version of 'pthread.h' is #included. Use only the Windows (ptw32) version!" #else -bool operator> (const pthread_t& lhs, const pthread_t& rhs) +LIBPBD_API bool operator> (const pthread_t& lhs, const pthread_t& rhs) { return (std::greater<void*>()(lhs.p, rhs.p)); } -bool operator< (const pthread_t& lhs, const pthread_t& rhs) +LIBPBD_API bool operator< (const pthread_t& lhs, const pthread_t& rhs) { return (std::less<void*>()(lhs.p, rhs.p)); } -bool operator!= (const pthread_t& lhs, const pthread_t& rhs) +LIBPBD_API bool operator!= (const pthread_t& lhs, const pthread_t& rhs) { return (std::not_equal_to<void*>()(lhs.p, rhs.p)); } -bool operator== (const pthread_t& lhs, const pthread_t& rhs) +LIBPBD_API bool operator== (const pthread_t& lhs, const pthread_t& rhs) { return (!(lhs != rhs)); } @@ -166,7 +166,7 @@ char invert_forwardslash(char character) // On Success: The number of bytes read from the file // On Failure: -1 // -PBD_API ssize_t PBD_APICALLTYPE +LIBPBD_API ssize_t PBD_APICALLTYPE pread(int handle, void *buf, size_t nbytes, off_t offset) { int old_errno; @@ -201,7 +201,7 @@ ssize_t ret; // On Success: The number of bytes written to the file // On Failure: -1 // -PBD_API ssize_t PBD_APICALLTYPE +LIBPBD_API ssize_t PBD_APICALLTYPE pwrite(int handle, const void *buf, size_t nbytes, off_t offset) { int old_errno; @@ -235,7 +235,7 @@ ssize_t ret; // equal to 'x'. // On Failure: None // -PBD_API double PBD_APICALLTYPE +LIBPBD_API double PBD_APICALLTYPE round(double x) { return (floor(x)); @@ -255,7 +255,7 @@ namespace PBD { // On Success: TRUE (if the user's OS matches the minimum spec) // On Failure: FALSE otherwise // -PBD_API bool PBD_APICALLTYPE +LIBPBD_API bool PBD_APICALLTYPE TestForMinimumSpecOS(char *revision /* currently ignored */) { bool bRet = true; @@ -289,7 +289,7 @@ bool bRet = true; // On Success: A pointer to the resolved (absolute) path // On Failure: NULL // -PBD_API char* PBD_APICALLTYPE +LIBPBD_API char* PBD_APICALLTYPE realpath (const char *original_path, char resolved_path[_MAX_PATH+1]) { char *pRet = NULL; @@ -332,7 +332,7 @@ bool bIsSymLink = 0; // We'll probably need to test the incoming path // On Success: Pointer to a (heap based) DIR structure // On Failure: NULL // -PBD_API DIR* PBD_APICALLTYPE +LIBPBD_API DIR* PBD_APICALLTYPE opendir (const char *szPath) { wchar_t wpath[PATH_MAX+1]; @@ -424,7 +424,7 @@ DIR *pDir = 0; // On Success: A pointer to the supplied DIR's 'dirent' struct // On Failure: NULL // -PBD_API struct dirent* PBD_APICALLTYPE +LIBPBD_API struct dirent* PBD_APICALLTYPE readdir (DIR* pDir) { int old_errno = 0; @@ -502,7 +502,7 @@ errno = 0; // On Success: 0 // On Failure: -1 // -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE closedir (DIR *pDir) { int rc = 0; @@ -536,7 +536,7 @@ int rc = 0; // On Success: A file descriptor for the opened file. // On Failure: (-1) // -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE mkstemp (char *template_name) { int ret = (-1); @@ -567,7 +567,7 @@ char szTempPath[PATH_MAX+100]; // Just ensure we have plenty of buffer space // On Success: Non-zero. // On Failure: Zero (call 'GetLastError()' to retrieve info) // -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE ntfs_link (const char *existing_filepath, const char *link_filepath) { int ret = 1; // 'ERROR_INVALID_FUNCTION' @@ -697,7 +697,7 @@ bool bValidPath = false; // On Success: Non-zero. // On Failure: Zero (call 'GetLastError()' to retrieve info) // -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE ntfs_unlink (const char *link_filepath) { int ret = 1; // 'ERROR_INVALID_FUNCTION' @@ -820,7 +820,7 @@ bool bValidPath = false; // On Success: A handle to the opened DLL // On Failure: NULL // -PBD_API void* PBD_APICALLTYPE +LIBPBD_API void* PBD_APICALLTYPE dlopen (const char *file_name, int mode) { // Note that 'mode' is ignored in Win32 @@ -839,7 +839,7 @@ dlopen (const char *file_name, int mode) // On Success: A non-zero number // On Failure: 0 // -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE dlclose (void *handle) { return (::FreeLibrary((HMODULE)handle)); @@ -857,7 +857,7 @@ dlclose (void *handle) // On Success: A pointer to the found function or symbol // On Failure: NULL // -PBD_API void* PBD_APICALLTYPE +LIBPBD_API void* PBD_APICALLTYPE dlsym (void *handle, const char *symbol_name) { // First test for RTLD_DEFAULT and RTLD_NEXT @@ -883,7 +883,7 @@ static char szLastWinError[LOCAL_ERROR_BUF_SIZE]; // last error // On Failure: NULL (if the last error was ERROR_SUCCESS) // -PBD_API char* PBD_APICALLTYPE +LIBPBD_API char* PBD_APICALLTYPE dlerror () { DWORD dwLastErrorId = GetLastError(); diff --git a/libs/pbd/msvc/msvc_poll.cc b/libs/pbd/msvc/msvc_poll.cc index e12ef2bbef..921638a3f5 100644 --- a/libs/pbd/msvc/msvc_poll.cc +++ b/libs/pbd/msvc/msvc_poll.cc @@ -172,7 +172,7 @@ int ret = 0; // This functionality is not yet implemented // writing or had data available for reading. // On Failure: -1 (the actual error is saved in 'errno'). // -PBD_API int PBD_APICALLTYPE +LIBPBD_API int PBD_APICALLTYPE poll (struct pollfd *fds, nfds_t nfds, int timeout) { int elapsed_time = 0; diff --git a/libs/pbd/pbd/abstract_ui.cc b/libs/pbd/pbd/abstract_ui.cc index 9c405745ac..67c39b57e4 100644 --- a/libs/pbd/pbd/abstract_ui.cc +++ b/libs/pbd/pbd/abstract_ui.cc @@ -34,7 +34,7 @@ // if the type of object being contained has no appropriate comparison operators // defined (specifically, if operators '<' and '==' are undefined). This seems // to be the case with ptw32 'pthread_t' which is a simple struct. -DECLARE_DEFAULT_COMPARISONS(pthread_t) +DECLARE_DEFAULT_COMPARISONS(ptw32_handle_t) #endif using namespace std; diff --git a/libs/pbd/pbd/abstract_ui.h b/libs/pbd/pbd/abstract_ui.h index 7e13425bf5..1ceefe7b3b 100644 --- a/libs/pbd/pbd/abstract_ui.h +++ b/libs/pbd/pbd/abstract_ui.h @@ -52,7 +52,7 @@ class Touchable; template<typename RequestObject> -class ABSTRACT_UI_API AbstractUI : public BaseUI /* see notes in visibility.h about why this is not LIBPBD_API */ +class /*ABSTRACT_UI_API*/ AbstractUI : public BaseUI /* see notes in visibility.h about why this is not LIBPBD_API */ { public: AbstractUI (const std::string& name); diff --git a/libs/pbd/pbd/cartesian.h b/libs/pbd/pbd/cartesian.h index 20c8b27088..5f0b951d5f 100644 --- a/libs/pbd/pbd/cartesian.h +++ b/libs/pbd/pbd/cartesian.h @@ -97,7 +97,7 @@ struct LIBPBD_API AngularVector { } }; -LIBPBD_API inline void CartesianVector::angular (AngularVector& a) const { +inline void CartesianVector::angular (AngularVector& a) const { cartesian_to_spherical (x, y, z, a.azi, a.ele, a.length); } diff --git a/libs/pbd/pbd/compose.h b/libs/pbd/pbd/compose.h index a80cb213b2..cb4182699f 100644 --- a/libs/pbd/pbd/compose.h +++ b/libs/pbd/pbd/compose.h @@ -204,7 +204,7 @@ namespace StringPrivate // a series of functions which accept a format string on the form "text %1 // more %2 less %3" and a number of templated parameters and spits out the // composited string - template <typename T1> LIBPBD_API + template <typename T1> inline std::string string_compose(const std::string &fmt, const T1 &o1) { StringPrivate::Composition c(fmt); @@ -212,7 +212,7 @@ namespace StringPrivate return c.str(); } - template <typename T1, typename T2> LIBPBD_API + template <typename T1, typename T2> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2) { @@ -221,7 +221,7 @@ namespace StringPrivate return c.str(); } - template <typename T1, typename T2, typename T3> LIBPBD_API + template <typename T1, typename T2, typename T3> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3) { @@ -230,7 +230,7 @@ namespace StringPrivate return c.str(); } - template <typename T1, typename T2, typename T3, typename T4> LIBPBD_API + template <typename T1, typename T2, typename T3, typename T4> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4) @@ -240,7 +240,7 @@ namespace StringPrivate return c.str(); } - template <typename T1, typename T2, typename T3, typename T4, typename T5> LIBPBD_API + template <typename T1, typename T2, typename T3, typename T4, typename T5> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5) @@ -251,7 +251,7 @@ namespace StringPrivate } template <typename T1, typename T2, typename T3, typename T4, typename T5, - typename T6> LIBPBD_API + typename T6> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6) @@ -262,7 +262,7 @@ namespace StringPrivate } template <typename T1, typename T2, typename T3, typename T4, typename T5, - typename T6, typename T7> LIBPBD_API + typename T6, typename T7> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -274,7 +274,7 @@ namespace StringPrivate } template <typename T1, typename T2, typename T3, typename T4, typename T5, - typename T6, typename T7, typename T8> LIBPBD_API + typename T6, typename T7, typename T8> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -286,7 +286,7 @@ namespace StringPrivate } template <typename T1, typename T2, typename T3, typename T4, typename T5, - typename T6, typename T7, typename T8, typename T9> LIBPBD_API + typename T6, typename T7, typename T8, typename T9> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -298,7 +298,7 @@ namespace StringPrivate } template <typename T1, typename T2, typename T3, typename T4, typename T5, - typename T6, typename T7, typename T8, typename T9, typename T10> LIBPBD_API + typename T6, typename T7, typename T8, typename T9, typename T10> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -313,7 +313,7 @@ namespace StringPrivate template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, - typename T11> LIBPBD_API + typename T11> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -328,7 +328,7 @@ namespace StringPrivate template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, - typename T11, typename T12> LIBPBD_API + typename T11, typename T12> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -343,7 +343,7 @@ namespace StringPrivate template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, - typename T11, typename T12, typename T13> LIBPBD_API + typename T11, typename T12, typename T13> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -359,7 +359,7 @@ namespace StringPrivate template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, - typename T11, typename T12, typename T13, typename T14> LIBPBD_API + typename T11, typename T12, typename T13, typename T14> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, @@ -376,7 +376,7 @@ namespace StringPrivate template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10, typename T11, typename T12, typename T13, typename T14, - typename T15> LIBPBD_API + typename T15> inline std::string string_compose(const std::string &fmt, const T1 &o1, const T2 &o2, const T3 &o3, const T4 &o4, const T5 &o5, const T6 &o6, diff --git a/libs/pbd/pbd/convert.h b/libs/pbd/pbd/convert.h index 1269254906..6580a6e8e7 100644 --- a/libs/pbd/pbd/convert.h +++ b/libs/pbd/pbd/convert.h @@ -47,7 +47,7 @@ LIBPBD_API std::string length2string (const int64_t frames, const double sample_ LIBPBD_API std::vector<std::string> internationalize (const char *, const char **); LIBPBD_API bool strings_equal_ignore_case (const std::string& a, const std::string& b); -template <class T> std::string LIBPBD_API +template <class T> std::string /*LIBPBD_API*/ to_string (T t, std::ios_base & (*f)(std::ios_base&)) { std::ostringstream oss; diff --git a/libs/pbd/pbd/demangle.h b/libs/pbd/pbd/demangle.h index c9f5c194c0..12dc58839c 100644 --- a/libs/pbd/pbd/demangle.h +++ b/libs/pbd/pbd/demangle.h @@ -32,7 +32,7 @@ namespace PBD { - template<typename T> LIBPBD_API + template<typename T> /*LIBPBD_API*/ std::string demangled_name (T const & obj) { #ifdef __GNUC__ diff --git a/libs/pbd/pbd/fallback_folders.h b/libs/pbd/pbd/fallback_folders.h index 60935b4424..db8992db6d 100644 --- a/libs/pbd/pbd/fallback_folders.h +++ b/libs/pbd/pbd/fallback_folders.h @@ -23,7 +23,7 @@ #include <glib/gtypes.h> #ifdef PLATFORM_WINDOWS // Would not be relevant for Cygwin!! - PBD_API gchar* PBD_APICALLTYPE get_win_special_folder (int csidl); + LIBPBD_API gchar* PBD_APICALLTYPE get_win_special_folder (int csidl); #endif namespace PBD { @@ -49,9 +49,9 @@ namespace PBD { extern "C" { #endif /* __cplusplus */ - PBD_API G_CONST_RETURN gchar* PBD_APICALLTYPE get_platform_fallback_folder (PBD::fallback_folder_t index); - PBD_API G_CONST_RETURN gchar* G_CONST_RETURN * PBD_APICALLTYPE alloc_platform_fallback_folders (); - PBD_API void PBD_APICALLTYPE free_platform_fallback_folders (); + LIBPBD_API G_CONST_RETURN gchar* PBD_APICALLTYPE get_platform_fallback_folder (PBD::fallback_folder_t index); + LIBPBD_API G_CONST_RETURN gchar* G_CONST_RETURN * PBD_APICALLTYPE alloc_platform_fallback_folders (); + LIBPBD_API void PBD_APICALLTYPE free_platform_fallback_folders (); #ifdef __cplusplus } /* extern "C" */ diff --git a/libs/pbd/pbd/ffs.h b/libs/pbd/pbd/ffs.h index 3a2eadfae7..f21fc82a39 100644 --- a/libs/pbd/pbd/ffs.h +++ b/libs/pbd/pbd/ffs.h @@ -20,8 +20,10 @@ #ifndef __libpbd_ffs_h__ #define __libpbd_ffs_h__ +#include "pbd/libpbd_visibility.h" + namespace PBD { - int ffs(int x); + LIBPBD_API int ffs(int x); } #endif /* __libpbd_ffs_h__ */ diff --git a/libs/pbd/pbd/floating.h b/libs/pbd/pbd/floating.h index fc5a8be4f1..c0003a3113 100644 --- a/libs/pbd/pbd/floating.h +++ b/libs/pbd/pbd/floating.h @@ -34,7 +34,7 @@ namespace PBD { -union LIBPBD_API Float_t +union /*LIBPBD_API*/ Float_t { Float_t (float num = 0.0f) : f(num) {} diff --git a/libs/pbd/pbd/functor_command.h b/libs/pbd/pbd/functor_command.h index d2aacd18ac..6cca13209f 100644 --- a/libs/pbd/pbd/functor_command.h +++ b/libs/pbd/pbd/functor_command.h @@ -37,7 +37,7 @@ namespace PBD { template <class obj_type, class arg_type> -class LIBPBD_API FunctorCommand : public Command +class /*LIBPBD_API*/ FunctorCommand : public Command { private: typedef void (obj_type::*functor_type)(arg_type); diff --git a/libs/pbd/pbd/glib_semaphore.h b/libs/pbd/pbd/glib_semaphore.h index c78226f737..7f96120d7d 100644 --- a/libs/pbd/pbd/glib_semaphore.h +++ b/libs/pbd/pbd/glib_semaphore.h @@ -22,11 +22,12 @@ #include <glibmm/threads.h> +#include "pbd/libpbd_visibility.h" #include "atomic_counter.h" namespace PBD { -class GlibSemaphore +class LIBPBD_API GlibSemaphore { // prevent copying and assignment diff --git a/libs/pbd/pbd/localeguard.h b/libs/pbd/pbd/localeguard.h index 20899b5c80..21ea5380fa 100644 --- a/libs/pbd/pbd/localeguard.h +++ b/libs/pbd/pbd/localeguard.h @@ -24,7 +24,7 @@ namespace PBD { -struct LocaleGuard { +struct LIBPBD_API /* Added by JE - */ LocaleGuard { LocaleGuard (const char*); ~LocaleGuard (); const char* old; diff --git a/libs/pbd/pbd/memento_command.h b/libs/pbd/pbd/memento_command.h index 6560780f3c..f6d11a0b33 100644 --- a/libs/pbd/pbd/memento_command.h +++ b/libs/pbd/pbd/memento_command.h @@ -51,7 +51,7 @@ * can do `just-in-time' binding from the crossfade ID. */ template <class obj_T> -class LIBPBD_API MementoCommandBinder : public PBD::Destructible +class /*LIBPBD_API*/ MementoCommandBinder : public PBD::Destructible { public: /** @return Stateful object to operate on */ @@ -68,7 +68,7 @@ public: /** A simple MementoCommandBinder which binds directly to an object */ template <class obj_T> -class LIBPBD_API SimpleMementoCommandBinder : public MementoCommandBinder<obj_T> +class /*LIBPBD_API*/ SimpleMementoCommandBinder : public MementoCommandBinder<obj_T> { public: SimpleMementoCommandBinder (obj_T& o) @@ -100,7 +100,7 @@ private: * memento, and redo is restoring the after memento. */ template <class obj_T> -class LIBPBD_API MementoCommand : public Command +class /*LIBPBD_API*/ MementoCommand : public Command { public: MementoCommand (obj_T& a_object, XMLNode* a_before, XMLNode* a_after) diff --git a/libs/pbd/pbd/msvc_pbd.h b/libs/pbd/pbd/msvc_pbd.h index 628ed56e6f..a623ca2eb2 100644 --- a/libs/pbd/pbd/msvc_pbd.h +++ b/libs/pbd/pbd/msvc_pbd.h @@ -20,9 +20,12 @@ #define _msvc_pbd_h_ #ifdef PBD_IS_IN_WIN_STATIC_LIB // #define if your project uses libpbd (under Windows) as a static library +#undef LIBPBD_DLL #define PBD_IS_IN_WINDLL 0 #endif +#include <pbd/libpbd_visibility.h> + #ifndef COMPILER_MSVC #include <sys/time.h> #else @@ -39,23 +42,22 @@ #endif #endif -#if PBD_IS_IN_WINDLL && !defined(PBD_API) +#if PBD_IS_IN_WINDLL && !defined(PBD_APICALLTYPE) #if defined(BUILDING_PBD) - #define PBD_API __declspec(dllexport) - #define PBD_APICALLTYPE __stdcall + #define PBD_APICALLTYPE __cdecl #elif defined(COMPILER_MSVC) || defined(COMPILER_MINGW) // Probably needs Cygwin too, at some point - #define PBD_API __declspec(dllimport) - #define PBD_APICALLTYPE __stdcall + #define PBD_APICALLTYPE __cdecl #else #error "Attempting to define __declspec with an incompatible compiler !" #endif -#elif !defined(PBD_API) +#elif !defined(PBD_APICALLTYPE) // Other compilers / platforms could be accommodated here - #define PBD_API #define PBD_APICALLTYPE +#ifndef GETOPT_API #define GETOPT_API #define GETOPT_APICALLTYPE #endif +#endif #ifndef GETOPT_API #if defined(BUILDING_GETOPT) @@ -145,23 +147,27 @@ extern "C" { extern "C" { #endif /* __cplusplus */ -PBDEXTN_API int PBDEXTN_APICALLTYPE cyginit (unsigned int result); -PBD_API int PBD_APICALLTYPE dlclose (void *handle) __THROW; -PBD_API void* PBD_APICALLTYPE dlopen (const char *file_name, int mode) __THROW; -PBD_API void* PBD_APICALLTYPE dlsym (void *handle, const char *symbol_name) __THROW; -PBD_API char* PBD_APICALLTYPE dlerror () __THROW; +PBDEXTN_API int PBDEXTN_APICALLTYPE cyginit (unsigned int result); +LIBPBD_API int PBD_APICALLTYPE dlclose (void *handle) __THROW; +LIBPBD_API void* PBD_APICALLTYPE dlopen (const char *file_name, int mode) __THROW; +LIBPBD_API void* PBD_APICALLTYPE dlsym (void *handle, const char *symbol_name) __THROW; +LIBPBD_API char* PBD_APICALLTYPE dlerror () __THROW; #ifdef __cplusplus } /* extern "C" */ #endif /* __cplusplus */ #ifndef __CYGWIN__ +/* For whatever reason, Ardour's 'libevoral' refuses to build as a DLL if we include both 'rpc.h' */ +/* and 'WinSock2.h'. It doesn't seem to matter which order we #include them. Given that we can't */ +/* edit 'rpc.h' or 'WinSock2.h', just make sure we don't #include them when building libevoral. */ +#ifndef BUILDING_EVORAL #include <rpc.h> +typedef int (FAR PBDEXTN_APICALLTYPE *CYGINIT_API)(unsigned int); +#endif #include <io.h> #include <sys/types.h> -typedef int (FAR PBDEXTN_APICALLTYPE *CYGINIT_API)(unsigned int); - #ifndef FILENAME_MAX #define FILENAME_MAX (260) #endif @@ -216,35 +222,35 @@ struct pollfd typedef unsigned int nfds_t; -PBD_API int PBD_APICALLTYPE gettimeofday(struct timeval *__restrict tv, __timezone_ptr_t tz); -PBD_API ssize_t PBD_APICALLTYPE pread(int handle, void *buf, size_t nbytes, off_t offset); -PBD_API ssize_t PBD_APICALLTYPE pwrite(int handle, const void *buf, size_t nbytes, off_t offset); -PBD_API int PBD_APICALLTYPE poll(struct pollfd *fds, nfds_t nfds, int timeout); -PBD_API double PBD_APICALLTYPE round(double x); - -namespace PBD { - #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ -PBD_API bool PBD_APICALLTYPE TestForMinimumSpecOS(char *revision="currently ignored"); -PBD_API char* PBD_APICALLTYPE realpath (const char *original_path, char resolved_path[_MAX_PATH+1]); -PBD_API int PBD_APICALLTYPE mkstemp (char *template_name); -PBD_API int PBD_APICALLTYPE ntfs_link (const char *existing_filepath, const char *link_filepath); -PBD_API int PBD_APICALLTYPE ntfs_unlink (const char *link_filepath); +LIBPBD_API int __cdecl gettimeofday(struct timeval *__restrict tv, __timezone_ptr_t tz); +LIBPBD_API ssize_t PBD_APICALLTYPE pread(int handle, void *buf, size_t nbytes, off_t offset); +LIBPBD_API ssize_t PBD_APICALLTYPE pwrite(int handle, const void *buf, size_t nbytes, off_t offset); +LIBPBD_API int PBD_APICALLTYPE poll(struct pollfd *fds, nfds_t nfds, int timeout); +LIBPBD_API double PBD_APICALLTYPE round(double x); + +namespace PBD { + +LIBPBD_API bool PBD_APICALLTYPE TestForMinimumSpecOS(char *revision="currently ignored"); +LIBPBD_API char* PBD_APICALLTYPE realpath (const char *original_path, char resolved_path[_MAX_PATH+1]); +LIBPBD_API int PBD_APICALLTYPE mkstemp (char *template_name); +LIBPBD_API int PBD_APICALLTYPE ntfs_link (const char *existing_filepath, const char *link_filepath); +LIBPBD_API int PBD_APICALLTYPE ntfs_unlink (const char *link_filepath); // These are used to replicate 'dirent.h' functionality -PBD_API DIR* PBD_APICALLTYPE opendir (const char *szPath); -PBD_API struct dirent* PBD_APICALLTYPE readdir (DIR *pDir); -PBD_API int PBD_APICALLTYPE closedir (DIR *pDir); +LIBPBD_API DIR* PBD_APICALLTYPE opendir (const char *szPath); +LIBPBD_API struct dirent* PBD_APICALLTYPE readdir (DIR *pDir); +LIBPBD_API int PBD_APICALLTYPE closedir (DIR *pDir); + +} // namespace PBD #ifdef __cplusplus } /* extern "C" */ #endif /* __cplusplus */ -} // namespace PBD - #endif // !__CYGWIN__ #endif // PLATFORM_WINDOWS #endif // _msvc_pbd_h_ diff --git a/libs/pbd/pbd/pathexpand.h b/libs/pbd/pbd/pathexpand.h index 5f1c03f8ee..5c5d4cf772 100644 --- a/libs/pbd/pbd/pathexpand.h +++ b/libs/pbd/pbd/pathexpand.h @@ -24,6 +24,7 @@ #include "pbd/libpbd_visibility.h" namespace PBD { + LIBPBD_API std::string canonical_path (const std::string& path); LIBPBD_API std::string path_expand (std::string path); LIBPBD_API std::string search_path_expand (std::string path); } diff --git a/libs/pbd/pbd/properties.h b/libs/pbd/pbd/properties.h index 27a0be1895..70d18db4c7 100644 --- a/libs/pbd/pbd/properties.h +++ b/libs/pbd/pbd/properties.h @@ -37,7 +37,7 @@ namespace PBD { /** Parent class for classes which represent a single scalar property in a Stateful object */ template<class T> -class LIBPBD_API PropertyTemplate : public PropertyBase +class /*LIBPBD_API*/ PropertyTemplate : public PropertyBase { public: PropertyTemplate (PropertyDescriptor<T> p, T const& v) @@ -197,7 +197,7 @@ private: PropertyTemplate (PropertyTemplate<T> const &); }; -template<class T> LIBPBD_API +template<class T> /*LIBPBD_API*/ std::ostream & operator<<(std::ostream& os, PropertyTemplate<T> const& s) { return os << s.val (); @@ -207,7 +207,7 @@ std::ostream & operator<<(std::ostream& os, PropertyTemplate<T> const& s) * with types that can be written to / read from stringstreams. */ template<class T> -class LIBPBD_API Property : public PropertyTemplate<T> +class /*LIBPBD_API*/ Property : public PropertyTemplate<T> { public: Property (PropertyDescriptor<T> q, T const& v) @@ -285,7 +285,7 @@ private: * separators, etc. */ template<> -class LIBPBD_API Property<std::string> : public PropertyTemplate<std::string> +class /*LIBPBD_API*/ Property<std::string> : public PropertyTemplate<std::string> { public: Property (PropertyDescriptor<std::string> d, std::string const & v) @@ -319,7 +319,7 @@ private: }; template<class T> -class LIBPBD_API EnumProperty : public Property<T> +class /*LIBPBD_API*/ EnumProperty : public Property<T> { public: EnumProperty (PropertyDescriptor<T> q, T const& v) @@ -352,7 +352,7 @@ private: * one. */ template <class T> -class LIBPBD_API SharedStatefulProperty : public PropertyBase +class /*LIBPBD_API*/ SharedStatefulProperty : public PropertyBase { public: typedef boost::shared_ptr<T> Ptr; diff --git a/libs/pbd/pbd/property_basics.h b/libs/pbd/pbd/property_basics.h index 2da21ddb84..d0eb1db922 100644 --- a/libs/pbd/pbd/property_basics.h +++ b/libs/pbd/pbd/property_basics.h @@ -38,7 +38,7 @@ class LIBPBD_API StatefulDiffCommand; typedef GQuark PropertyID; template<typename T> -struct LIBPBD_API PropertyDescriptor { +struct /*LIBPBD_API*/ PropertyDescriptor { PropertyDescriptor () : property_id (0) {} PropertyDescriptor (PropertyID pid) : property_id (pid) {} @@ -47,16 +47,17 @@ struct LIBPBD_API PropertyDescriptor { }; /** A list of IDs of Properties that have changed in some situation or other */ -class LIBPBD_API PropertyChange : public std::set<PropertyID> +class /*LIBPBD_API*/ PropertyChange : public std::set<PropertyID> { public: - PropertyChange() {} + LIBPBD_API PropertyChange() {} + LIBPBD_API ~PropertyChange() {} template<typename T> PropertyChange(PropertyDescriptor<T> p); - PropertyChange(const PropertyChange& other) : std::set<PropertyID> (other) {} + LIBPBD_API PropertyChange(const PropertyChange& other) : std::set<PropertyID> (other) {} - PropertyChange operator=(const PropertyChange& other) { + LIBPBD_API PropertyChange operator=(const PropertyChange& other) { clear (); insert (other.begin (), other.end ()); return *this; @@ -65,7 +66,7 @@ public: template<typename T> PropertyChange operator=(PropertyDescriptor<T> p); template<typename T> bool contains (PropertyDescriptor<T> p) const; - bool contains (const PropertyChange& other) const { + LIBPBD_API bool contains (const PropertyChange& other) const { for (const_iterator x = other.begin (); x != other.end (); ++x) { if (find (*x) != end ()) { return true; @@ -74,8 +75,8 @@ public: return false; } - void add (PropertyID id) { insert (id); } - void add (const PropertyChange& other) { insert (other.begin (), other.end ()); } + LIBPBD_API void add (PropertyID id) { insert (id); } + LIBPBD_API void add (const PropertyChange& other) { insert (other.begin (), other.end ()); } template<typename T> void add (PropertyDescriptor<T> p); }; diff --git a/libs/pbd/pbd/rcu.h b/libs/pbd/pbd/rcu.h index 6ee68afabf..eceec24cd5 100644 --- a/libs/pbd/pbd/rcu.h +++ b/libs/pbd/pbd/rcu.h @@ -45,7 +45,7 @@ and managed object. */ template<class T> -class LIBPBD_API RCUManager +class /*LIBPBD_API*/ RCUManager { public: @@ -111,7 +111,7 @@ class LIBPBD_API RCUManager means that no actual objects will be deleted incorrectly if this is misused. */ template<class T> -class LIBPBD_API SerializedRCUManager : public RCUManager<T> +class /*LIBPBD_API*/ SerializedRCUManager : public RCUManager<T> { public: @@ -214,7 +214,7 @@ private: */ template<class T> -class LIBPBD_API RCUWriter +class /*LIBPBD_API*/ RCUWriter { public: diff --git a/libs/pbd/pbd/ringbuffer.h b/libs/pbd/pbd/ringbuffer.h index 0e6772fee6..e3cec6adf1 100644 --- a/libs/pbd/pbd/ringbuffer.h +++ b/libs/pbd/pbd/ringbuffer.h @@ -26,7 +26,7 @@ #include "pbd/libpbd_visibility.h" template<class T> -class LIBPBD_API RingBuffer +class /*LIBPBD_API*/ RingBuffer { public: RingBuffer (guint sz) { @@ -120,7 +120,7 @@ class LIBPBD_API RingBuffer guint size_mask; }; -template<class T> LIBPBD_API guint +template<class T> /*LIBPBD_API*/ guint RingBuffer<T>::read (T *dest, guint cnt) { guint free_cnt; @@ -159,7 +159,7 @@ RingBuffer<T>::read (T *dest, guint cnt) return to_read; } -template<class T> LIBPBD_API guint +template<class T> /*LIBPBD_API*/ guint RingBuffer<T>::write (T const *src, guint cnt) { @@ -199,7 +199,7 @@ RingBuffer<T>::write (T const *src, guint cnt) return to_write; } -template<class T> LIBPBD_API void +template<class T> /*LIBPBD_API*/ void RingBuffer<T>::get_read_vector (typename RingBuffer<T>::rw_vector *vec) { @@ -240,7 +240,7 @@ RingBuffer<T>::get_read_vector (typename RingBuffer<T>::rw_vector *vec) } } -template<class T> LIBPBD_API void +template<class T> /*LIBPBD_API*/ void RingBuffer<T>::get_write_vector (typename RingBuffer<T>::rw_vector *vec) { diff --git a/libs/pbd/pbd/ringbufferNPT.h b/libs/pbd/pbd/ringbufferNPT.h index bf5b2a10c8..cd17299961 100644 --- a/libs/pbd/pbd/ringbufferNPT.h +++ b/libs/pbd/pbd/ringbufferNPT.h @@ -32,7 +32,7 @@ namespace PBD { /* ringbuffer class where the element size is not required to be a power of two */ template<class T> -class LIBPBD_API RingBufferNPT +class /*LIBPBD_API*/ RingBufferNPT { public: RingBufferNPT (size_t sz) { @@ -120,7 +120,7 @@ class LIBPBD_API RingBufferNPT mutable gint read_ptr; }; -template<class T> LIBPBD_API size_t +template<class T> /*LIBPBD_API*/ size_t RingBufferNPT<T>::read (T *dest, size_t cnt) { size_t free_cnt; @@ -159,7 +159,7 @@ RingBufferNPT<T>::read (T *dest, size_t cnt) return to_read; } -template<class T> LIBPBD_API size_t +template<class T> /*LIBPBD_API*/ size_t RingBufferNPT<T>::write (const T *src, size_t cnt) { size_t free_cnt; @@ -198,7 +198,7 @@ RingBufferNPT<T>::write (const T *src, size_t cnt) return to_write; } -template<class T> LIBPBD_API void +template<class T> /*LIBPBD_API*/ void RingBufferNPT<T>::get_read_vector (typename RingBufferNPT<T>::rw_vector *vec) { size_t free_cnt; @@ -238,7 +238,7 @@ RingBufferNPT<T>::get_read_vector (typename RingBufferNPT<T>::rw_vector *vec) } } -template<class T> LIBPBD_API void +template<class T> /*LIBPBD_API*/ void RingBufferNPT<T>::get_write_vector (typename RingBufferNPT<T>::rw_vector *vec) { size_t free_cnt; diff --git a/libs/pbd/pbd/search_path.h b/libs/pbd/pbd/search_path.h index 857c3a78b6..5203588f72 100644 --- a/libs/pbd/pbd/search_path.h +++ b/libs/pbd/pbd/search_path.h @@ -38,13 +38,13 @@ namespace PBD { * The Searchpath class does not test whether the paths exist * or are directories. It is basically just a container. */ -class LIBPBD_API SearchPath : public std::vector<std::string> +class /*LIBPBD_API*/ Searchpath : public std::vector<std::string> { public: /** * Create an empty Searchpath. */ - Searchpath (); + LIBPBD_API Searchpath (); /** * Initialize Searchpath from a string where the string contains @@ -57,7 +57,7 @@ public: * * @param search_path A path string. */ - Searchpath (const std::string& search_path); + LIBPBD_API Searchpath (const std::string& search_path); /** * Initialize Searchpath from a vector of paths that may or may @@ -65,7 +65,9 @@ public: * * @param paths A vector of paths. */ - Searchpath (const std::vector<std::string>& paths); + LIBPBD_API Searchpath (const std::vector<std::string>& paths); + + LIBPBD_API ~Searchpath () {}; /** * @return a search path string. @@ -73,39 +75,39 @@ public: * The string that is returned contains the platform specific * path separator. */ - const std::string to_string () const; + LIBPBD_API const std::string to_string () const; /** * Add all the directories in path to this. */ - Searchpath& operator+= (const Searchpath& spath); + LIBPBD_API Searchpath& operator+= (const Searchpath& spath); /** * Add another directory path to the search path. */ - Searchpath& operator+= (const std::string& directory_path); + LIBPBD_API Searchpath& operator+= (const std::string& directory_path); /** * Concatenate another Searchpath onto this. */ - Searchpath& operator+ (const Searchpath& other); + LIBPBD_API Searchpath& operator+ (const Searchpath& other); /** * Add another path to the search path. */ - Searchpath& operator+ (const std::string& directory_path); + LIBPBD_API Searchpath& operator+ (const std::string& directory_path); /** * Add a sub-directory to each path in the search path. * @param subdir The directory name, it should not contain * any path separating tokens. */ - Searchpath& add_subdirectory_to_paths (const std::string& subdir); + LIBPBD_API Searchpath& add_subdirectory_to_paths (const std::string& subdir); protected: - void add_directory (const std::string& directory_path); - void add_directories (const std::vector<std::string>& paths); + LIBPBD_API void add_directory (const std::string& directory_path); + LIBPBD_API void add_directories (const std::vector<std::string>& paths); }; } // namespace PBD diff --git a/libs/pbd/pbd/semaphore.h b/libs/pbd/pbd/semaphore.h index 6579ea6f0a..265a219e07 100644 --- a/libs/pbd/pbd/semaphore.h +++ b/libs/pbd/pbd/semaphore.h @@ -49,7 +49,7 @@ namespace PBD { only safe way to reliably signal from a real-time audio thread. The counting semantics also complement ringbuffers of events nicely. */ -class LIBPBD_API Semaphore +class /*LIBPBD_API*/ Semaphore { public: /** diff --git a/libs/pbd/pbd/sequence_property.h b/libs/pbd/pbd/sequence_property.h index 1c3078350f..e105e82e47 100644 --- a/libs/pbd/pbd/sequence_property.h +++ b/libs/pbd/pbd/sequence_property.h @@ -44,7 +44,7 @@ namespace PBD { * any change. */ template<typename Container> -class LIBPBD_API SequenceProperty : public PropertyBase +class /*LIBPBD_API*/ SequenceProperty : public PropertyBase { public: typedef std::set<typename Container::value_type> ChangeContainer; @@ -311,10 +311,10 @@ class LIBPBD_API SequenceProperty : public PropertyBase } Container& operator= (const Container& other) { - for (typename Container::iterator i = _val.begin(); i != _val.end(); ++i) { + for (typename Container::const_iterator i = _val.begin(); i != _val.end(); ++i) { _changes.remove (*i); } - for (typename Container::iterator i = other.begin(); i != other.end(); ++i) { + for (typename Container::const_iterator i = other.begin(); i != other.end(); ++i) { _changes.add (*i); } return _val = other; diff --git a/libs/pbd/pbd/signals.h b/libs/pbd/pbd/signals.h index 3896fd55b5..672dc66850 100644 --- a/libs/pbd/pbd/signals.h +++ b/libs/pbd/pbd/signals.h @@ -79,7 +79,7 @@ private: }; template<typename R> -class LIBPBD_API OptionalLastValue +class /*LIBPBD_API*/ OptionalLastValue { public: typedef boost::optional<R> result_type; diff --git a/libs/pbd/pbd/stacktrace.h b/libs/pbd/pbd/stacktrace.h index 77f5d38fb8..672ee2acad 100644 --- a/libs/pbd/pbd/stacktrace.h +++ b/libs/pbd/pbd/stacktrace.h @@ -40,10 +40,10 @@ namespace PBD { LIBPBD_API void stacktrace (std::ostream& out, int levels = 0); LIBPBD_API void trace_twb(); - std::string demangle (const std::string&); +/* JE - !!!! Declaration might possibly get removed (except it's still used in 'libs/canvas/item.cc') */ std::string demangle (const std::string&); template<typename T> -class LIBPBD_API thing_with_backtrace +class /*LIBPBD_API*/ thing_with_backtrace { public: thing_with_backtrace () { @@ -112,11 +112,11 @@ private: static Glib::Threads::Mutex all_mutex; }; -template<typename T> LIBPBD_API std::list<PBD::thing_with_backtrace<T> *> PBD::thing_with_backtrace<T>::all; -template<typename T> LIBPBD_API Glib::Threads::Mutex PBD::thing_with_backtrace<T>::all_mutex; +template<typename T> /*LIBPBD_API*/ std::list<PBD::thing_with_backtrace<T> *> PBD::thing_with_backtrace<T>::all; +template<typename T> /*LIBPBD_API*/ Glib::Threads::Mutex PBD::thing_with_backtrace<T>::all_mutex; } // namespace PBD - +// JE - !!!!#include "../pbd/stacktrace.impl" #endif /* __libpbd_stacktrace_h__ */ diff --git a/libs/pbd/pbd/stl_delete.h b/libs/pbd/pbd/stl_delete.h index b98bb5e8e3..1598a90e2c 100644 --- a/libs/pbd/pbd/stl_delete.h +++ b/libs/pbd/pbd/stl_delete.h @@ -26,7 +26,7 @@ first include the revelant container type header. */ #if defined(_CPP_VECTOR) || defined(_GLIBCXX_VECTOR) || defined(__SGI_STL_VECTOR) || defined(_LIBCPP_VECTOR) -template<class T> LIBPBD_API void vector_delete (std::vector<T *> *vec) +template<class T> /*LIBPBD_API*/ void vector_delete (std::vector<T *> *vec) { typename std::vector<T *>::iterator i; @@ -38,7 +38,7 @@ template<class T> LIBPBD_API void vector_delete (std::vector<T *> *vec) #endif // _CPP_VECTOR || _GLIBCXX_VECTOR || __SGI_STL_VECTOR || _LIBCPP_VECTOR #if defined(_CPP_MAP) || defined(_GLIBCXX_MAP) || defined(__SGI_STL_MAP) -template<class K, class T> LIBPBD_API void map_delete (std::map<K, T *> *m) +template<class K, class T> /*LIBPBD_API*/ void map_delete (std::map<K, T *> *m) { typename std::map<K, T *>::iterator i; @@ -50,7 +50,7 @@ template<class K, class T> LIBPBD_API void map_delete (std::map<K, T *> *m) #endif // _CPP_MAP || _GLIBCXX_MAP || __SGI_STL_MAP #if defined(_CPP_LIST) || defined(_GLIBCXX_LIST) || defined(__SGI_STL_LIST) -template<class T> LIBPBD_API void list_delete (std::list<T *> *l) +template<class T> /*LIBPBD_API*/ void list_delete (std::list<T *> *l) { typename std::list<T *>::iterator i; @@ -63,7 +63,7 @@ template<class T> LIBPBD_API void list_delete (std::list<T *> *l) #endif // _CPP_LIST || _GLIBCXX_LIST || __SGI_STL_LIST #if defined(_CPP_SLIST) || defined(_GLIBCXX_SLIST) || defined(__SGI_STL_SLIST) -template<class T> LIBPBD_API void slist_delete (std::slist<T *> *l) +template<class T> /*LIBPBD_API*/ void slist_delete (std::slist<T *> *l) { typename std::slist<T *>::iterator i; @@ -76,7 +76,7 @@ template<class T> LIBPBD_API void slist_delete (std::slist<T *> *l) #endif // _CPP_SLIST || _GLIBCXX_SLIST || __SGI_STL_SLIST #if defined(_CPP_SET) || defined(_GLIBCXX_SET) || defined(__SGI_STL_SET) -template<class T> void LIBPBD_API set_delete (std::set<T *> *sset) +template<class T> void /*LIBPBD_API*/ set_delete (std::set<T *> *sset) { typename std::set<T *>::iterator i; diff --git a/libs/pbd/pbd/tokenizer.h b/libs/pbd/pbd/tokenizer.h index b4b3b107c0..3253473519 100644 --- a/libs/pbd/pbd/tokenizer.h +++ b/libs/pbd/pbd/tokenizer.h @@ -37,7 +37,7 @@ namespace PBD { are discarded. */ template<typename StringType, typename Iter> -LIBPBD_API unsigned int +/*LIBPBD_API*/ unsigned int tokenize(const StringType& str, const StringType& delims, Iter it, diff --git a/libs/pbd/pbd/touchable.h b/libs/pbd/pbd/touchable.h index ed7d75df52..297be8b0f1 100644 --- a/libs/pbd/pbd/touchable.h +++ b/libs/pbd/pbd/touchable.h @@ -21,7 +21,7 @@ #include "pbd/libpbd_visibility.h" -class LIBPBD_API Touchable +class /*LIBPBD_API*/ Touchable { public: Touchable() : _delete_after_touch (false) {} @@ -37,7 +37,7 @@ class LIBPBD_API Touchable }; template<class T> -class LIBPBD_API DynamicTouchable : public Touchable +class /*LIBPBD_API*/ DynamicTouchable : public Touchable { public: DynamicTouchable (T& t, void (T::*m)(void)) @@ -53,7 +53,7 @@ class LIBPBD_API DynamicTouchable : public Touchable }; template<class T1, class T2> -class LIBPBD_API DynamicTouchable1 : public Touchable +class /*LIBPBD_API*/ DynamicTouchable1 : public Touchable { public: DynamicTouchable1 (T1& t, void (T1::*m)(T2), T2 a) @@ -70,7 +70,7 @@ class LIBPBD_API DynamicTouchable1 : public Touchable }; template<class T1, class T2, class T3> -class LIBPBD_API DynamicTouchable2 : public Touchable +class /*LIBPBD_API*/ DynamicTouchable2 : public Touchable { public: DynamicTouchable2 (T1& t, void (T1::*m)(T2, T3), T2 a1, T3 a2) diff --git a/libs/pbd/pbd/unknown_type.h b/libs/pbd/pbd/unknown_type.h index 4d984269a7..ef9db1ac43 100644 --- a/libs/pbd/pbd/unknown_type.h +++ b/libs/pbd/pbd/unknown_type.h @@ -22,9 +22,9 @@ #include <exception> -#include "pbd/libpbd_visibility.h" +//#include "pbd/libpbd_visibility.h" -class LIBPBD_API unknown_type : public std::exception { +class /*LIBPBD_API*/ unknown_type : public std::exception { public: virtual const char *what() const throw() { return "unknown type"; } }; diff --git a/libs/pbd/pbd/unwind.h b/libs/pbd/pbd/unwind.h index cf7998fdd4..5a0fe26559 100644 --- a/libs/pbd/pbd/unwind.h +++ b/libs/pbd/pbd/unwind.h @@ -25,7 +25,7 @@ namespace PBD { template <typename T> -class LIBPBD_API Unwinder { +class /*LIBPBD_API*/ Unwinder { public: Unwinder (T& var, T new_val) : _var (var), _old_val (var) { var = new_val; } ~Unwinder () { _var = _old_val; } diff --git a/libs/pbd/pbd/uuid.h b/libs/pbd/pbd/uuid.h index 7cef916c85..77e84c5f09 100644 --- a/libs/pbd/pbd/uuid.h +++ b/libs/pbd/pbd/uuid.h @@ -29,7 +29,7 @@ namespace PBD { -class LIBPBD_API UUID { +class LIBPBD_API UUID : public boost::uuids::uuid { public: UUID () diff --git a/libs/pbd/stacktrace.cc b/libs/pbd/stacktrace.cc index aa79b0f24d..5721c69c54 100644 --- a/libs/pbd/stacktrace.cc +++ b/libs/pbd/stacktrace.cc @@ -106,7 +106,7 @@ PBD::stacktrace (std::ostream& out, int levels) #else std::string -demangle (std::string const & l) +/* JE - !!!! 'PBD' namespace might possibly get removed (except it's still used in 'libs/canvas/item.cc') */PBD::demangle (std::string const & l) { return std::string(); } |