Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package flann for openSUSE:Factory checked in at 2022-10-10 18:47:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/flann (Old) and /work/SRC/openSUSE:Factory/.flann.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "flann" Mon Oct 10 18:47:02 2022 rev:5 rq:1008939 version:1.9.2 Changes: -------- --- /work/SRC/openSUSE:Factory/flann/flann.changes 2022-09-14 13:45:16.837939343 +0200 +++ /work/SRC/openSUSE:Factory/.flann.new.2275/flann.changes 2022-10-10 18:47:27.507243694 +0200 @@ -1,0 +2,9 @@ +Thu Oct 6 15:27:24 UTC 2022 - Stefan Br??ns <stefan.bru...@rwth-aachen.de> + +- Make sure lz4 is referenced correctly from CMake and pkgconfig + * Add fix_lz4_linkage.patch + * Add 0001-Fix-LZ4_LDFLAGS-format-for-pkgconfig-file.patch +- Add liblz4 devel dependency +- Correct CMake config install patch + +------------------------------------------------------------------- New: ---- 0001-Fix-LZ4_LDFLAGS-format-for-pkgconfig-file.patch fix_lz4_linkage.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ flann.spec ++++++ --- /var/tmp/diff_new_pack.OGrZMl/_old 2022-10-10 18:47:27.995244755 +0200 +++ /var/tmp/diff_new_pack.OGrZMl/_new 2022-10-10 18:47:28.003244773 +0200 @@ -26,7 +26,11 @@ URL: https://www.cs.ubc.ca/research/flann/ Source: https://github.com/tkircher/flann/releases/download/%version/flann-%version.tar.xz # PATCH-FIX-UPSTREAM -Patch0: 0001-Cleanup-library-build-make-static-library-optional.patch +Patch0: https://github.com/tkircher/flann/commit/c9572a40574c18a79e50b6a8c0043a8cafed6e69.patch#/fix_lz4_linkage.patch +# PATCH-FIX-UPSTREAM +Patch1: 0001-Cleanup-library-build-make-static-library-optional.patch +# PATCH-FIX-UPSTREAM +Patch2: 0001-Fix-LZ4_LDFLAGS-format-for-pkgconfig-file.patch BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: googletest-devel @@ -54,6 +58,7 @@ Summary: Development files for %{name} Group: Development/Libraries/C and C++ Requires: lib%{name}%{sover} = %{version} +Requires: liblz4-devel %description devel Fast Library for Approximate Nearest Neighbors. @@ -63,6 +68,8 @@ %prep %autosetup -p1 +# Correct install path for CMake config +sed -i -e 's@\(set(config_install_dir\).*)@\1 "%{_libdir}/cmake/flann")@' CMakeLists.txt %build %cmake \ @@ -89,6 +96,6 @@ %{_includedir}/%{name}/ %{_libdir}/lib%{name}*so %{_libdir}/pkgconfig/%{name}.pc -%{_prefix}/lib/cmake/ +%{_libdir}/cmake/flann %changelog ++++++ 0001-Cleanup-library-build-make-static-library-optional.patch ++++++ --- /var/tmp/diff_new_pack.OGrZMl/_old 2022-10-10 18:47:28.051244877 +0200 +++ /var/tmp/diff_new_pack.OGrZMl/_new 2022-10-10 18:47:28.055244886 +0200 @@ -23,7 +23,7 @@ index d8bff04..1ebcecc 100644 --- a/src/cpp/CMakeLists.txt +++ b/src/cpp/CMakeLists.txt -@@ -13,7 +13,14 @@ target_link_libraries(flann_cpp_s ${LZ4_LINK_LIBRARIES}) +@@ -13,7 +13,14 @@ target_link_libraries(flann_cpp_s PUBLIC ${LZ4_LINK_LIBRARIES}) if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG) set_target_properties(flann_cpp_s PROPERTIES COMPILE_FLAGS -fPIC) endif() @@ -39,7 +39,7 @@ if (BUILD_CUDA_LIB) SET(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS};-DFLANN_USE_CUDA") -@@ -27,28 +34,27 @@ if (BUILD_CUDA_LIB) +@@ -27,29 +34,27 @@ if (BUILD_CUDA_LIB) endif() cuda_add_library(flann_cuda_s STATIC ${CU_SOURCES}) set_property(TARGET flann_cuda_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC) @@ -61,6 +61,7 @@ - add_library(flann_cpp SHARED dummy.c) set_target_properties(flann_cpp PROPERTIES LINKER_LANGUAGE CXX) - target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive) + target_link_libraries(flann_cpp PUBLIC ${LZ4_LINK_LIBRARIES}) - - if (BUILD_CUDA_LIB) - cuda_add_library(flann_cuda SHARED dummy.c) @@ -68,10 +69,9 @@ - target_link_libraries(flann_cuda -Wl,-whole-archive flann_cuda_s -Wl,-no-whole-archive) - set_property(TARGET flann_cpp_s PROPERTY COMPILE_DEFINITIONS FLANN_USE_CUDA) - endif() -+ target_link_libraries(flann_cpp ${LZ4_LINK_LIBRARIES}) else() - add_library(flann_cpp SHARED ${CPP_SOURCES}) - target_link_libraries(flann_cpp ${LZ4_LINK_LIBRARIES}) + target_link_libraries(flann_cpp PUBLIC ${LZ4_LINK_LIBRARIES}) # export lz4 headers, so that MSVC to creates flann_cpp.lib set_target_properties(flann_cpp PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS YES) - if (BUILD_CUDA_LIB) @@ -81,7 +81,7 @@ endif() set_target_properties(flann_cpp PROPERTIES -@@ -85,13 +91,17 @@ if (BUILD_C_BINDINGS) +@@ -85,14 +91,17 @@ if (BUILD_C_BINDINGS) set_target_properties(flann_s PROPERTIES COMPILE_FLAGS -fPIC) endif() set_property(TARGET flann_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC) @@ -97,10 +97,10 @@ - add_library(flann SHARED dummy.c) - set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX) - target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive) -+ target_link_libraries(flann ${LZ4_LINK_LIBRARIES}) + target_link_libraries(flann PUBLIC ${LZ4_LINK_LIBRARIES}) else() - add_library(flann SHARED ${C_SOURCES}) - target_link_libraries(flann ${LZ4_LINK_LIBRARIES}) + target_link_libraries(flann PUBLIC ${LZ4_LINK_LIBRARIES}) if(MINGW AND OPENMP_FOUND) @@ -117,7 +127,7 @@ endif(WIN32) ++++++ 0001-Fix-LZ4_LDFLAGS-format-for-pkgconfig-file.patch ++++++ >From 39aa2405f59f7c058d88e692f2bbebf06dc59004 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bru...@rwth-aachen.de> Date: Thu, 6 Oct 2022 18:07:07 +0200 Subject: [PATCH] Fix LZ4_LDFLAGS format for pkgconfig file CMake pkg_check_module puts all linker flags from pkgcconfig in a semicolon separated list, which must be converted to space separated before substituting the variable in flann's pkgconfig file. --- cmake/CMakeLists.txt | 1 + cmake/flann.pc.in | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index fb70f4c..c7413df 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -1,5 +1,6 @@ set(PKG_DESC "Fast Library for Approximate Nearest Neighbors") set(pkg_conf_file ${CMAKE_CURRENT_BINARY_DIR}/flann.pc) +string(JOIN " " PKG_LZ4_libs ${LZ4_LDFLAGS}) configure_file(flann.pc.in ${pkg_conf_file} @ONLY) install(FILES ${pkg_conf_file} DESTINATION ${FLANN_LIB_INSTALL_DIR}/pkgconfig/ COMPONENT pkgconfig) diff --git a/cmake/flann.pc.in b/cmake/flann.pc.in index 07b8d64..8ee2036 100644 --- a/cmake/flann.pc.in +++ b/cmake/flann.pc.in @@ -8,6 +8,6 @@ Name: @PROJECT_NAME@ Description: @PKG_DESC@ Version: @FLANN_VERSION@ Requires: @PKG_EXTERNAL_DEPS@ -Libs: -L${libdir} @LZ4_STATIC_LDFLAGS@ -lflann -lflann_cpp +Libs: -L${libdir} @PKG_LZ4_libs@ -lflann -lflann_cpp Cflags: -I${includedir} -- 2.37.3 ++++++ fix_lz4_linkage.patch ++++++ >From c9572a40574c18a79e50b6a8c0043a8cafed6e69 Mon Sep 17 00:00:00 2001 From: Maarten de Vries <maar...@de-vri.es> Date: Mon, 18 Oct 2021 10:56:42 +0200 Subject: [PATCH] Ensure LZ4 is added to the interface link libraries of shared libraries. --- src/cpp/CMakeLists.txt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt index 10135703..a75059f9 100644 --- a/src/cpp/CMakeLists.txt +++ b/src/cpp/CMakeLists.txt @@ -9,7 +9,7 @@ file(GLOB_RECURSE CPP_SOURCES flann_cpp.cpp) file(GLOB_RECURSE CU_SOURCES *.cu) add_library(flann_cpp_s STATIC ${CPP_SOURCES}) -target_link_libraries(flann_cpp_s ${LZ4_LINK_LIBRARIES}) +target_link_libraries(flann_cpp_s PUBLIC ${LZ4_LINK_LIBRARIES}) if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG) set_target_properties(flann_cpp_s PROPERTIES COMPILE_FLAGS -fPIC) endif() @@ -33,6 +33,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC) add_library(flann_cpp SHARED dummy.c) set_target_properties(flann_cpp PROPERTIES LINKER_LANGUAGE CXX) target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive) + target_link_libraries(flann_cpp PUBLIC ${LZ4_LINK_LIBRARIES}) if (BUILD_CUDA_LIB) cuda_add_library(flann_cuda SHARED dummy.c) @@ -42,7 +43,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC) endif() else() add_library(flann_cpp SHARED ${CPP_SOURCES}) - target_link_libraries(flann_cpp ${LZ4_LINK_LIBRARIES}) + target_link_libraries(flann_cpp PUBLIC ${LZ4_LINK_LIBRARIES}) # export lz4 headers, so that MSVC to creates flann_cpp.lib set_target_properties(flann_cpp PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS YES) if (BUILD_CUDA_LIB) @@ -90,9 +91,10 @@ if (BUILD_C_BINDINGS) add_library(flann SHARED dummy.c) set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX) target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive) + target_link_libraries(flann PUBLIC ${LZ4_LINK_LIBRARIES}) else() add_library(flann SHARED ${C_SOURCES}) - target_link_libraries(flann ${LZ4_LINK_LIBRARIES}) + target_link_libraries(flann PUBLIC ${LZ4_LINK_LIBRARIES}) if(MINGW AND OPENMP_FOUND) target_link_libraries(flann gomp)