fixed build for macOS

This commit is contained in:
Eberhard Graether
2018-12-13 12:39:51 +01:00
parent cba4e7318f
commit af43432e52
4 changed files with 33 additions and 19 deletions
+27 -13
View File
@@ -28,17 +28,14 @@ set(GENERATED_SRC_DIR "${CMAKE_CURRENT_BINARY_DIR}/src")
set(SWIG_INTERFACE_FILE "${RESOURCES_SWIG_DIR}/interface/${PACKAGE_NAME}.i")
set(GENERATED_WRAPPER_FILE "${GENERATED_SRC_DIR}/${PACKAGE_NAME}_wrap.cxx")
file(WRITE ${GENERATED_WRAPPER_FILE} "")
if (WIN32)
file(WRITE ${GENERATED_WRAPPER_FILE} "")
endif ()
set(SRC_FILES
set(SRC_FILES
"${RESOURCES_SWIG_DIR}/src/${PACKAGE_NAME}.cpp"
${GENERATED_WRAPPER_FILE}
)
set(HDR_FILES
set(HDR_FILES
"${RESOURCES_SWIG_DIR}/include/${PACKAGE_NAME}.h"
)
@@ -48,14 +45,31 @@ set(HDR_FILES
add_library(${LIB_BINDINGS_PYTHON} SHARED ${SRC_FILES} ${HDR_FILES} ${SWIG_INTERFACE_FILE})
set_target_properties(${LIB_BINDINGS_PYTHON} PROPERTIES OUTPUT_NAME "_${PACKAGE_NAME}")
set_target_properties(${LIB_BINDINGS_PYTHON} PROPERTIES SUFFIX ".pyd")
add_custom_command(
TARGET ${LIB_BINDINGS_PYTHON}
PRE_BUILD
COMMAND if not exist \"${GENERATED_SRC_DIR}\" mkdir \"${GENERATED_SRC_DIR}\" \n swig -c++ -python -I${RESOURCES_SWIG_DIR}/include -o ${GENERATED_WRAPPER_FILE} -outdir ${CMAKE_CURRENT_BINARY_DIR}/$(CONFIGURATION) ${SWIG_INTERFACE_FILE}
COMMENT "Generating wrapper code file."
)
if (WIN32)
set_target_properties(${LIB_BINDINGS_PYTHON} PROPERTIES SUFFIX ".pyd")
else()
# Remove 'lib' prefix
set_target_properties(${LIB_BINDINGS_PYTHON} PROPERTIES PREFIX "")
set_target_properties(${LIB_BINDINGS_PYTHON} PROPERTIES SUFFIX ".so")
endif()
if (WIN32)
add_custom_command(
TARGET ${LIB_BINDINGS_PYTHON}
PRE_BUILD
COMMAND if not exist \"${GENERATED_SRC_DIR}\" mkdir \"${GENERATED_SRC_DIR}\" \n swig -c++ -python -I${RESOURCES_SWIG_DIR}/include -o ${GENERATED_WRAPPER_FILE} -outdir ${CMAKE_CURRENT_BINARY_DIR}/$(CONFIGURATION) ${SWIG_INTERFACE_FILE}
COMMENT "Generating wrapper code file."
)
else()
add_custom_command(
TARGET ${LIB_BINDINGS_PYTHON}
PRE_BUILD
COMMAND swig -c++ -python -I${RESOURCES_SWIG_DIR}/include -o ${GENERATED_WRAPPER_FILE} -outdir ${CMAKE_CURRENT_BINARY_DIR} ${SWIG_INTERFACE_FILE}
COMMENT "Generating wrapper code file."
)
endif()
target_include_directories(${LIB_BINDINGS_PYTHON} PUBLIC
"${RESOURCES_SWIG_DIR}/include"