From 3a6d209caa07e3be8e8423251b70c8bbeeedb17f Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 12 Apr 2024 00:33:29 +0100 Subject: gentoo auto-resync : 12:04:2024 - 00:33:28 --- .../snappy/files/snappy-1.1.9_gcc_inline.patch | 67 ---------------------- .../snappy/files/snappy-1.2.0_external-gtest.patch | 46 +++++++++++++++ app-arch/snappy/files/snappy-1.2.0_no-werror.patch | 24 ++++++++ .../snappy/files/snappy-1.2.0_remove-no-rtti.patch | 32 +++++++++++ 4 files changed, 102 insertions(+), 67 deletions(-) delete mode 100644 app-arch/snappy/files/snappy-1.1.9_gcc_inline.patch create mode 100644 app-arch/snappy/files/snappy-1.2.0_external-gtest.patch create mode 100644 app-arch/snappy/files/snappy-1.2.0_no-werror.patch create mode 100644 app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch (limited to 'app-arch/snappy/files') diff --git a/app-arch/snappy/files/snappy-1.1.9_gcc_inline.patch b/app-arch/snappy/files/snappy-1.1.9_gcc_inline.patch deleted file mode 100644 index 04d35f56ee98..000000000000 --- a/app-arch/snappy/files/snappy-1.1.9_gcc_inline.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 0c716d435abe65250100c2caea0e5126ac4e14bd Mon Sep 17 00:00:00 2001 -From: "Georgi D. Sotirov" -Date: Wed, 5 May 2021 14:16:46 +0300 -Subject: [PATCH] Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE - -Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE on AdvanceToNextTag to -fix the following compilation errors and a warning with GCC: - -[ 2%] Building CXX object CMakeFiles/snappy.dir/snappy.cc.o -/usr/bin/c++ -DHAVE_CONFIG_H -Dsnappy_EXPORTS --I/tmp/snappy-1.1.9/build -I/tmp/snappy-1.1.9 -O3 --march=i586 -mtune=i686 -Wall -Wextra -fno-exceptions -fno-rtti -O3 --DNDEBUG -fPIC -std=c++11 -o CMakeFiles/snappy.dir/snappy.cc.o -c -/tmp/snappy-1.1.9/snappy.cc -/tmp/snappy-1.1.9/snappy.cc:1017:8: warning: always_inline -function might not be inlinable [-Wattributes] - size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - ^ -/tmp/snappy-1.1.9/snappy.cc: In function 'std::pair snappy::DecompressBranchless(const uint8_t*, const -uint8_t*, ptrdiff_t, T, ptrdiff_t) [with T = char*; uint8_t = unsigned -char; ptrdiff_t = int]': -/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in -call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**, -size_t*)': function body can be overwritten at link time -/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here - size_t tag_type = AdvanceToNextTag(&ip, &tag); - ^ -/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in -call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**, -size_t*)': function body can be overwritten at link time - size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - ^ -/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here - size_t tag_type = AdvanceToNextTag(&ip, &tag); - ^ -/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in -call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**, -size_t*)': function body can be overwritten at link time - size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - ^ -/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here - size_t tag_type = AdvanceToNextTag(&ip, &tag); - ^ -CMakeFiles/snappy.dir/build.make:137: recipe for target -'CMakeFiles/snappy.dir/snappy.cc.o' failed - -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 79dc0e8..51157be 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 diff --git a/app-arch/snappy/files/snappy-1.2.0_external-gtest.patch b/app-arch/snappy/files/snappy-1.2.0_external-gtest.patch new file mode 100644 index 000000000000..6d929821ba0b --- /dev/null +++ b/app-arch/snappy/files/snappy-1.2.0_external-gtest.patch @@ -0,0 +1,46 @@ +From 4e6c67832f53b126d1e54b9398b88f23e75846f3 Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" +Date: Thu, 11 Apr 2024 10:05:30 +0300 +Subject: [PATCH 1/3] Use external GTest suite + +--- + CMakeLists.txt | 22 ++-------------------- + 1 file changed, 2 insertions(+), 20 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 85afe58..e23d2ca 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -319,27 +319,9 @@ 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_HAVE_NO_IMPLICIT_INT_FLOAT_CONVERSION) +- set_property(TARGET gtest +- APPEND PROPERTY COMPILE_OPTIONS -Wno-implicit-int-float-conversion) +- endif(SNAPPY_HAVE_NO_IMPLICIT_INT_FLOAT_CONVERSION) ++ find_package(GTest REQUIRED) ++ include(GoogleTest) + + add_executable(snappy_unittest "") + target_sources(snappy_unittest +-- +2.43.2 + diff --git a/app-arch/snappy/files/snappy-1.2.0_no-werror.patch b/app-arch/snappy/files/snappy-1.2.0_no-werror.patch new file mode 100644 index 000000000000..813ff7a59136 --- /dev/null +++ b/app-arch/snappy/files/snappy-1.2.0_no-werror.patch @@ -0,0 +1,24 @@ +From 8a262c4de10c4a7e07db41779fd7ca1565d92631 Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" +Date: Thu, 11 Apr 2024 10:06:47 +0300 +Subject: [PATCH 2/3] Don't use -Werror + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -66,13 +66,6 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra") + endif(NOT CMAKE_CXX_FLAGS MATCHES "-Wextra") + +- # Use -Werror for clang only. +- if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") +- if(NOT CMAKE_CXX_FLAGS MATCHES "-Werror") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror") +- endif(NOT CMAKE_CXX_FLAGS MATCHES "-Werror") +- endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang") +- + # Disable sign comparison warnings. Matches upcoming Bazel setup. + if(NOT CMAKE_CXX_FLAGS MATCHES "-Wno-sign-compare") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-sign-compare") +-- +2.43.2 + diff --git a/app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch b/app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch new file mode 100644 index 000000000000..dcfeae45cfbb --- /dev/null +++ b/app-arch/snappy/files/snappy-1.2.0_remove-no-rtti.patch @@ -0,0 +1,32 @@ +From 012ff3ef652027abd1a422268cf9f164b386f340 Mon Sep 17 00:00:00 2001 +From: "Azamat H. Hackimov" +Date: Thu, 11 Apr 2024 10:07:45 +0300 +Subject: [PATCH 3/3] Don't disable RTTI + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -51,10 +51,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + string(REGEX REPLACE "/EH[a-z]+" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHs-c-") + add_definitions(-D_HAS_EXCEPTIONS=0) +- +- # Disable RTTI. +- string(REGEX REPLACE "/GR" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR-") + else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + # Use -Wall for clang and gcc. + if(NOT CMAKE_CXX_FLAGS MATCHES "-Wall") +@@ -88,10 +84,6 @@ else(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + # Disable C++ exceptions. + string(REGEX REPLACE "-fexceptions" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions") +- +- # Disable RTTI. +- string(REGEX REPLACE "-frtti" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti") + endif(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + + # BUILD_SHARED_LIBS is a standard CMake variable, but we declare it here to make +-- +2.43.2 + -- cgit v1.2.3