File python-blosc2-pr92-debundle.patch of Package failed_python-blosc2
From a1e419ddc9773ab6cc80c397e39935e9b6b76ded Mon Sep 17 00:00:00 2001
From: Bruno Pagani <bruno.n.pagani@gmail.com>
Date: Mon, 9 Jan 2023 21:29:58 +0100
Subject: [PATCH] Enable possibility to use an already installed C-Blosc2
library
---
blosc2/CMakeLists.txt | 38 +++++++++++++++++++++-----------------
cmake/FindBlosc2.cmake | 12 ++++++++++++
2 files changed, 33 insertions(+), 17 deletions(-)
create mode 100644 cmake/FindBlosc2.cmake
Index: blosc2-2.0.0/blosc2/CMakeLists.txt
===================================================================
--- blosc2-2.0.0.orig/blosc2/CMakeLists.txt
+++ blosc2-2.0.0/blosc2/CMakeLists.txt
@@ -1,23 +1,28 @@
-set(STATIC_LIB ON CACHE BOOL "Build a static version of the blosc library.")
-set(SHARED_LIB ON CACHE BOOL "Build a shared library version of the blosc library.")
-
-set(BUILD_TESTS OFF CACHE BOOL "Build C-Blosc2 tests")
-set(BUILD_EXAMPLES OFF CACHE BOOL "Build C-Blosc2 examples")
-set(BUILD_BENCHMARKS OFF CACHE BOOL "Build C-Blosc2 benchmarks")
-set(BUILD_FUZZERS OFF CACHE BOOL "Build C-Blosc2 fuzzers")
-
-set(CMAKE_POSITION_INDEPENDENT_CODE ON)
-# we want the binaries of the C-Blosc2 library to go into the wheels
-set(BLOSC_INSTALL ON)
-add_subdirectory(c-blosc2)
-include_directories("${CMAKE_CURRENT_SOURCE_DIR}/c-blosc2/include")
-include_directories("${Python_NumPy_INCLUDE_DIRS}")
-
-
add_cython_target(blosc2_ext blosc2_ext.pyx)
add_library(blosc2_ext MODULE ${blosc2_ext})
-target_link_libraries(blosc2_ext blosc2_static)
+if(USE_SYSTEM_BLOSC2)
+ set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
+ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(Blosc2 REQUIRED blosc2)
+ target_include_directories(blosc2_ext PRIVATE ${Blosc2_INCLUDE_DIRS})
+ target_link_libraries(blosc2_ext ${Blosc2_LDFLAGS})
+else()
+ set(STATIC_LIB ON CACHE BOOL "Build a static version of the blosc library.")
+ set(SHARED_LIB ON CACHE BOOL "Build a shared library version of the blosc library.")
+ set(BUILD_TESTS OFF CACHE BOOL "Build C-Blosc2 tests")
+ set(BUILD_EXAMPLES OFF CACHE BOOL "Build C-Blosc2 examples")
+ set(BUILD_BENCHMARKS OFF CACHE BOOL "Build C-Blosc2 benchmarks")
+ set(BUILD_FUZZERS OFF CACHE BOOL "Build C-Blosc2 fuzzers")
+ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+ # we want the binaries of the C-Blosc2 library to go into the wheels
+ set(BLOSC_INSTALL ON)
+ add_subdirectory(c-blosc2)
+ include_directories("${CMAKE_CURRENT_SOURCE_DIR}/c-blosc2/include")
+ target_link_libraries(blosc2_ext blosc2_static)
+endif()
+
+include_directories("${Python_NumPy_INCLUDE_DIRS}")
python_extension_module(blosc2_ext)