uchardet/src/symbols.cmake
Ilya Tumaykin b44be77be6
cmake: uniform indent everywhere
Indent with tabs, remove leading/trailing blank lines and spaces.
2016-03-21 01:07:41 +03:00

36 lines
912 B
CMake

set(
UCHARDET_SYMBOLS
uchardet_new
uchardet_delete
uchardet_handle_data
uchardet_data_end
uchardet_reset
uchardet_get_charset
)
set (LINK_FLAGS "")
if (APPLE)
# Create a symbols_list file for the darwin linker.
string(REPLACE ";" "\n_" _symbols "${UCHARDET_SYMBOLS}")
set(_symbols_list "${CMAKE_CURRENT_BINARY_DIR}/symbols.list")
file(WRITE ${_symbols_list} "_${_symbols}\n")
set(LINK_FLAGS
"${LINK_FLAGS} -Wl,-exported_symbols_list,'${_symbols_list}'")
elseif (CMAKE_CXX_COMPILER_ID STREQUAL GNU)
# Create a version script for GNU ld.
set(_symbols "{ global: ${UCHARDET_SYMBOLS}; local: *; };")
set(_version_script "${CMAKE_CURRENT_BINARY_DIR}/version.script")
file(WRITE ${_version_script} "${_symbols}\n")
set(LINK_FLAGS "${LINK_FLAGS} -Wl,--version-script,\"${_version_script}\"")
endif (APPLE)
set_target_properties(
${UCHARDET_TARGET}
PROPERTIES
LINK_FLAGS
"${LINK_FLAGS}"
)