summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-dbs/mysql/mariadb.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-dbs/mysql/mariadb.inc')
-rw-r--r--meta-oe/recipes-dbs/mysql/mariadb.inc46
1 files changed, 18 insertions, 28 deletions
diff --git a/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-oe/recipes-dbs/mysql/mariadb.inc
index 4bfa1c9caa..13e55ebacd 100644
--- a/meta-oe/recipes-dbs/mysql/mariadb.inc
+++ b/meta-oe/recipes-dbs/mysql/mariadb.inc
@@ -17,26 +17,26 @@ SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \
17 file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \ 17 file://0001-innobase-Define-__NR_futex-if-it-does-not-exist.patch \
18 file://0001-aio_linux-Check-if-syscall-exists-before-using-it.patch \ 18 file://0001-aio_linux-Check-if-syscall-exists-before-using-it.patch \
19 file://ssize_t.patch \ 19 file://ssize_t.patch \
20 file://mm_malloc.patch \
21 file://sys_futex.patch \ 20 file://sys_futex.patch \
22 file://cross-compiling.patch \ 21 file://cross-compiling.patch \
23 file://0001-sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch \ 22 file://0001-sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch \
24 file://lfs64.patch \ 23 file://lfs64.patch \
25 file://0001-Add-missing-includes-cstdint-and-cstdio.patch \ 24 file://0001-Add-missing-includes-cstdint-and-cstdio.patch \
26 file://0001-Remove-the-compile_time_assert-lines.patch \ 25 file://0001-Ensure-compatibility-with-ARMv9-by-updating-.arch-di.patch \
27 file://0001-MDEV-33439-Fix-build-with-libxml2-2.12.patch \ 26 file://riscv32.patch \
28 " 27 "
29SRC_URI:append:libc-musl = " file://ppc-remove-glibc-dep.patch" 28SRC_URI[sha256sum] = "1b26c0bb2d025dbfac3b9852d2b7eafda56a171b67ac2e27831ec0414fb7df07"
30SRC_URI[sha256sum] = "5239a245ed90517e96396605cd01ccd8f73cd7442d1b3076b6ffe258110e5157"
31 29
32UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases" 30UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/tags"
33 31
34BINCONFIG_GLOB = "mysql_config" 32BINCONFIG_GLOB = "mysql_config"
35 33
36inherit cmake gettext binconfig update-rc.d systemd multilib_script pkgconfig 34inherit cmake gettext binconfig update-rc.d systemd multilib_script multilib_header pkgconfig
37 35
38MULTILIB_SCRIPTS = "${PN}-server:${bindir}/mariadbd-safe \ 36MULTILIB_SCRIPTS = "${PN}-server:${bindir}/mariadbd-safe \
39 ${PN}-setupdb:${bindir}/mariadb-install-db" 37 ${PN}-setupdb:${bindir}/mariadb-install-db \
38 libmysqlclient-dev:${bindir}/mysql_config \
39 "
40 40
41INITSCRIPT_PACKAGES = "${PN}-server ${PN}-setupdb" 41INITSCRIPT_PACKAGES = "${PN}-server ${PN}-setupdb"
42INITSCRIPT_NAME:${PN}-server = "mysqld" 42INITSCRIPT_NAME:${PN}-server = "mysqld"
@@ -63,20 +63,14 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} lz4 openssl"
63EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'" 63EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'"
64 64
65PACKAGECONFIG:class-native = "" 65PACKAGECONFIG:class-native = ""
66PACKAGECONFIG[pam] = "-DPLUGIN_AUTH_PAM=YES,-DPLUGIN_AUTH_PAM=NO,libpam" 66PACKAGECONFIG[pam] = "-DPLUGIN_AUTH_PAM=YES -DINSTALL_PAMDIR=${base_libdir}/security,-DPLUGIN_AUTH_PAM=NO,libpam"
67PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind" 67PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind"
68PACKAGECONFIG[krb5] = ", ,krb5" 68PACKAGECONFIG[krb5] = ", ,krb5"
69PACKAGECONFIG[lz4] = ", ,lz4" 69PACKAGECONFIG[lz4] = ", ,lz4"
70PACKAGECONFIG[openssl] = "-DWITH_SSL='system',-DWITH_SSL='bundled',openssl" 70PACKAGECONFIG[openssl] = "-DWITH_SSL='system',-DWITH_SSL='bundled',openssl"
71 71
72# MariaDB doesn't link properly with gold
73# https://mariadb.atlassian.net/browse/MDEV-5982
74TARGET_CFLAGS += "-fuse-ld=bfd"
75LDFLAGS += " -pthread" 72LDFLAGS += " -pthread"
76 73
77BUILD_CFLAGS += "-fuse-ld=bfd"
78BUILD_CXXFLAGS += "-fuse-ld=bfd"
79
80LDFLAGS:x86:toolchain-clang = "-latomic" 74LDFLAGS:x86:toolchain-clang = "-latomic"
81LDFLAGS:riscv32:toolchain-clang = "-latomic" 75LDFLAGS:riscv32:toolchain-clang = "-latomic"
82 76
@@ -93,11 +87,14 @@ EXTRA_OECMAKE = "-DWITH_EMBEDDED_SERVER=ON \
93 -DINSTALL_DOCDIR:PATH=${datadir}/doc/${BPN} \ 87 -DINSTALL_DOCDIR:PATH=${datadir}/doc/${BPN} \
94 -DINSTALL_LIBDIR:PATH=${baselib} \ 88 -DINSTALL_LIBDIR:PATH=${baselib} \
95 -DINSTALL_PLUGINDIR:PATH=${baselib}/plugin \ 89 -DINSTALL_PLUGINDIR:PATH=${baselib}/plugin \
90 -DINSTALL_PCDIR:PATH=${baselib}/pkgconfig \
96 -DINSTALL_SYSCONFDIR:PATH=${sysconfdir} \ 91 -DINSTALL_SYSCONFDIR:PATH=${sysconfdir} \
97 -DMYSQL_DATADIR:PATH=/var/mysql \ 92 -DMYSQL_DATADIR:PATH=/var/mysql \
98 -DCAT_EXECUTABLE=`which cat` \ 93 -DCAT_EXECUTABLE=`which cat` \
99 -DSTACK_DIRECTION=1 \
100 -DHAVE_SYSTEM_LIBFMT_EXITCODE=0 \ 94 -DHAVE_SYSTEM_LIBFMT_EXITCODE=0 \
95 -DLSTAT_FOLLOWS_SLASHED_SYMLINK_EXITCODE=0 \
96 -DSTAT_EMPTY_STRING_BUG_EXITCODE=0 \
97 -DMASK_LONGDOUBLE_EXITCODE=0 \
101 -DCMAKE_AR:FILEPATH=${AR}" 98 -DCMAKE_AR:FILEPATH=${AR}"
102 99
103 100
@@ -160,6 +157,7 @@ mariadb_sysroot_preprocess () {
160 157
161do_install() { 158do_install() {
162 oe_runmake 'DESTDIR=${D}' install 159 oe_runmake 'DESTDIR=${D}' install
160 oe_multilib_header mysql/mariadb_version.h mysql/server/my_config.h mysql/server/private/config.h
163 161
164 install -d ${D}/${sysconfdir}/init.d 162 install -d ${D}/${sysconfdir}/init.d
165 install -m 0644 ${UNPACKDIR}/my.cnf ${D}/${sysconfdir}/ 163 install -m 0644 ${UNPACKDIR}/my.cnf ${D}/${sysconfdir}/
@@ -182,16 +180,8 @@ do_install() {
182 # mini-benchmark used for Gitlab-CI to run on every commit to catch 180 # mini-benchmark used for Gitlab-CI to run on every commit to catch
183 # if there are severe performance regressions. 181 # if there are severe performance regressions.
184 # remove it to avoid introducing bash dependency 182 # remove it to avoid introducing bash dependency
185 if [ -f ${D}${datadir}/mysql/mini-benchmark ]; then 183 if [ -f ${D}${datadir}/mariadb/mini-benchmark ]; then
186 rm -rf ${D}${datadir}/mysql/mini-benchmark 184 rm -rf ${D}${datadir}/mariadb/mini-benchmark
187 fi
188 if ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'true', 'false', d)}; then
189 pam_so=$(find ${D} -name pam_user_map.so)
190 if [ x"${pam_so}" != x ]; then
191 pam_dir=$(dirname ${pam_so})
192 mv ${pam_dir} ${D}/${libdir}
193 rmdir --ignore-fail-on-non-empty ${pam_dir%security}
194 fi
195 fi 185 fi
196} 186}
197 187
@@ -343,9 +333,9 @@ FILES:${PN}-server = "\
343 ${sbindir}/mysqld \ 333 ${sbindir}/mysqld \
344 ${sbindir}/mariadbd \ 334 ${sbindir}/mariadbd \
345 ${libdir}/plugin/*.so \ 335 ${libdir}/plugin/*.so \
346 ${libdir}/security/*.so \ 336 ${base_libdir}/security/*.so \
347 ${libdir}/plugin/auth_pam_tool_dir/auth_pam_tool \ 337 ${libdir}/plugin/auth_pam_tool_dir/auth_pam_tool \
348 ${datadir}/mysql/ \ 338 ${datadir}/mariadb/ \
349 ${localstatedir}/mysql/ \ 339 ${localstatedir}/mysql/ \
350 ${sysconfdir}/init.d/mysqld \ 340 ${sysconfdir}/init.d/mysqld \
351 ${sysconfdir}/my.cnf \ 341 ${sysconfdir}/my.cnf \