do not make unnecessary exports on nix platforms

This commit is contained in:
milek7
2021-01-30 16:00:58 +01:00
parent 372f99afee
commit ca8145904b
3 changed files with 17 additions and 3 deletions

View File

@@ -9,6 +9,8 @@ if(POLICY CMP0069)
cmake_policy(SET CMP0069 NEW)
endif()
include(CheckCXXSymbolExists)
set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/CMake_modules/")
@@ -329,6 +331,11 @@ set_target_properties( ${PROJECT_NAME}
DEBUG_POSTFIX "_d"
)
check_cxx_symbol_exists(__GNUC__ "" COMPILER_HAVE_GNUC)
if (COMPILER_HAVE_GNUC)
set_target_properties(${PROJECT_NAME} PROPERTIES COMPILE_FLAGS "-fvisibility=hidden")
endif()
if(NOT ${CMAKE_VERSION} VERSION_LESS "3.16.0")
option(USE_PCH "Use precompiled header" ON)

12
lua.cpp
View File

@@ -62,10 +62,16 @@ int lua::openffi(lua_State *s)
return 1;
}
#ifdef _WIN32
#define EXPORT __declspec(dllexport)
#if defined _WIN32
# if defined __GNUC__
# define EXPORT __attribute__ ((dllexport))
# else
# define EXPORT __declspec(dllexport)
# endif
#elif defined __GNUC__
# define EXPORT __attribute__ ((visibility ("default")))
#else
#define EXPORT
# define EXPORT
#endif
extern "C"

View File

@@ -2,6 +2,7 @@
#undef new
#endif
#define ASIO_DISABLE_VISIBILITY
#include <asio.hpp>
#include "network/network.h"