Mingli,

On 7/28/20 1:36 AM, Yu, Mingli wrote:
> From: Mingli Yu <[email protected]>
>
> * Remove one backported patch
> * Remove SRC_URI[md5sum]
> * Rebase two patches to fix fuzz warnings
> * Add curl depends to fix below error:
>   | ./mariadb-10.5.4/storage/maria/libmarias3/libmarias3/marias3.h:26:10: 
> fatal error: curl/curl.h: No such file or directory
>
> * update the pam_user_map.so install logic as below commit introduced in this 
> new
>   mariadb version
>   236aed3f5f0 MDEV-21656: Wrong directory for pam_user_map.so 
> JIRA:https://jira.mariadb.org/browse/MDEV-17292
>
> * Backport a patch to fix the undefined reference to `crc32c_arm64' on arm64

What are the difference between the patch versions?
-armin

>
> Signed-off-by: Mingli Yu <[email protected]>
> ---
>  ...ve_10.4.12.bb => mariadb-native_10.5.4.bb} |  0
>  meta-oe/recipes-dbs/mysql/mariadb.inc         | 13 +++--
>  ...-breakage-from-lock_guard-error-6161.patch | 32 -------------
>  ...DB-undefined-reference-to-crc32c_arm.patch | 48 +++++++++++++++++++
>  .../mysql/mariadb/c11_atomics.patch           | 37 +++++++++-----
>  ...Lists.txt-fix-gen_lex_hash-not-found.patch | 26 +++++-----
>  .../{mariadb_10.4.12.bb => mariadb_10.5.4.bb} |  2 +-
>  7 files changed, 97 insertions(+), 61 deletions(-)
>  rename meta-oe/recipes-dbs/mysql/{mariadb-native_10.4.12.bb => 
> mariadb-native_10.5.4.bb} (100%)
>  delete mode 100644 
> meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-build-breakage-from-lock_guard-error-6161.patch
>  create mode 100644 
> meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-23137-RocksDB-undefined-reference-to-crc32c_arm.patch
>  rename meta-oe/recipes-dbs/mysql/{mariadb_10.4.12.bb => mariadb_10.5.4.bb} 
> (87%)
>
> diff --git a/meta-oe/recipes-dbs/mysql/mariadb-native_10.4.12.bb 
> b/meta-oe/recipes-dbs/mysql/mariadb-native_10.5.4.bb
> similarity index 100%
> rename from meta-oe/recipes-dbs/mysql/mariadb-native_10.4.12.bb
> rename to meta-oe/recipes-dbs/mysql/mariadb-native_10.5.4.bb
> diff --git a/meta-oe/recipes-dbs/mysql/mariadb.inc 
> b/meta-oe/recipes-dbs/mysql/mariadb.inc
> index 95f5acba1..58f573e5e 100644
> --- a/meta-oe/recipes-dbs/mysql/mariadb.inc
> +++ b/meta-oe/recipes-dbs/mysql/mariadb.inc
> @@ -18,11 +18,10 @@ SRC_URI = 
> "https://downloads.mariadb.org/interstitial/${BP}/source/${BP}.tar.gz
>             file://c11_atomics.patch \
>             file://clang_version_header_conflict.patch \
>             file://fix-arm-atomic.patch \
> -           file://0001-Fix-build-breakage-from-lock_guard-error-6161.patch \
>             file://0001-Fix-library-LZ4-lookup.patch \
> +           
> file://0001-MDEV-23137-RocksDB-undefined-reference-to-crc32c_arm.patch \
>            "
> -SRC_URI[md5sum] = "97d7c0f508c04a31c138fdb24e95dbc4"
> -SRC_URI[sha256sum] = 
> "fef1e1d38aa253dd8a51006bd15aad184912fce31c446bb69434fcde735aa208"
> +SRC_URI[sha256sum] = 
> "26db2becc9cec37e99a4e73390bd2eaa74568e21f9cf110359f4f68b37154c72"
>  
>  UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases";
>  
> @@ -169,8 +168,12 @@ do_install() {
>          mv ${D}${datadir}/doc/README ${D}${datadir}/doc/${PN}/
>      fi
>      if ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'true', 'false', d)}; 
> then
> -        mv ${D}/lib/security ${D}/${libdir}
> -        rmdir --ignore-fail-on-non-empty ${D}/lib
> +        pam_so=$(find ${D} -name pam_user_map.so)
> +        if [ x"${pam_so}" != x ]; then
> +            pam_dir=$(dirname ${pam_so})
> +            mv ${pam_dir} ${D}/${libdir}
> +            rmdir --ignore-fail-on-non-empty ${pam_dir%security}
> +        fi
>      fi
>  }
>  
> diff --git 
> a/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-build-breakage-from-lock_guard-error-6161.patch
>  
> b/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-build-breakage-from-lock_guard-error-6161.patch
> deleted file mode 100644
> index 87c70617a..000000000
> --- 
> a/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-build-breakage-from-lock_guard-error-6161.patch
> +++ /dev/null
> @@ -1,32 +0,0 @@
> -Subject: [PATCH] Fix build breakage from lock_guard error (#6161)
> -
> -Summary:
> -This change fixes a source issue that caused compile time error which
> -breaks build for many fbcode services in that setup. The size() member
> -function of channel is a const member, so member variables accessed
> -within it are implicitly const as well. This caused error when clang
> -fails to resolve to a constructor that takes std::mutex because the
> -suitable constructor got rejected due to loss of constness for its
> -argument. The fix is to add mutable modifier to the lock_ member of
> -channel.
> -
> -Pull Request resolved: https://github.com/facebook/rocksdb/pull/6161
> -
> -Differential Revision: D18967685
> -
> -Pulled By: maysamyabandeh
> -
> -Upstream-Status: Backport
> -
> -fbshipit-source-id:698b6a5153c3c92eeacb842c467aa28cc350d432 
> ---- a/storage/rocksdb/rocksdb/util/channel.h
> -+++ b/storage/rocksdb/rocksdb/util/channel.h
> -@@ -60,7 +60,7 @@ class channel {
> - 
> -  private:
> -   std::condition_variable cv_;
> --  std::mutex lock_;
> -+  mutable std::mutex lock_;
> -   std::queue<T> buffer_;
> -   bool eof_;
> - };
> diff --git 
> a/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-23137-RocksDB-undefined-reference-to-crc32c_arm.patch
>  
> b/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-23137-RocksDB-undefined-reference-to-crc32c_arm.patch
> new file mode 100644
> index 000000000..1856c1af7
> --- /dev/null
> +++ 
> b/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-23137-RocksDB-undefined-reference-to-crc32c_arm.patch
> @@ -0,0 +1,48 @@
> +From d88ea260882ca414e940cd6af225617f00503f71 Mon Sep 17 00:00:00 2001
> +From: Krunal Bauskar <[email protected]>
> +Date: Mon, 27 Jul 2020 18:38:10 +0800
> +Subject: [PATCH] MDEV-23137: RocksDB: undefined reference to crc32c_arm64
> +
> +RocksDB fails to build on arm64: undefined reference to
> +            `crc32c_arm64(unsigned int, unsigned char const*, unsigned int)'
> +
> +MariaDB uses storage/rocksdb/build_rocksdb.cmake to compile RocksDB.
> +Said cmake missed adding crc32c_arm64 compilation target so if
> +machine native architecture supported crc32 then complier would enable
> +usage of function defined in crc32c_arm64 causing the listed error.
> +
> +Added crc32c_arm64 complition target.
> +
> +closes #1642
> +
> +Upstream-Status: Backport
> +
> +Signed-off-by: Mingli Yu <[email protected]>
> +---
> + storage/rocksdb/build_rocksdb.cmake | 10 ++++++++++
> + 1 file changed, 10 insertions(+)
> +
> +diff --git a/storage/rocksdb/build_rocksdb.cmake 
> b/storage/rocksdb/build_rocksdb.cmake
> +index 3f3dca7e990..7d2252c5f77 100644
> +--- a/storage/rocksdb/build_rocksdb.cmake
> ++++ b/storage/rocksdb/build_rocksdb.cmake
> +@@ -442,6 +442,16 @@ else()
> +       util/crc32c_ppc.c
> +       util/crc32c_ppc_asm.S)
> +   endif(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64")
> ++  # aarch
> ++  if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|AARCH64")
> ++    CHECK_CXX_COMPILER_FLAG("-march=armv8-a+crc+crypto" HAS_ARMV8_CRC)
> ++    if(HAS_ARMV8_CRC)
> ++      message(STATUS " HAS_ARMV8_CRC yes")
> ++      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv8-a+crc+crypto 
> -Wno-unused-function")
> ++      list(APPEND ROCKSDB_SOURCES
> ++        util/crc32c_arm64.cc)
> ++    endif(HAS_ARMV8_CRC)
> ++  endif(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64|AARCH64")
> + endif()
> + SET(SOURCES)
> + FOREACH(s ${ROCKSDB_SOURCES})
> +-- 
> +2.17.1
> +
> diff --git a/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch 
> b/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
> index 169986130..36217f9aa 100644
> --- a/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
> +++ b/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch
> @@ -1,7 +1,7 @@
> -Author: VicenČ›iu Ciorbaru <[email protected]>
> -Date:   Fri Dec 21 19:14:04 2018 +0200
> -
> -   Link with libatomic to enable C11 atomics support
> +From 976468458d53d8bb71acf48ddfc852a60557acb9 Mon Sep 17 00:00:00 2001
> +From: =?UTF-8?q?Vicen=C8=9Biu=20Ciorbaru?= <[email protected]>
> +Date: Thu, 23 Jul 2020 00:02:21 -0700
> +Subject: [PATCH] Link with libatomic to enable C11 atomics support
>  
>     Some architectures (mips) require libatomic to support proper
>     atomic operations. Check first if support is available without
> @@ -9,10 +9,18 @@ Date:   Fri Dec 21 19:14:04 2018 +0200
>  
>  Upstream-Status: Pending
>  Signed-off-by: Khem Raj <[email protected]>
> +Signed-off-by: Mingli Yu <[email protected]>
> +---
> + configure.cmake      | 20 +++++++++++++++++++-
> + mysys/CMakeLists.txt |  4 ++++
> + sql/CMakeLists.txt   |  4 ++++
> + 3 files changed, 27 insertions(+), 1 deletion(-)
>  
> +diff --git a/configure.cmake b/configure.cmake
> +index a355214..6ee595f 100644
>  --- a/configure.cmake
>  +++ b/configure.cmake
> -@@ -926,7 +926,25 @@ int main()
> +@@ -865,7 +865,25 @@ int main()
>     long long int *ptr= &var;
>     return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST);
>   }"
> @@ -39,10 +47,12 @@ Signed-off-by: Khem Raj <[email protected]>
>   
>   IF(WITH_VALGRIND)
>     SET(HAVE_valgrind 1)
> +diff --git a/mysys/CMakeLists.txt b/mysys/CMakeLists.txt
> +index 3d8a20e..42f1441 100644
>  --- a/mysys/CMakeLists.txt
>  +++ b/mysys/CMakeLists.txt
> -@@ -78,6 +78,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings
> -  ${LIBNSL} ${LIBM} ${LIBRT} ${LIBDL} ${LIBSOCKET} ${LIBEXECINFO} 
> ${CRC32_LIBRARY})
> +@@ -129,6 +129,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY}
> +  ${LIBNSL} ${LIBM} ${LIBRT} ${LIBDL} ${LIBSOCKET} ${LIBEXECINFO})
>   DTRACE_INSTRUMENT(mysys)
>   
>  +IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
> @@ -52,9 +62,11 @@ Signed-off-by: Khem Raj <[email protected]>
>   IF(HAVE_BFD_H)
>     TARGET_LINK_LIBRARIES(mysys bfd)  
>   ENDIF(HAVE_BFD_H)
> +diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
> +index 616017b..53575f6 100644
>  --- a/sql/CMakeLists.txt
>  +++ b/sql/CMakeLists.txt
> -@@ -178,6 +178,10 @@ ELSE()
> +@@ -219,6 +219,10 @@ ELSE()
>     SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL})
>   ENDIF()
>   
> @@ -62,6 +74,9 @@ Signed-off-by: Khem Raj <[email protected]>
>  +  TARGET_LINK_LIBRARIES(sql atomic)
>  +ENDIF()
>  +
> - 
> - IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS)
> - 
> + IF(MSVC)
> +   SET(libs_to_export_symbols sql mysys dbug strings)
> +   # Create shared library of already compiled object
> +-- 
> +2.17.1
> +
> diff --git 
> a/meta-oe/recipes-dbs/mysql/mariadb/sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch
>  
> b/meta-oe/recipes-dbs/mysql/mariadb/sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch
> index afc1be47b..4cb044339 100644
> --- 
> a/meta-oe/recipes-dbs/mysql/mariadb/sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch
> +++ 
> b/meta-oe/recipes-dbs/mysql/mariadb/sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch
> @@ -1,6 +1,6 @@
> -From 796464015bffe6e0beca9e1c355b223512803c3e Mon Sep 17 00:00:00 2001
> +From cfce1491827e5a581878b5e166bf4d30e6d90e07 Mon Sep 17 00:00:00 2001
>  From: Mingli Yu <[email protected]>
> -Date: Wed, 27 Feb 2019 23:01:00 -0800
> +Date: Thu, 23 Jul 2020 00:08:16 -0700
>  Subject: [PATCH] sql/CMakeLists.txt: fix gen_lex_hash not found
>  
>  Fix the below do_compile issue in cross-compiling env.
> @@ -10,18 +10,17 @@ Fix the below do_compile issue in cross-compiling env.
>  Upstream-Status: Inappropriate [oe build specific]
>  
>  Signed-off-by: Mingli Yu <[email protected]>
> -
>  ---
>   sql/CMakeLists.txt | 30 ++++++++++++++++++++----------
>   1 file changed, 20 insertions(+), 10 deletions(-)
>  
>  diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
> -index c6910f46..bf51f4cb 100644
> +index 0dc3caa..616017b 100644
>  --- a/sql/CMakeLists.txt
>  +++ b/sql/CMakeLists.txt
> -@@ -50,11 +50,16 @@ ${WSREP_INCLUDES}
> - 
> - 
> +@@ -52,11 +52,16 @@ ${CMAKE_BINARY_DIR}/sql
> + ${CMAKE_SOURCE_DIR}/tpool
> + )
>   
>  -ADD_CUSTOM_COMMAND(
>  -  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_token.h
> @@ -39,9 +38,9 @@ index c6910f46..bf51f4cb 100644
>  +   COMMAND gen_lex_token > lex_token.h)
>  +ENDIF()
>   
> - ADD_DEFINITIONS(-DMYSQL_SERVER -DHAVE_EVENT_SCHEDULER)
> - 
> -@@ -370,11 +375,16 @@ IF(NOT CMAKE_CROSSCOMPILING)
> + ADD_CUSTOM_COMMAND(
> +   OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/sql_yacc_ora.yy
> +@@ -345,11 +350,16 @@ IF(NOT CMAKE_CROSSCOMPILING)
>     ADD_EXECUTABLE(gen_lex_hash gen_lex_hash.cc)
>   ENDIF()
>   
> @@ -61,5 +60,8 @@ index c6910f46..bf51f4cb 100644
>  +   COMMAND gen_lex_hash > lex_hash.h)
>  +ENDIF()
>   
> - MYSQL_ADD_EXECUTABLE(mysql_tzinfo_to_sql tztime.cc COMPONENT Server)
> - SET_TARGET_PROPERTIES(mysql_tzinfo_to_sql PROPERTIES COMPILE_FLAGS 
> "-DTZINFO2SQL")
> + MYSQL_ADD_EXECUTABLE(mariadb-tzinfo-to-sql tztime.cc COMPONENT Server)
> + SET_TARGET_PROPERTIES(mariadb-tzinfo-to-sql PROPERTIES COMPILE_FLAGS 
> "-DTZINFO2SQL")
> +-- 
> +2.17.1
> +
> diff --git a/meta-oe/recipes-dbs/mysql/mariadb_10.4.12.bb 
> b/meta-oe/recipes-dbs/mysql/mariadb_10.5.4.bb
> similarity index 87%
> rename from meta-oe/recipes-dbs/mysql/mariadb_10.4.12.bb
> rename to meta-oe/recipes-dbs/mysql/mariadb_10.5.4.bb
> index c0b53379d..220b904b2 100644
> --- a/meta-oe/recipes-dbs/mysql/mariadb_10.4.12.bb
> +++ b/meta-oe/recipes-dbs/mysql/mariadb_10.5.4.bb
> @@ -2,7 +2,7 @@ require mariadb.inc
>  
>  EXTRA_OECMAKE += "-DSTACK_DIRECTION=-1"
>  
> -DEPENDS += "mariadb-native bison-native openssl ncurses zlib libaio libedit 
> libevent libxml2"
> +DEPENDS += "mariadb-native bison-native curl openssl ncurses zlib libaio 
> libedit libevent libxml2"
>  
>  PROVIDES += "mysql5 libmysqlclient"
>  
>
> 

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#86011): 
https://lists.openembedded.org/g/openembedded-devel/message/86011
Mute This Topic: https://lists.openembedded.org/mt/75840173/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to