mirror of
https://github.com/GerbilSoft/rvthtool.git
synced 2025-06-18 11:35:33 -04:00
28 lines
1.0 KiB
CMake
28 lines
1.0 KiB
CMake
# Check what flags are needed for hidden visibility.
|
|
# Usage: CHECK_HIDDEN_VISIBILITY()
|
|
#
|
|
# NOTE: Do NOT use this for extlibs, since many extlibs, including
|
|
# zlib, don't work properly if symbols aren't visible by default.
|
|
|
|
MACRO(CHECK_HIDDEN_VISIBILITY)
|
|
# Check for visibility symbols.
|
|
IF(POLICY CMP0063)
|
|
# CMake 3.3: Use CMake predefined variables.
|
|
# NOTE: CMake 3.0-3.2 do not apply these settings
|
|
# to static libraries, so we have to fall back to the
|
|
# "deprecated" ADD_COMPILER_EXPORT_FLAGS().
|
|
CMAKE_POLICY(SET CMP0063 NEW)
|
|
SET(CMAKE_C_VISIBILITY_PRESET "hidden")
|
|
SET(CMAKE_CXX_VISIBILITY_PRESET "hidden")
|
|
SET(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
|
|
ELSE()
|
|
# CMake 2.x, 3.0-3.2: Use ADD_COMPILER_EXPORT_FLAGS().
|
|
# NOTE: 3.0+ will show a deprecation warning.
|
|
INCLUDE(GenerateExportHeader)
|
|
ADD_COMPILER_EXPORT_FLAGS(RP_COMPILER_EXPORT_FLAGS)
|
|
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${RP_COMPILER_EXPORT_FLAGS}")
|
|
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${RP_COMPILER_EXPORT_FLAGS}")
|
|
UNSET(RP_COMPILER_EXPORT_FLAGS)
|
|
ENDIF()
|
|
ENDMACRO()
|