diff options
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-dbs')
12 files changed, 250 insertions, 141 deletions
diff --git a/meta-openembedded/meta-oe/recipes-dbs/libdbi/libdbi.inc b/meta-openembedded/meta-oe/recipes-dbs/libdbi/libdbi.inc index cea2838e36..0aba91b5db 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/libdbi/libdbi.inc +++ b/meta-openembedded/meta-oe/recipes-dbs/libdbi/libdbi.inc @@ -4,7 +4,7 @@ DESCRIPTION = "Database Independent Abstraction Layer for C" HOMEPAGE = "http://libdbi.sourceforge.net/" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499" SECTION = "libs" diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.6.4.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.7.3.bb index e38726d3f9..e38726d3f9 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.6.4.bb +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb-native_10.7.3.bb diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc index 51e6ddbf71..855f124834 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb.inc @@ -1,7 +1,7 @@ SUMMARY = "A robust, scalable, and reliable SQL server" HOMEPAGE = "http://mariadb.org" SECTION = "libs" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://COPYING;md5=b1becf0cfa3366e0f4d854d1d264f311" SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \ @@ -12,7 +12,6 @@ SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \ file://mysql-systemd-start \ file://configure.cmake-fix-valgrind.patch \ file://support-files-CMakeLists.txt-fix-do_populate_sysroot.patch \ - file://c11_atomics.patch \ file://fix-arm-atomic.patch \ file://0001-Fix-library-LZ4-lookup.patch \ file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \ @@ -20,11 +19,12 @@ SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \ file://ssize_t.patch \ file://mm_malloc.patch \ file://sys_futex.patch \ - file://0001-MDEV-25785-Add-support-for-OpenSSL-3.0.patch \ + file://mariadb-openssl3.patch \ + file://clang-64bit-atomics.patch \ " SRC_URI:append:libc-musl = " file://ppc-remove-glibc-dep.patch" -SRC_URI[sha256sum] = "75bf9b147a95d38160d01a73b098d50a1960563b46d16a235971fff64d99643c" +SRC_URI[sha256sum] = "da286919ffc9c913282202349709b6ba4ebcd342815e8dae0aa6b6bd8f515cd4" UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases" @@ -62,17 +62,19 @@ FILES:${PN}-setupdb = "${sysconfdir}/init.d/install_db \ ${bindir}/mysql-systemd-start \ " -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} openssl" PACKAGECONFIG:class-native = "" PACKAGECONFIG[pam] = ",-DWITHOUT_AUTH_PAM=TRUE,libpam" PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind" PACKAGECONFIG[krb5] = ", ,krb5" PACKAGECONFIG[zstd] = "-DWITH_ROCKSDB_ZSTD=ON,-DWITH_ROCKSDB_ZSTD=OFF,zstd" +PACKAGECONFIG[openssl] = "-DWITH_SSL='system',-DWITH_SSL='bundled',openssl" # MariaDB doesn't link properly with gold # https://mariadb.atlassian.net/browse/MDEV-5982 TARGET_CFLAGS += "-fuse-ld=bfd" LDFLAGS += " -pthread" + BUILD_CFLAGS += "-fuse-ld=bfd" BUILD_CXXFLAGS += "-fuse-ld=bfd" @@ -203,7 +205,7 @@ RDEPENDS:${PN}-client = "perl perl-module-getopt-long perl-module-file-temp \ RDEPENDS:${PN}-server = "perl perl-module-getopt-long perl-module-data-dumper \ perl-module-file-basename perl-module-file-path perl-module-sys-hostname \ perl-module-file-copy perl-module-file-temp perl-module-posix \ - ${PN}-client ${PN}-setupdb libdbi-perl libdbd-mysql-perl" + ${PN}-client ${PN}-setupdb libdbi-perl libdbd-mysql-perl lzo" RDEPENDS:${PN}-leftovers = "perl perl-module-cwd perl-module-benchmark perl-module-getopt-long \ perl-module-posix perl-module-data-dumper perl-module-sigtrap perl-module-threads \ perl-module-threads-shared perl-module-io-socket perl-module-sys-hostname perl-module-file-copy \ diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-library-LZ4-lookup.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-library-LZ4-lookup.patch index 0cf0560e11..6d9352fe86 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-library-LZ4-lookup.patch +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-Fix-library-LZ4-lookup.patch @@ -1,30 +1,31 @@ -From 1d7612b063eb1fc7bf97bc27b13e1de596748aa1 Mon Sep 17 00:00:00 2001 +From f15fbdf1244ca9ce01c5507660a86d685ed88bcf Mon Sep 17 00:00:00 2001 From: Sumit Garg <sumit.garg@linaro.org> -Date: Wed, 8 Jan 2020 04:58:30 +0000 +Date: Mon, 21 Mar 2022 15:08:40 +0800 Subject: [PATCH] Fix library LZ4 lookup. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> +Signed-off-by: Mingli Yu <mingli.yu@windriver.com> --- cmake/FindLZ4.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/cmake/FindLZ4.cmake b/cmake/FindLZ4.cmake -index e97dd63e2b0..2f4694e727c 100644 +index eebd859..094241c 100644 --- a/cmake/FindLZ4.cmake +++ b/cmake/FindLZ4.cmake @@ -1,5 +1,10 @@ --find_path(LZ4_INCLUDE_DIR NAMES lz4.h) +-find_path(LZ4_INCLUDE_DIRS NAMES lz4.h) -find_library(LZ4_LIBRARIES NAMES lz4) +find_path(LZ4_INCLUDE_DIR -+ NAMES lz4.h ++ NAMES lz4.h + NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) + +find_library(LZ4_LIBRARIES + NAMES lz4 + NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) - include(FindPackageHandleStandardArgs) - FIND_PACKAGE_HANDLE_STANDARD_ARGS( + if(LZ4_INCLUDE_DIRS AND EXISTS "${LZ4_INCLUDE_DIRS}/lz4.h") + file(STRINGS "${LZ4_INCLUDE_DIRS}/lz4.h" LZ4_H REGEX "^#define LZ4_VERSION_[MR]") -- -2.17.1 +2.25.1 diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch deleted file mode 100644 index 1c76ab3918..0000000000 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/c11_atomics.patch +++ /dev/null @@ -1,82 +0,0 @@ -From 976468458d53d8bb71acf48ddfc852a60557acb9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Vicen=C8=9Biu=20Ciorbaru?= <vicentiu@mariadb.org> -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 - linking, otherwise use the library. - -Upstream-Status: Pending -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Signed-off-by: Mingli Yu <mingli.yu@windriver.com> ---- - 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 4fc324a9..23a2ea91 100644 ---- a/configure.cmake -+++ b/configure.cmake -@@ -862,7 +862,25 @@ int main() - long long int *ptr= &var; - return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST); - }" --HAVE_GCC_C11_ATOMICS) -+HAVE_GCC_C11_ATOMICS_WITHOUT_LIBATOMIC) -+IF (HAVE_GCC_C11_ATOMICS_WITHOUT_LIBATOMIC) -+ SET(HAVE_GCC_C11_ATOMICS True) -+ELSE() -+ SET(OLD_CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}) -+ LIST(APPEND CMAKE_REQUIRED_LIBRARIES "atomic") -+ CHECK_CXX_SOURCE_COMPILES(" -+ int main() -+ { -+ long long int var= 1; -+ long long int *ptr= &var; -+ return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST); -+ }" -+ HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) -+ IF(HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) -+ SET(HAVE_GCC_C11_ATOMICS True) -+ ENDIF() -+ SET(CMAKE_REQUIRED_LIBRARIES ${OLD_CMAKE_REQUIRED_LIBRARIES}) -+ENDIF() - - IF(WITH_VALGRIND) - SET(HAVE_valgrind 1) -diff --git a/mysys/CMakeLists.txt b/mysys/CMakeLists.txt -index 6aab788f..91b9c393 100644 ---- a/mysys/CMakeLists.txt -+++ b/mysys/CMakeLists.txt -@@ -154,6 +154,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings ${ZLIB_LIBRARY} - ${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO}) - DTRACE_INSTRUMENT(mysys) - -+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) -+ TARGET_LINK_LIBRARIES(mysys atomic) -+ENDIF() -+ - IF(HAVE_BFD_H) - TARGET_LINK_LIBRARIES(mysys bfd) - ENDIF(HAVE_BFD_H) -diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt -index b9cd418f..d42e5017 100644 ---- a/sql/CMakeLists.txt -+++ b/sql/CMakeLists.txt -@@ -222,6 +222,10 @@ ELSE() - SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL}) - ENDIF() - -+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) -+ TARGET_LINK_LIBRARIES(sql atomic) -+ENDIF() -+ - IF(MSVC OR CMAKE_SYSTEM_NAME MATCHES AIX) - SET(libs_to_export_symbols sql mysys dbug strings) - # Create shared library of already compiled object --- -2.25.1 - diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/clang-64bit-atomics.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/clang-64bit-atomics.patch new file mode 100644 index 0000000000..cdc2947b7b --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/clang-64bit-atomics.patch @@ -0,0 +1,178 @@ +Prevent Clang from emitting atomic libcalls + +Clang expects 8-byte alignment for some 64-bit atomic operations +in some 32-bit targets. Native instruction lock cmpxchg8b (for x86) +should only require 4-byte alignment. + +This patch tries to add 8-byte alignents to data needing atomic ops +which helps clang to not generate the libatomic calls but emit +builtins directly. + +Upstream-Status: Submitted[https://jira.mariadb.org/browse/MDEV-28162] +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- a/include/my_atomic.h ++++ b/include/my_atomic.h +@@ -115,6 +115,16 @@ + #include "atomic/gcc_builtins.h" + #endif + ++#include <stdint.h> ++ ++# ifdef __GNUC__ ++typedef __attribute__((__aligned__(8))) int64 ATOMIC_I64; ++typedef __attribute__((__aligned__(8))) uint64 ATOMIC_U64; ++# else ++typedef int64 ATOMIC_I64; ++typedef uint64 ATOMIC_U64; ++# endif ++ + #if SIZEOF_LONG == 4 + #define my_atomic_addlong(A,B) my_atomic_add32((int32*) (A), (B)) + #define my_atomic_loadlong(A) my_atomic_load32((int32*) (A)) +@@ -123,12 +133,12 @@ + #define my_atomic_faslong(A,B) my_atomic_fas32((int32*) (A), (B)) + #define my_atomic_caslong(A,B,C) my_atomic_cas32((int32*) (A), (int32*) (B), (C)) + #else +-#define my_atomic_addlong(A,B) my_atomic_add64((int64*) (A), (B)) +-#define my_atomic_loadlong(A) my_atomic_load64((int64*) (A)) +-#define my_atomic_loadlong_explicit(A,O) my_atomic_load64_explicit((int64*) (A), (O)) +-#define my_atomic_storelong(A,B) my_atomic_store64((int64*) (A), (B)) +-#define my_atomic_faslong(A,B) my_atomic_fas64((int64*) (A), (B)) +-#define my_atomic_caslong(A,B,C) my_atomic_cas64((int64*) (A), (int64*) (B), (C)) ++#define my_atomic_addlong(A,B) my_atomic_add64((ATOMIC_I64*) (A), (B)) ++#define my_atomic_loadlong(A) my_atomic_load64((ATOMIC_I64*) (A)) ++#define my_atomic_loadlong_explicit(A,O) my_atomic_load64_explicit((ATOMIC_I64*) (A), (O)) ++#define my_atomic_storelong(A,B) my_atomic_store64((ATOMIC_I64*) (A), (B)) ++#define my_atomic_faslong(A,B) my_atomic_fas64((ATOMIC_I64*) (A), (B)) ++#define my_atomic_caslong(A,B,C) my_atomic_cas64((ATOMIC_I64*) (A), (ATOMIC_I64*) (B), (C)) + #endif + + #ifndef MY_MEMORY_ORDER_SEQ_CST +--- a/storage/perfschema/pfs_atomic.h ++++ b/storage/perfschema/pfs_atomic.h +@@ -41,7 +41,7 @@ public: + } + + /** Atomic load. */ +- static inline int64 load_64(int64 *ptr) ++ static inline int64 load_64(ATOMIC_I64 *ptr) + { + return my_atomic_load64(ptr); + } +@@ -53,9 +53,9 @@ public: + } + + /** Atomic load. */ +- static inline uint64 load_u64(uint64 *ptr) ++ static inline uint64 load_u64(ATOMIC_U64 *ptr) + { +- return (uint64) my_atomic_load64((int64*) ptr); ++ return (uint64) my_atomic_load64((ATOMIC_I64*) ptr); + } + + /** Atomic store. */ +@@ -65,7 +65,7 @@ public: + } + + /** Atomic store. */ +- static inline void store_64(int64 *ptr, int64 value) ++ static inline void store_64(ATOMIC_I64 *ptr, int64 value) + { + my_atomic_store64(ptr, value); + } +@@ -77,9 +77,9 @@ public: + } + + /** Atomic store. */ +- static inline void store_u64(uint64 *ptr, uint64 value) ++ static inline void store_u64(ATOMIC_U64 *ptr, uint64 value) + { +- my_atomic_store64((int64*) ptr, (int64) value); ++ my_atomic_store64((ATOMIC_I64*) ptr, (int64) value); + } + + /** Atomic add. */ +@@ -89,7 +89,7 @@ public: + } + + /** Atomic add. */ +- static inline int64 add_64(int64 *ptr, int64 value) ++ static inline int64 add_64(ATOMIC_I64 *ptr, int64 value) + { + return my_atomic_add64(ptr, value); + } +@@ -101,9 +101,9 @@ public: + } + + /** Atomic add. */ +- static inline uint64 add_u64(uint64 *ptr, uint64 value) ++ static inline uint64 add_u64(ATOMIC_U64 *ptr, uint64 value) + { +- return (uint64) my_atomic_add64((int64*) ptr, (int64) value); ++ return (uint64) my_atomic_add64((ATOMIC_I64*) ptr, (int64) value); + } + + /** Atomic compare and swap. */ +@@ -114,7 +114,7 @@ public: + } + + /** Atomic compare and swap. */ +- static inline bool cas_64(int64 *ptr, int64 *old_value, ++ static inline bool cas_64(ATOMIC_I64 *ptr, ATOMIC_I64 *old_value, + int64 new_value) + { + return my_atomic_cas64(ptr, old_value, new_value); +@@ -129,10 +129,10 @@ public: + } + + /** Atomic compare and swap. */ +- static inline bool cas_u64(uint64 *ptr, uint64 *old_value, ++ static inline bool cas_u64(ATOMIC_U64 *ptr, ATOMIC_U64 *old_value, + uint64 new_value) + { +- return my_atomic_cas64((int64*) ptr, (int64*) old_value, ++ return my_atomic_cas64((ATOMIC_I64*) ptr, (ATOMIC_I64*) old_value, + (uint64) new_value); + } + }; +--- a/sql/sql_class.h ++++ b/sql/sql_class.h +@@ -1049,7 +1049,7 @@ static inline void update_global_memory_ + (longlong) global_status_var.global_memory_used, + size)); + // workaround for gcc 4.2.4-1ubuntu4 -fPIE (from DEB_BUILD_HARDENING=1) +- int64 volatile * volatile ptr= &global_status_var.global_memory_used; ++ ATOMIC_I64 volatile * volatile ptr= &global_status_var.global_memory_used; + my_atomic_add64_explicit(ptr, size, MY_MEMORY_ORDER_RELAXED); + } + +--- a/storage/innobase/include/srv0mon.h ++++ b/storage/innobase/include/srv0mon.h +@@ -49,7 +49,7 @@ enum monitor_running_status { + typedef enum monitor_running_status monitor_running_t; + + /** Monitor counter value type */ +-typedef int64_t mon_type_t; ++typedef ATOMIC_I64 mon_type_t; + + /** Two monitor structures are defined in this file. One is + "monitor_value_t" which contains dynamic counter values for each +@@ -568,7 +568,7 @@ Use MONITOR_INC if appropriate mutex pro + if (enabled) { \ + ib_uint64_t value; \ + value = my_atomic_add64_explicit( \ +- (int64*) &MONITOR_VALUE(monitor), 1, \ ++ (ATOMIC_I64*) &MONITOR_VALUE(monitor), 1, \ + MY_MEMORY_ORDER_RELAXED) + 1; \ + /* Note: This is not 100% accurate because of the \ + inherent race, we ignore it due to performance. */ \ +@@ -585,7 +585,7 @@ Use MONITOR_DEC if appropriate mutex pro + if (enabled) { \ + ib_uint64_t value; \ + value = my_atomic_add64_explicit( \ +- (int64*) &MONITOR_VALUE(monitor), -1, \ ++ (ATOMIC_I64*) &MONITOR_VALUE(monitor), -1, \ + MY_MEMORY_ORDER_RELAXED) - 1; \ + /* Note: This is not 100% accurate because of the \ + inherent race, we ignore it due to performance. */ \ diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-25785-Add-support-for-OpenSSL-3.0.patch b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/mariadb-openssl3.patch index ab6811c0f5..db123e4a10 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/0001-MDEV-25785-Add-support-for-OpenSSL-3.0.patch +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb/mariadb-openssl3.patch @@ -1,4 +1,4 @@ -From 1b238e343506b43825092941d4cd294d9b866bef Mon Sep 17 00:00:00 2001 +From c80991c79f701dac42c630af4bd39593b0c7efb4 Mon Sep 17 00:00:00 2001 From: Vladislav Vaintroub <wlad@mariadb.com> Date: Mon, 8 Nov 2021 18:48:19 +0100 Subject: [PATCH] MDEV-25785 Add support for OpenSSL 3.0 @@ -15,9 +15,6 @@ Summary of changes - SECLEVEL in CipherString in openssl.cnf had been downgraded to 0, from 1, to make TLSv1.0 and TLSv1.1 possible - (according to https://github.com/openssl/openssl/blob/openssl-3.0.0/NEWS.md - even though the manual for SSL_CTX_get_security_level claims that it - should not be necessary) - Workaround Ssl_cipher_list issue, it now returns TLSv1.3 ciphers, in addition to what was set in --ssl-cipher @@ -30,27 +27,40 @@ Summary of changes added test that does "nopad" encryption piece-wise, to test replacement of EVP_CIPHER_CTX_buf_noconst -Upstream-Status: Backport [https://github.com/MariaDB/server/commit/1b238e343506b43825092941d4cd294d9b866bef] +Patch from Fedora https://src.fedoraproject.org/rpms/mariadb/raw/rawhide/f/mariadb-openssl3.patch -Signed-off-by: Mingli Yu <mingli.yu@windriver.com> +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> --- - cmake/ssl.cmake | 8 ++ + cmake/ssl.cmake | 19 ++++- include/ssl_compat.h | 3 +- mysql-test/lib/openssl.cnf | 2 +- mysql-test/main/ssl_cipher.result | 6 +- mysql-test/main/ssl_cipher.test | 2 +- mysys_ssl/my_crypt.cc | 46 +++++++----- unittest/mysys/aes-t.c | 121 ++++++++++++++++++++++-------- - 7 files changed, 133 insertions(+), 55 deletions(-) + 7 files changed, 141 insertions(+), 58 deletions(-) + -diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake -index 7c2488be8bd..1bd46bc0f39 100644 --- a/cmake/ssl.cmake +++ b/cmake/ssl.cmake -@@ -139,6 +139,13 @@ MACRO (MYSQL_CHECK_SSL) +@@ -118,7 +118,7 @@ MACRO (MYSQL_CHECK_SSL) + ENDIF() + FIND_PACKAGE(OpenSSL) + SET_PACKAGE_PROPERTIES(OpenSSL PROPERTIES TYPE RECOMMENDED) +- IF(OPENSSL_FOUND AND OPENSSL_VERSION AND OPENSSL_VERSION VERSION_LESS "3.0.0") ++ IF(OPENSSL_FOUND) + SET(OPENSSL_LIBRARY ${OPENSSL_SSL_LIBRARY}) + INCLUDE(CheckSymbolExists) + SET(SSL_SOURCES "") +@@ -139,9 +139,20 @@ MACRO (MYSQL_CHECK_SSL) SET(SSL_INTERNAL_INCLUDE_DIRS "") SET(SSL_DEFINES "-DHAVE_OPENSSL") ++ FOREACH(x INCLUDES LIBRARIES DEFINITIONS) ++ SET(SAVE_CMAKE_REQUIRED_${x} ${CMAKE_REQUIRED_${x}}) ++ ENDFOREACH() ++ + # Silence "deprecated in OpenSSL 3.0" + IF((NOT OPENSSL_VERSION) # 3.0 not determined by older cmake + OR NOT(OPENSSL_VERSION VERSION_LESS "3.0.0")) @@ -60,17 +70,24 @@ index 7c2488be8bd..1bd46bc0f39 100644 + SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) SET(CMAKE_REQUIRED_LIBRARIES ${SSL_LIBRARIES}) - SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) -@@ -152,6 +159,7 @@ MACRO (MYSQL_CHECK_SSL) +- SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) ++ + CHECK_SYMBOL_EXISTS(ERR_remove_thread_state "openssl/err.h" + HAVE_ERR_remove_thread_state) + CHECK_SYMBOL_EXISTS(EVP_aes_128_ctr "openssl/evp.h" +@@ -150,8 +161,10 @@ MACRO (MYSQL_CHECK_SSL) + HAVE_EncryptAes128Gcm) + CHECK_SYMBOL_EXISTS(X509_check_host "openssl/x509v3.h" HAVE_X509_check_host) - SET(CMAKE_REQUIRED_INCLUDES) - SET(CMAKE_REQUIRED_LIBRARIES) -+ SET(CMAKE_REQUIRED_DEFINITIONS) +- SET(CMAKE_REQUIRED_INCLUDES) +- SET(CMAKE_REQUIRED_LIBRARIES) ++ ++ FOREACH(x INCLUDES LIBRARIES DEFINITIONS) ++ SET(CMAKE_REQUIRED_${x} ${SAVE_CMAKE_REQUIRED_${x}}) ++ ENDFOREACH() ELSE() IF(WITH_SSL STREQUAL "system") MESSAGE(FATAL_ERROR "Cannot find appropriate system libraries for SSL. Use WITH_SSL=bundled to enable SSL support") -diff --git a/include/ssl_compat.h b/include/ssl_compat.h -index 9f4b6be8d95..affa9f2a448 100644 --- a/include/ssl_compat.h +++ b/include/ssl_compat.h @@ -24,7 +24,7 @@ @@ -82,16 +99,14 @@ index 9f4b6be8d95..affa9f2a448 100644 #undef EVP_MD_CTX_init #define EVP_MD_CTX_init(X) do { memset((X), 0, EVP_MD_CTX_SIZE); EVP_MD_CTX_reset(X); } while(0) #undef EVP_CIPHER_CTX_init -@@ -74,7 +74,6 @@ +@@ -77,7 +77,6 @@ + #define DH_set0_pqg(D,P,Q,G) ((D)->p= (P), (D)->g= (G)) #endif - #define DH_set0_pqg(D,P,Q,G) ((D)->p= (P), (D)->g= (G)) -#define EVP_CIPHER_CTX_buf_noconst(ctx) ((ctx)->buf) #define EVP_CIPHER_CTX_encrypting(ctx) ((ctx)->encrypt) #define EVP_CIPHER_CTX_SIZE sizeof(EVP_CIPHER_CTX) -diff --git a/mysql-test/lib/openssl.cnf b/mysql-test/lib/openssl.cnf -index b9ab37ac3a1..7cd6f748af2 100644 --- a/mysql-test/lib/openssl.cnf +++ b/mysql-test/lib/openssl.cnf @@ -9,4 +9,4 @@ ssl_conf = ssl_section @@ -100,8 +115,6 @@ index b9ab37ac3a1..7cd6f748af2 100644 [system_default_section] -CipherString = ALL:@SECLEVEL=1 +CipherString = ALL:@SECLEVEL=0 -diff --git a/mysql-test/main/ssl_cipher.result b/mysql-test/main/ssl_cipher.result -index 930d384eda9..66d817b7b41 100644 --- a/mysql-test/main/ssl_cipher.result +++ b/mysql-test/main/ssl_cipher.result @@ -61,8 +61,8 @@ connect ssl_con,localhost,root,,,,,SSL; @@ -116,11 +129,9 @@ index 930d384eda9..66d817b7b41 100644 +1 disconnect ssl_con; connection default; -diff --git a/mysql-test/main/ssl_cipher.test b/mysql-test/main/ssl_cipher.test -index 36549d76d02..d4cdcffb276 100644 --- a/mysql-test/main/ssl_cipher.test +++ b/mysql-test/main/ssl_cipher.test -@@ -98,6 +98,6 @@ let $restart_parameters=--ssl-cipher=AES128-SHA; +@@ -98,6 +98,6 @@ let $restart_parameters=--ssl-cipher=AES source include/restart_mysqld.inc; connect (ssl_con,localhost,root,,,,,SSL); SHOW STATUS LIKE 'Ssl_cipher'; @@ -128,8 +139,6 @@ index 36549d76d02..d4cdcffb276 100644 +SELECT VARIABLE_VALUE like '%AES128-SHA%' FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME='Ssl_cipher_list'; disconnect ssl_con; connection default; -diff --git a/mysys_ssl/my_crypt.cc b/mysys_ssl/my_crypt.cc -index e512eee9066..4d7ebc7bd27 100644 --- a/mysys_ssl/my_crypt.cc +++ b/mysys_ssl/my_crypt.cc @@ -29,11 +29,7 @@ @@ -155,7 +164,7 @@ index e512eee9066..4d7ebc7bd27 100644 MyCTX_nopad() : MyCTX() { } ~MyCTX_nopad() { } -@@ -112,7 +109,7 @@ class MyCTX_nopad : public MyCTX +@@ -112,7 +109,7 @@ public: compile_time_assert(MY_AES_CTX_SIZE >= sizeof(MyCTX_nopad)); this->key= key; this->klen= klen; @@ -164,7 +173,7 @@ index e512eee9066..4d7ebc7bd27 100644 if (ivlen) memcpy(oiv, iv, ivlen); DBUG_ASSERT(ivlen == 0 || ivlen == sizeof(oiv)); -@@ -123,26 +120,41 @@ class MyCTX_nopad : public MyCTX +@@ -123,26 +120,41 @@ public: return res; } @@ -214,7 +223,7 @@ index e512eee9066..4d7ebc7bd27 100644 */ uchar mask[MY_AES_BLOCK_SIZE]; uint mlen; -@@ -154,10 +166,10 @@ class MyCTX_nopad : public MyCTX +@@ -154,10 +166,10 @@ public: return rc; DBUG_ASSERT(mlen == sizeof(mask)); @@ -228,8 +237,6 @@ index e512eee9066..4d7ebc7bd27 100644 return MY_AES_OK; } }; -diff --git a/unittest/mysys/aes-t.c b/unittest/mysys/aes-t.c -index 34704e06749..cbec2760941 100644 --- a/unittest/mysys/aes-t.c +++ b/unittest/mysys/aes-t.c @@ -21,27 +21,96 @@ @@ -324,12 +331,12 @@ index 34704e06749..cbec2760941 100644 + /* Compare with non-bytewise encryption result*/ + ok(dst_len == dst_len2 && memcmp(dst, dst2, dst_len) == 0, + "memcmp bytewise %s %u", mode_str, src_len); -+ } + } + else + { + int dst_len_real= my_aes_get_size(mode, src_len); + ok(dst_len_real= dst_len, "my_aes_get_size"); - } ++ } + my_md5(md5, (char *) dst, dst_len); + ok(dst_len == dlen, "md5 len"); + ok(memcmp(md5, hash, sizeof(md5)) == 0, "md5"); @@ -376,6 +383,3 @@ index 34704e06749..cbec2760941 100644 DO_TEST_P(MY_AES_ECB, 200, '.', 208, "\xd8\x73\x8e\x3a\xbc\x66\x99\x13\x7f\x90\x23\x52\xee\x97\x6f\x9a"); DO_TEST_P(MY_AES_ECB, 128, '?', 144, "\x19\x58\x33\x85\x4c\xaa\x7f\x06\xd1\xb2\xec\xd7\xb7\x6a\xa9\x5b"); DO_TEST_P(MY_AES_CBC, 159, '%', 160, "\x4b\x03\x18\x3d\xf1\xa7\xcd\xa1\x46\xb3\xc6\x8a\x92\xc0\x0f\xc9"); --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.6.4.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.7.3.bb index 04dfb42234..c800c4c56c 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.6.4.bb +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mariadb_10.7.3.bb @@ -2,7 +2,8 @@ require mariadb.inc inherit qemu -DEPENDS += "qemu-native bison-native boost libpcre2 curl openssl ncurses zlib libaio libedit libevent libxml2" +DEPENDS += "qemu-native bison-native boost libpcre2 curl ncurses \ + zlib libaio libedit libevent libxml2 gnutls fmt lzo" PROVIDES += "mysql5 libmysqlclient" diff --git a/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb b/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb index cd46586512..15f6b6fb9a 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb +++ b/meta-openembedded/meta-oe/recipes-dbs/mysql/mysql-python_1.2.5.bb @@ -1,7 +1,7 @@ SUMMARY = "Python interface to MySQL" HOMEPAGE = "https://github.com/farcepest/MySQLdb1" SECTION = "devel/python" -LICENSE = "GPLv2" +LICENSE = "GPL-2.0-only" LIC_FILES_CHKSUM = "file://GPL-2.0;md5=b234ee4d69f5fce4486a80fdaf4a4263" DEPENDS = "mysql5" diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc index 257d27b112..00c0107469 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc +++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql.inc @@ -18,7 +18,7 @@ DESCRIPTION = "\ this package if you're installing the postgresql-server package. \ " HOMEPAGE = "http://www.postgresql.com" -LICENSE = "BSD-0-Clause" +LICENSE = "0BSD" DEPENDS = "libnsl2 readline tzcode-native" ARM_INSTRUCTION_SET = "arm" diff --git a/meta-openembedded/meta-oe/recipes-dbs/psqlodbc/psqlodbc_09.05.0300.bb b/meta-openembedded/meta-oe/recipes-dbs/psqlodbc/psqlodbc_09.05.0300.bb index 6e1c8ab4a0..b0fc35eb97 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/psqlodbc/psqlodbc_09.05.0300.bb +++ b/meta-openembedded/meta-oe/recipes-dbs/psqlodbc/psqlodbc_09.05.0300.bb @@ -1,6 +1,6 @@ require ${PN}.inc -LICENSE = "LGPLv2" +LICENSE = "LGPL-2.0-only" LIC_FILES_CHKSUM = "file://license.txt;md5=6db3822fc7512e83087ba798da013692" SRC_URI = "http://ftp.postgresql.org/pub/odbc/versions/src/${BPN}-${PV}.tar.gz \ diff --git a/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_6.20.3.bb b/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_6.20.3.bb index a5f6d8344a..2ad2d38a53 100644 --- a/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_6.20.3.bb +++ b/meta-openembedded/meta-oe/recipes-dbs/rocksdb/rocksdb_6.20.3.bb @@ -1,7 +1,7 @@ SUMMARY = "RocksDB an embeddable, persistent key-value store" DESCRIPTION = "RocksDB is library that provides an embeddable, persistent key-value store for fast storage." HOMEPAGE = "http://rocksdb.org/" -LICENSE = "(Apache-2.0 | GPL-2.0) & BSD-3-Clause" +LICENSE = "(Apache-2.0 | GPL-2.0-only) & BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE.Apache;md5=3b83ef96387f14655fc854ddc3c6bd57 \ file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ file://LICENSE.leveldb;md5=fb04ff57a14f308f2eed4a9b87d45837" @@ -22,6 +22,7 @@ SRC_URI = "git://github.com/facebook/${BPN}.git;branch=${SRCBRANCH};protocol=htt SRC_URI:append:riscv32 = " file://0001-replace-old-sync-with-new-atomic-builtin-equivalents.patch" SRC_URI:append:mips = " file://0001-replace-old-sync-with-new-atomic-builtin-equivalents.patch" +SRC_URI:append:powerpc = " file://0001-replace-old-sync-with-new-atomic-builtin-equivalents.patch" SRC_URI:remove:toolchain-clang:riscv32 = "file://0001-replace-old-sync-with-new-atomic-builtin-equivalents.patch" S = "${WORKDIR}/git" @@ -51,3 +52,7 @@ do_install:append() { } LDFLAGS:append:riscv64 = " -pthread" + +# Need toku_time_now() implemented for ppc/musl +# see utilities/transactions/lock/range/range_tree/lib/portability/toku_time.h +COMPATIBLE_HOST:libc-musl:powerpc = "null" |