Module: sems Branch: 1.4 Commit: 2db6efff3b4bfe91a4b1b2c65dd8c05336a1c6b4 URL: http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=2db6efff3b4bfe91a4b1b2c65dd8c05336a1c6b4
Author: Raphael Coeffic <[email protected]> Committer: Raphael Coeffic <[email protected]> Date: Thu Mar 17 14:24:20 2011 +0300 Fix compiling with cmake on MacOSX Tested-by: Peter Lemenkov <[email protected]> --- CMakeLists.txt | 1 + cmake/dsm.lib.rules.txt | 10 +++++++++- cmake/module.rules.txt | 10 +++++++++- core/plug-in/speex/CMakeLists.txt | 3 +++ 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9390975..257743a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -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) diff --git a/cmake/dsm.lib.rules.txt b/cmake/dsm.lib.rules.txt index c7daa27..1358b48 100644 --- a/cmake/dsm.lib.rules.txt +++ b/cmake/dsm.lib.rules.txt @@ -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} diff --git a/cmake/module.rules.txt b/cmake/module.rules.txt index af0694a..9a8636e 100644 --- a/cmake/module.rules.txt +++ b/cmake/module.rules.txt @@ -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} diff --git a/core/plug-in/speex/CMakeLists.txt b/core/plug-in/speex/CMakeLists.txt index 6508fc0..a2ee909 100644 --- a/core/plug-in/speex/CMakeLists.txt +++ b/core/plug-in/speex/CMakeLists.txt @@ -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) _______________________________________________ Semsdev mailing list [email protected] http://lists.iptel.org/mailman/listinfo/semsdev
