44 lines
1.5 KiB
CMake
44 lines
1.5 KiB
CMake
project(PyNFS)
|
|
|
|
set(SRC_FILES
|
|
"pynfs.h"
|
|
"pynfs.cpp"
|
|
"NFS.h"
|
|
"NFS.cpp"
|
|
"NFSFH.h"
|
|
"NFSFH.cpp"
|
|
"wildcards.hpp"
|
|
"fileutils.hpp")
|
|
|
|
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
|
|
|
find_package(Python2 COMPONENTS Interpreter Development REQUIRED)
|
|
message(STATUS "Project : ${PROJECT_NAME}")
|
|
message(STATUS "Python Site : ${Python2_SITELIB}")
|
|
message(STATUS "Python Include Dirs : ${Python2_INCLUDE_DIRS}")
|
|
message(STATUS "Python Library Dirs : ${Python2_LIBRARY_DIRS}")
|
|
message(STATUS "Python Library : ${Python2_LIBRARIES}")
|
|
|
|
include_directories(
|
|
${Python2_INCLUDE_DIRS}
|
|
"${CMAKE_SOURCE_DIR}/vendor/libnfs/include"
|
|
"${CMAKE_SOURCE_DIR}/vendor/pybind11/include"
|
|
"${CMAKE_SOURCE_DIR}/vendor/pystring/include"
|
|
)
|
|
link_directories(
|
|
${Python2_LIBRARY_DIRS}
|
|
"${CMAKE_SOURCE_DIR}/vendor/libnfs/lib"
|
|
"${CMAKE_SOURCE_DIR}/vendor/pystring/lib"
|
|
)
|
|
|
|
add_library(${PROJECT_NAME} SHARED ${SRC_FILES})
|
|
add_custom_command(TARGET ${PROJECT_NAME}
|
|
POST_BUILD COMMAND "copy" ARGS "$(TargetDir)$(TargetFileName)" "${Python2_SITELIB}\\${PROJECT_NAME}" "/Y/B")
|
|
target_link_libraries(${PROJECT_NAME} nfs pystring ${Python2_LIBRARIES})
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME "_${PROJECT_NAME}")
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES SUFFIX ".pyd")
|
|
|
|
install(TARGETS ${PROJECT_NAME}
|
|
RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/${PROJECT_NAME}")
|
|
install(FILES "${CMAKE_SOURCE_DIR}/python/${PROJECT_NAME}/__init__.py"
|
|
DESTINATION ${CMAKE_INSTALL_PREFIX}/${PROJECT_NAME}) |