1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
add_library(blosc_extension MODULE blosc_extension.c)
if(USE_SYSTEM_BLOSC)
set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
find_package(Blosc REQUIRED)
target_include_directories(blosc_extension PRIVATE ${Blosc_INCLUDE_DIRS})
target_link_libraries(blosc_extension ${Blosc_LIBRARIES})
else()
set(BUILD_STATIC ON CACHE BOOL "Build a static version of the blosc library.")
set(BUILD_SHARED ON CACHE BOOL "Build a shared library version of the blosc library.")
set(BUILD_TESTS OFF CACHE BOOL "Build C-Blosc tests")
set(BUILD_EXAMPLES OFF CACHE BOOL "Build C-Blosc examples")
set(BUILD_BENCHMARKS OFF CACHE BOOL "Build C-Blosc benchmarks")
set(BUILD_FUZZERS OFF CACHE BOOL "Build C-Blosc fuzzers")
set(BLOSC_IS_SUBPROJECT OFF CACHE BOOL "Blosc is subproject")
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
add_subdirectory(c-blosc)
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/c-blosc/blosc")
target_link_libraries(blosc_extension blosc_static)
endif()
python_extension_module(blosc_extension)
add_custom_command(
TARGET blosc_extension POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:blosc_extension> ${CMAKE_SOURCE_DIR}/blosc
)
install(TARGETS blosc_extension LIBRARY DESTINATION blosc)
|