Fix compiling with cmake on MacOSX

Tested-by: Peter Lemenkov <lemenkov@gmail.com>
sayer/1.4-spce2.6
Raphael Coeffic 16 years ago
parent 0dd8b15d7a
commit 2db6efff3b

@ -3,6 +3,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
IF(COMMAND cmake_policy)
# Don't do automatic escaping of variables
CMAKE_POLICY(SET CMP0005 OLD)
CMAKE_POLICY(SET CMP0003 NEW)
ENDIF(COMMAND cmake_policy)

@ -7,13 +7,21 @@ INCLUDE_DIRECTORIES (../..)
# issue then this name is equals to external library, our module links to.
# E.g. the issue, then speex module should be linked to -lspeex
ADD_LIBRARY(sems_dsm_${sems_dsm_module_name} SHARED ${${sems_dsm_module_name}_SRCS})
ADD_LIBRARY(sems_dsm_${sems_dsm_module_name} MODULE ${${sems_dsm_module_name}_SRCS})
IF(APPLE)
SET(CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS
"${CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS} -flat_namespace -undefined suppress")
SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS
"${CMAKE_SHARED_MODULE_CREATE_C_FLAGS} -flat_namespace -undefined suppress")
ENDIF(APPLE)
# all modules should be linked against ${CMAKE_DL_LIBS} at least
# and with additional ${sems_dsm_module_libs} if they exists
TARGET_LINK_LIBRARIES(sems_dsm_${sems_dsm_module_name} ${CMAKE_DL_LIBS} ${sems_dsm_module_libs})
SET_TARGET_PROPERTIES(sems_dsm_${sems_dsm_module_name} PROPERTIES OUTPUT_NAME ${sems_dsm_module_name})
SET_TARGET_PROPERTIES(sems_dsm_${sems_dsm_module_name} PROPERTIES PREFIX "")
INSTALL(
TARGETS sems_dsm_${sems_dsm_module_name}

@ -8,7 +8,14 @@ INCLUDE(${CMAKE_SOURCE_DIR}/cmake/doc.rules.txt)
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt)
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt)
ADD_LIBRARY(sems_${sems_module_name} SHARED ${${sems_module_name}_SRCS})
ADD_LIBRARY(sems_${sems_module_name} MODULE ${${sems_module_name}_SRCS})
IF(APPLE)
SET(CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS
"${CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS} -flat_namespace -undefined suppress")
SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS
"${CMAKE_SHARED_MODULE_CREATE_C_FLAGS} -flat_namespace -undefined suppress")
ENDIF(APPLE)
ADD_DEFINITIONS(-DMOD_NAME=\\\"${sems_module_name}\\\")
@ -17,6 +24,7 @@ ADD_DEFINITIONS(-DMOD_NAME=\\\"${sems_module_name}\\\")
TARGET_LINK_LIBRARIES(sems_${sems_module_name} ${CMAKE_DL_LIBS} ${sems_module_libs})
SET_TARGET_PROPERTIES(sems_${sems_module_name} PROPERTIES OUTPUT_NAME ${sems_module_name})
SET_TARGET_PROPERTIES(sems_${sems_module_name} PROPERTIES PREFIX "")
INSTALL(
TARGETS sems_${sems_module_name}

@ -6,6 +6,9 @@ INCLUDE_DIRECTORIES(${SPEEX_INCLUDE_DIR})
# module_cflags = -ansi # -DNOFPU
add_library(speex SHARED IMPORTED)
set_property(TARGET speex PROPERTY IMPORTED_LOCATION ${SPEEX_LIBRARIES})
SET(sems_module_name speex)
SET(sems_module_libs speex)
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt)

Loading…
Cancel
Save