[oe] [meta-oe][PATCHv2] rocksdb: 5.18.3 -> 6.0.2

Khem Raj raj.khem at gmail.com
Fri Jun 14 19:23:09 UTC 2019


Hi Pascal

Do we still need to inject the compiler options we are doing in
do_compile_prepend()
proposed with

https://patchwork.openembedded.org/patch/161810/

On Wed, Jun 12, 2019 at 1:16 AM Pascal Bach <pascal.bach at siemens.com> wrote:
>
> Also add support for gflags as these are enabled by default
> and recipes are available in meta-oe. They can still be disabled via
> PACKAGECONFIG.
>
> zstd is also added as an PACKAGECONFIG but currently the zstd recipe is not in
> meta-oe so it stays disabled for the moment.
>
> This also includes a patch that fixes GCC9 compatibility, it's currently submitted
> upstream but not yet accepted due to style issues.
>
> Signed-off-by: Pascal Bach <pascal.bach at siemens.com>
> ---
>  ...01-CMake-has-stock-FindZLIB-in-upper-case.patch | 29 ++++++++
>  .../rocksdb/files/0001-fix-Issue-5303.patch        | 80 ++++++++++++++++++++++
>  meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb         | 14 ++--
>  3 files changed, 118 insertions(+), 5 deletions(-)
>  create mode 100644 meta-oe/recipes-dbs/rocksdb/files/0001-CMake-has-stock-FindZLIB-in-upper-case.patch
>  create mode 100644 meta-oe/recipes-dbs/rocksdb/files/0001-fix-Issue-5303.patch
>
> diff --git a/meta-oe/recipes-dbs/rocksdb/files/0001-CMake-has-stock-FindZLIB-in-upper-case.patch b/meta-oe/recipes-dbs/rocksdb/files/0001-CMake-has-stock-FindZLIB-in-upper-case.patch
> new file mode 100644
> index 000000000..9682f8ad4
> --- /dev/null
> +++ b/meta-oe/recipes-dbs/rocksdb/files/0001-CMake-has-stock-FindZLIB-in-upper-case.patch
> @@ -0,0 +1,29 @@
> +From 38146a5d803a1fb9b10f011aa857872b6f20cd02 Mon Sep 17 00:00:00 2001
> +From: Tongliang Liao <xkszltl at gmail.com>
> +Date: Mon, 29 Apr 2019 03:51:51 -0700
> +Subject: [PATCH] CMake has stock FindZLIB in upper case. More details in
> + https://cmake.org/cmake/help/v3.14/module/FindZLIB.html
> +
> +
> +Upstream-Status: Backport https://github.com/facebook/rocksdb/pull/5261
> +
> +---
> + CMakeLists.txt | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/CMakeLists.txt b/CMakeLists.txt
> +index 40cdd26bb..355686566 100644
> +--- a/CMakeLists.txt
> ++++ b/CMakeLists.txt
> +@@ -92,7 +92,7 @@ else()
> +   endif()
> +
> +   if(WITH_ZLIB)
> +-    find_package(zlib REQUIRED)
> ++    find_package(ZLIB REQUIRED)
> +     add_definitions(-DZLIB)
> +     if(ZLIB_INCLUDE_DIRS)
> +       # CMake 3
> +--
> +2.11.0
> +
> diff --git a/meta-oe/recipes-dbs/rocksdb/files/0001-fix-Issue-5303.patch b/meta-oe/recipes-dbs/rocksdb/files/0001-fix-Issue-5303.patch
> new file mode 100644
> index 000000000..ba9834dfe
> --- /dev/null
> +++ b/meta-oe/recipes-dbs/rocksdb/files/0001-fix-Issue-5303.patch
> @@ -0,0 +1,80 @@
> +From 512aaf3d833973f6146c6f1235b590901876175e Mon Sep 17 00:00:00 2001
> +From: biocodz <biocodz at protonmail.com>
> +Date: Fri, 7 Jun 2019 09:49:37 -0400
> +Subject: [PATCH] fix Issue 5303
> +
> +Upstream-Status: Submitted [https://github.com/facebook/rocksdb/pull/5426]
> +
> +---
> + db/internal_stats.h                                | 21 +++++++++++++++++++++
> + db/version_edit.h                                  |  8 ++++++++
> + utilities/persistent_cache/persistent_cache_util.h |  2 +-
> + 3 files changed, 30 insertions(+), 1 deletion(-)
> +
> +diff --git a/db/internal_stats.h b/db/internal_stats.h
> +index 6fa8727a4..09447644d 100644
> +--- a/db/internal_stats.h
> ++++ b/db/internal_stats.h
> +@@ -236,6 +236,27 @@ class InternalStats {
> +       }
> +     }
> +
> ++      CompactionStats & operator=(const CompactionStats& c) {
> ++        count = c.count;
> ++        micros = c.micros;
> ++        cpu_micros = c.cpu_micros;
> ++        bytes_read_non_output_levels = c.bytes_read_non_output_levels;
> ++        bytes_read_output_level = c.bytes_read_output_level;
> ++        bytes_written = c.bytes_written;
> ++        bytes_moved = c.bytes_moved;
> ++        num_input_files_in_non_output_levels =
> ++            c.num_input_files_in_non_output_levels;
> ++        num_input_files_in_output_level = c.num_input_files_in_output_level;
> ++        num_output_files = c.num_output_files;
> ++        num_input_records = c.num_input_records;
> ++        num_dropped_records = c.num_dropped_records;
> ++        int num_of_reasons = static_cast<int>(CompactionReason::kNumOfReasons);
> ++        for (int i = 0; i < num_of_reasons; i++) {
> ++              counts[i] = c.counts[i];
> ++        }
> ++        return *this;
> ++      }
> ++
> +     void Clear() {
> +       this->micros = 0;
> +       this->cpu_micros = 0;
> +diff --git a/db/version_edit.h b/db/version_edit.h
> +index 229531792..5c50ef552 100644
> +--- a/db/version_edit.h
> ++++ b/db/version_edit.h
> +@@ -52,6 +52,14 @@ struct FileDescriptor {
> +         smallest_seqno(_smallest_seqno),
> +         largest_seqno(_largest_seqno) {}
> +
> ++  FileDescriptor(const FileDescriptor& fd) {
> ++    table_reader = fd.table_reader;
> ++    packed_number_and_path_id = fd.packed_number_and_path_id;
> ++    file_size = fd.file_size;
> ++    smallest_seqno = fd.smallest_seqno;
> ++    largest_seqno = fd.largest_seqno;
> ++  }
> ++
> +   FileDescriptor& operator=(const FileDescriptor& fd) {
> +     table_reader = fd.table_reader;
> +     packed_number_and_path_id = fd.packed_number_and_path_id;
> +diff --git a/utilities/persistent_cache/persistent_cache_util.h b/utilities/persistent_cache/persistent_cache_util.h
> +index 214bb5875..254c038f9 100644
> +--- a/utilities/persistent_cache/persistent_cache_util.h
> ++++ b/utilities/persistent_cache/persistent_cache_util.h
> +@@ -48,7 +48,7 @@ class BoundedQueue {
> +     T t = std::move(q_.front());
> +     size_ -= t.Size();
> +     q_.pop_front();
> +-    return std::move(t);
> ++    return t;
> +   }
> +
> +   size_t Size() const {
> +--
> +2.11.0
> +
> diff --git a/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb b/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb
> index 8d846197a..9fd5ee15b 100644
> --- a/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb
> +++ b/meta-oe/recipes-dbs/rocksdb/rocksdb_git.bb
> @@ -6,24 +6,28 @@ LIC_FILES_CHKSUM = "file://LICENSE.Apache;md5=3b83ef96387f14655fc854ddc3c6bd57 \
>                      file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
>                      file://LICENSE.leveldb;md5=fb04ff57a14f308f2eed4a9b87d45837"
>
> -SRCREV = "641fae60f63619ed5d0c9d9e4c4ea5a0ffa3e253"
> -SRCBRANCH = "5.18.fb"
> -PV = "5.18.3"
> +SRCREV = "628a7fd74b5611657106c57f724f1682b114684c"
> +SRCBRANCH = "6.0.fb"
> +PV = "6.0.2"
>
>  SRC_URI = "git://github.com/facebook/${BPN}.git;branch=${SRCBRANCH} \
> +           file://0001-CMake-has-stock-FindZLIB-in-upper-case.patch \
>             file://0001-Disable-Wshadow-and-do-not-mark-default-copy-constru.patch \
>             file://0001-utilities-Fix-build-failure-with-Werror-maybe-uninit.patch \
> +           file://0001-fix-Issue-5303.patch \
>            "
>
>  S = "${WORKDIR}/git"
>
>  inherit cmake
>
> -PACKAGECONFIG ??= "bzip2 zlib lz4"
> +PACKAGECONFIG ??= "bzip2 zlib lz4 gflags"
>  PACKAGECONFIG[bzip2] = "-DWITH_BZ2=ON -DBZIP2_LIBRARIES:STRING=bz2,-DWITH_BZ2=OFF,bzip2"
>  PACKAGECONFIG[lz4] = "-DWITH_LZ4=ON -DLZ4_LIBRARIES:STRING=lz4,-DWITH_LZ4=OFF,lz4"
> -PACKAGECONFIG[zlib] = "-DWITH_ZLIB=ON -DZLIB_LIBRARIES:STRING=z,-DWITH_ZLIB=OFF,zlib"
> +PACKAGECONFIG[zlib] = "-DWITH_ZLIB=ON -DZLIB_LIBRARY:STRING=z,-DWITH_ZLIB=OFF,zlib"
> +PACKAGECONFIG[zstd] = "-DWITH_ZSTD=ON,-DWITH_ZSTD=OFF,zstd"
>  PACKAGECONFIG[lite] = "-DROCKSDB_LITE=ON,-DROCKSDB_LITE=OFF"
> +PACKAGECONFIG[gflags] = "-DWITH_GFLAGS=ON,-DWITH_GFLAGS=OFF,gflags"
>
>  # Tools and tests currently don't compile on armv5 so we disable them
>  EXTRA_OECMAKE = "\
> --
> 2.11.0
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


More information about the Openembedded-devel mailing list