Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package snappy for openSUSE:Factory checked 
in at 2021-08-04 22:28:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/snappy (Old)
 and      /work/SRC/openSUSE:Factory/.snappy.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "snappy"

Wed Aug  4 22:28:17 2021 rev:8 rq:907347 version:1.1.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/snappy/snappy.changes    2020-08-28 
21:15:05.856141780 +0200
+++ /work/SRC/openSUSE:Factory/.snappy.new.1899/snappy.changes  2021-08-04 
22:28:17.705845591 +0200
@@ -1,0 +2,9 @@
+Tue Jul 13 16:38:54 UTC 2021 - Danilo Spinella <danilo.spine...@suse.com>
+
+- Update to 1.1.9:
+  * Performance improvements
+- Add fix-always-inline.patch
+- Add use-system-test-libs.patch
+- Add a hardcoded snappy.pc file
+
+-------------------------------------------------------------------

Old:
----
  1.1.8.tar.gz

New:
----
  1.1.9.tar.gz
  fix-always-inline.patch
  snappy.pc
  use-system-test-libs.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ snappy.spec ++++++
--- /var/tmp/diff_new_pack.mPQlHR/_old  2021-08-04 22:28:18.349844794 +0200
+++ /var/tmp/diff_new_pack.mPQlHR/_new  2021-08-04 22:28:18.353844789 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package snappy
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,18 +18,23 @@
 
 %define libname libsnappy1
 Name:           snappy
-Version:        1.1.8
+Version:        1.1.9
 Release:        0
 Summary:        A compressor/decompressor library favoring time
 License:        BSD-3-Clause
 Group:          Development/Libraries/C and C++
 URL:            https://github.com/google/snappy/
 Source0:        https://github.com/google/snappy/archive/%{version}.tar.gz
+Source1:        snappy.pc
 Source99:       baselibs.conf
+Patch0:         use-system-test-libs.patch
+Patch1:         fix-always-inline.patch
 BuildRequires:  cmake
 BuildRequires:  gcc-c++
 BuildRequires:  lzo-devel
 BuildRequires:  pkgconfig
+BuildRequires:  pkgconfig(benchmark)
+BuildRequires:  pkgconfig(gtest)
 BuildRequires:  pkgconfig(zlib)
 
 %description
@@ -66,17 +71,18 @@
 This package holds the development files for snappy.
 
 %prep
-%setup -q
+%autosetup
 
 %build
-%cmake
-make %{?_smp_mflags}
+%cmake -DSNAPPY_USE_BUNDLED_GTEST=OFF -DSNAPPY_USE_BUNDLED_BENCHMARK_LIB=OFF
+%make_build
 
 %install
 %cmake_install
+install -d -m 755 %{buildroot}%{_libdir}/pkgconfig
+install -m 644 %{SOURCE1} %{buildroot}%{_libdir}/pkgconfig/%{name}.pc
 
 %check
-export 
LD_LIBRARY_PATH=%{buildroot}%{_libdir}${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
 %ctest
 
 %post   -n %{libname} -p /sbin/ldconfig
@@ -91,5 +97,6 @@
 %{_libdir}/libsnappy.so
 %dir %{_libdir}/cmake/Snappy/
 %{_libdir}/cmake/Snappy/*
+%{_libdir}/pkgconfig/%{name}.pc
 
 %changelog

++++++ 1.1.8.tar.gz -> 1.1.9.tar.gz ++++++
++++ 6423 lines of diff (skipped)

++++++ fix-always-inline.patch ++++++
>From 0c716d435abe65250100c2caea0e5126ac4e14bd Mon Sep 17 00:00:00 2001
From: "Georgi D. Sotirov" <gdsoti...@gmail.com>
Date: Wed, 5 May 2021 14:16:46 +0300
Subject: [PATCH] Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE
Upstream: https://github.com/google/snappy/pull/128

Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE on AdvanceToNextTag to
fix compilation errors and a warning with GCC.

Just like with other functions using SNAPPY_ATTRIBUTE_ALWAYS_INLINE
macro (i.e. __attribute__((always_inline)) ) it is necessary to use C++
inline specifier.
---
 snappy.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/snappy.cc b/snappy.cc
index 79dc0e8d..51157be2 100644
--- a/snappy.cc
+++ b/snappy.cc
@@ -1014,7 +1014,7 @@ void MemMove(ptrdiff_t dst, const void* src, size_t size) 
{
 }
 
 SNAPPY_ATTRIBUTE_ALWAYS_INLINE
-size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
+inline size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) {
   const uint8_t*& ip = *ip_p;
   // This section is crucial for the throughput of the decompression loop.
   // The latency of an iteration is fundamentally constrained by the
++++++ snappy.pc ++++++
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib64
includedir=${prefix}/include

Name: snappy
Description: A compressor/decompressor library favoring time
Version: 1.1.9
Libs: -L${libdir} -lsnappy
Cflags: -I${includedir}
++++++ use-system-test-libs.patch ++++++
>From 114df35e84ad95b6d5afbcf69aa85a14ff029000 Mon Sep 17 00:00:00 2001
From: Danilo Spinella <danilo.spine...@suse.com>
Date: Fri, 9 Jul 2021 16:57:35 +0200
Subject: [PATCH] Add a switch to use system gtest and benchmark
Upstream: https://github.com/google/snappy/pull/132

Allow to use the gtest and benchmark libraries from the system.
Use pkg-config to check that the libraries are installed and to
add the correct cflags/link flags.
---
 CMakeLists.txt | 66 ++++++++++++++++++++++++++++++++++++--------------
 1 file changed, 48 insertions(+), 18 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 672561e..eb2a743 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -90,6 +90,14 @@ option(SNAPPY_BUILD_TESTS "Build Snappy's own tests." ON)
 
 option(SNAPPY_BUILD_BENCHMARKS "Build Snappy's benchmarks" ON)
 
+if(UNIX)
+  option(SNAPPY_USE_BUNDLED_GTEST "Build test using bundled googletest 
library" ON)
+  option(SNAPPY_USE_BUNDLED_BENCHMARK_LIB "Build benchmarks using bundled 
benchmark library" ON)
+else(UNIX)
+  set(SNAPPY_USE_BUNDLED_GTEST ON)
+  set(SNAPPY_USE_BUNDLED_BENCHMARK_LIB ON)
+endif(UNIX)
+
 option(SNAPPY_FUZZING_BUILD "Build Snappy for fuzzing." OFF)
 
 option(SNAPPY_REQUIRE_AVX "Target processors with AVX support." OFF)
@@ -284,29 +292,40 @@ endif(SNAPPY_BUILD_TESTS OR SNAPPY_BUILD_BENCHMARKS)
 if(SNAPPY_BUILD_TESTS)
   enable_testing()
 
-  # Prevent overriding the parent project's compiler/linker settings on 
Windows.
-  set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
-  set(install_gtest OFF)
-  set(install_gmock OFF)
-  set(build_gmock ON)
-
-  # This project is tested using GoogleTest.
-  add_subdirectory("third_party/googletest")
-
-  # GoogleTest triggers a missing field initializers warning.
-  if(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
-    set_property(TARGET gtest
-        APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
-    set_property(TARGET gmock
-        APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
-  endif(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+  if(SNAPPY_USE_BUNDLED_GTEST)
+    # Prevent overriding the parent project's compiler/linker settings on 
Windows.
+    set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
+    set(install_gtest OFF)
+    set(install_gmock OFF)
+    set(build_gmock ON)
+
+    # This project is tested using GoogleTest.
+    add_subdirectory("third_party/googletest")
+
+    # GoogleTest triggers a missing field initializers warning.
+    if(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+      set_property(TARGET gtest
+          APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+      set_property(TARGET gmock
+          APPEND PROPERTY COMPILE_OPTIONS -Wno-missing-field-initializers)
+    endif(SNAPPY_HAVE_NO_MISSING_FIELD_INITIALIZERS)
+  else(SNAPPY_USE_BUNDLED_GTEST)
+    find_package(PkgConfig)
+    pkg_search_module(GTEST REQUIRED gtest_main)
+  endif(SNAPPY_USE_BUNDLED_GTEST)
 
   add_executable(snappy_unittest "")
   target_sources(snappy_unittest
     PRIVATE
       "snappy_unittest.cc"
   )
-  target_link_libraries(snappy_unittest snappy_test_support gmock_main gtest)
+  target_link_libraries(snappy_unittest snappy_test_support)
+  if(SNAPPY_USE_BUNDLED_GTEST)
+    target_link_libraries(snappy_unittest gmock_main gtest)
+  else(SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
+    target_link_libraries(snappy_unittest ${GTEST_LDFLAGS})
+    target_compile_options(snappy_unittest PUBLIC ${GTEST_CFLAGS})
+  endif(SNAPPY_USE_BUNDLED_GTEST)
 
   add_test(
     NAME snappy_unittest
@@ -322,17 +341,28 @@ if(SNAPPY_BUILD_TESTS)
 endif(SNAPPY_BUILD_TESTS)
 
 if(SNAPPY_BUILD_BENCHMARKS)
+  if(NOT SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
+    find_package(PkgConfig)
+    pkg_search_module(BENCHMARK REQUIRED benchmark)
+  endif(NOT SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
+
   add_executable(snappy_benchmark "")
   target_sources(snappy_benchmark
     PRIVATE
       "snappy_benchmark.cc"
   )
   target_link_libraries(snappy_benchmark snappy_test_support benchmark_main)
+  if(NOT SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
+    target_link_libraries(snappy_benchmark ${BENCHMARK_LDFLAGS})
+    target_compile_options(snappy_benchmark PUBLIC ${BENCHMARK_CFLAGS})
+  endif(NOT SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
 
   # This project uses Google benchmark for benchmarking.
   set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "" FORCE)
   set(BENCHMARK_ENABLE_EXCEPTIONS OFF CACHE BOOL "" FORCE)
-  add_subdirectory("third_party/benchmark")
+  if(SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
+    add_subdirectory("third_party/benchmark")
+  endif(SNAPPY_USE_BUNDLED_BENCHMARK_LIB)
 endif(SNAPPY_BUILD_BENCHMARKS)
 
 if(SNAPPY_FUZZING_BUILD)

Reply via email to