diff options
author | Robin Gareus <robin@gareus.org> | 2016-04-04 13:42:50 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-04-04 13:42:50 +0200 |
commit | 8d26a67ddd855ba1461501b315bf4e917cbaad9d (patch) | |
tree | d927fa259d8b6343844554c776a7da2573694b3f /libs/lua/lua.cc | |
parent | 1feb50b2b2df1626ffabeba7191915d8f18dd287 (diff) |
liblua visibility and compiler-flags
Diffstat (limited to 'libs/lua/lua.cc')
-rw-r--r-- | libs/lua/lua.cc | 55 |
1 files changed, 40 insertions, 15 deletions
diff --git a/libs/lua/lua.cc b/libs/lua/lua.cc index cc6593a13d..c86938f126 100644 --- a/libs/lua/lua.cc +++ b/libs/lua/lua.cc @@ -1,16 +1,35 @@ +/* This is a C++ wrapper to compile the lua C code + * with settings appropriate for including it with + * Ardour. + */ + +#include "lua/liblua_visibility.h" + #if _MSC_VER -#pragma push_macro("_CRT_SECURE_NO_WARNINGS") -#ifndef _CRT_SECURE_NO_WARNINGS -#define _CRT_SECURE_NO_WARNINGS -#endif +# pragma push_macro("_CRT_SECURE_NO_WARNINGS") +# ifndef _CRT_SECURE_NO_WARNINGS +# define _CRT_SECURE_NO_WARNINGS +# endif +#elif defined(__clang__) +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wcast-qual" +#elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Wcast-qual" #endif +// forward ardour's defines to luaconf.h #ifdef PLATFORM_WINDOWS -# define LUA_USE_WINDOWS +# define LUA_USE_WINDOWS #elif defined __APPLE__ -# define LUA_USE_MACOSX +# define LUA_USE_MACOSX #else -# define LUA_USE_LINUX +# define LUA_USE_LINUX +#endif + +// forward liblua visibility to luaconf.h +#ifdef LIBLUA_BUILD_AS_DLL +#define LUA_BUILD_AS_DLL #endif extern "C" @@ -27,12 +46,14 @@ extern "C" #undef LUA_LIB // override luaconf.h symbol export -#undef LUA_API -#undef LUALIB_API -#undef LUAMOD_API -#define LUA_API extern "C" -#define LUALIB_API LUA_API -#define LUAMOD_API LUALIB_API +#ifdef LIBLUA_STATIC // static lib (no DLL) +# undef LUA_API +# undef LUALIB_API +# undef LUAMOD_API +# define LUA_API extern "C" +# define LUALIB_API LUA_API +# define LUAMOD_API LUALIB_API +#endif // disable support for extenal libs #undef LUA_DL_DLL @@ -89,8 +110,12 @@ extern "C" #pragma warning (pop) #endif -} +} // end extern "C" #if _MSC_VER -#pragma pop_macro("_CRT_SECURE_NO_WARNINGS") +# pragma pop_macro("_CRT_SECURE_NO_WARNINGS") +#elif defined(__clang__) +# pragma clang diagnostic pop +#elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) +# pragma GCC diagnostic pop #endif |