aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorVitaly Novichkov <admin@wohlnet.ru>2018-07-31 00:13:00 +0300
committerVitaly Novichkov <admin@wohlnet.ru>2018-07-31 00:13:00 +0300
commit652d90bc7bcd0929e20bc32699042e012a103787 (patch)
tree492574af03cedb1d52ded0423b5993a8f0b43dfd /CMakeLists.txt
parent6d48a253fe63b5e18ee03dd8c1f090323182f219 (diff)
parent712caa418c79c9977d2e6ba5f7cf10b285d6a94c (diff)
downloadlibADLMIDI-652d90bc7bcd0929e20bc32699042e012a103787.tar.gz
libADLMIDI-652d90bc7bcd0929e20bc32699042e012a103787.tar.bz2
libADLMIDI-652d90bc7bcd0929e20bc32699042e012a103787.zip
Merge branch 'master' into fullpan
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt14
1 files changed, 14 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ab3e7e5..2d4cec2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -65,6 +65,15 @@ function(set_legacy_standard destTarget)
endif()
endif()
endfunction()
+
+function(set_visibility_hidden destTarget)
+ if(CMAKE_C_COMPILER_ID MATCHES "^(GNU|Clang)$")
+ target_compile_options(${destTarget} PRIVATE
+ -fvisibility=hidden -fvisibility-inlines-hidden)
+ target_compile_definitions(${destTarget} PRIVATE
+ "LIBADLMIDI_VISIBILITY")
+ endif()
+endfunction()
#===========================================================================================
option(libADLMIDI_STATIC "Build static library of libADLMIDI" ON)
@@ -273,6 +282,7 @@ if(libADLMIDI_STATIC)
set_target_properties(ADLMIDI_static PROPERTIES OUTPUT_NAME ADLMIDI)
target_include_directories(ADLMIDI_static PUBLIC ${libADLMIDI_SOURCE_DIR}/include)
set_legacy_standard(ADLMIDI_static)
+ set_visibility_hidden(ADLMIDI_static)
list(APPEND libADLMIDI_INSTALLS ADLMIDI_static)
if(WITH_EMBEDDED_BANKS AND WITH_GENADLDATA)
add_dependencies(ADLMIDI_static gen-adldata-run)
@@ -284,7 +294,11 @@ if(libADLMIDI_SHARED)
set_target_properties(ADLMIDI_shared PROPERTIES OUTPUT_NAME ADLMIDI)
target_include_directories(ADLMIDI_shared PUBLIC ${libADLMIDI_SOURCE_DIR}/include)
set_legacy_standard(ADLMIDI_shared)
+ set_visibility_hidden(ADLMIDI_shared)
list(APPEND libADLMIDI_INSTALLS ADLMIDI_shared)
+ if(WIN32)
+ target_compile_definitions(ADLMIDI_shared PRIVATE "-DADLMIDI_BUILD_DLL")
+ endif()
if(WITH_EMBEDDED_BANKS AND WITH_GENADLDATA)
add_dependencies(ADLMIDI_shared gen-adldata-run)
endif()