diff options
Diffstat (limited to 'meta-oe/recipes-dbs/mysql/mariadb.inc')
-rw-r--r-- | meta-oe/recipes-dbs/mysql/mariadb.inc | 46 |
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 | " |
29 | SRC_URI:append:libc-musl = " file://ppc-remove-glibc-dep.patch" | 28 | SRC_URI[sha256sum] = "1b26c0bb2d025dbfac3b9852d2b7eafda56a171b67ac2e27831ec0414fb7df07" |
30 | SRC_URI[sha256sum] = "5239a245ed90517e96396605cd01ccd8f73cd7442d1b3076b6ffe258110e5157" | ||
31 | 29 | ||
32 | UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases" | 30 | UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/tags" |
33 | 31 | ||
34 | BINCONFIG_GLOB = "mysql_config" | 32 | BINCONFIG_GLOB = "mysql_config" |
35 | 33 | ||
36 | inherit cmake gettext binconfig update-rc.d systemd multilib_script pkgconfig | 34 | inherit cmake gettext binconfig update-rc.d systemd multilib_script multilib_header pkgconfig |
37 | 35 | ||
38 | MULTILIB_SCRIPTS = "${PN}-server:${bindir}/mariadbd-safe \ | 36 | MULTILIB_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 | ||
41 | INITSCRIPT_PACKAGES = "${PN}-server ${PN}-setupdb" | 41 | INITSCRIPT_PACKAGES = "${PN}-server ${PN}-setupdb" |
42 | INITSCRIPT_NAME:${PN}-server = "mysqld" | 42 | INITSCRIPT_NAME:${PN}-server = "mysqld" |
@@ -63,20 +63,14 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} lz4 openssl" | |||
63 | EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'" | 63 | EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'" |
64 | 64 | ||
65 | PACKAGECONFIG:class-native = "" | 65 | PACKAGECONFIG:class-native = "" |
66 | PACKAGECONFIG[pam] = "-DPLUGIN_AUTH_PAM=YES,-DPLUGIN_AUTH_PAM=NO,libpam" | 66 | PACKAGECONFIG[pam] = "-DPLUGIN_AUTH_PAM=YES -DINSTALL_PAMDIR=${base_libdir}/security,-DPLUGIN_AUTH_PAM=NO,libpam" |
67 | PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind" | 67 | PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind" |
68 | PACKAGECONFIG[krb5] = ", ,krb5" | 68 | PACKAGECONFIG[krb5] = ", ,krb5" |
69 | PACKAGECONFIG[lz4] = ", ,lz4" | 69 | PACKAGECONFIG[lz4] = ", ,lz4" |
70 | PACKAGECONFIG[openssl] = "-DWITH_SSL='system',-DWITH_SSL='bundled',openssl" | 70 | PACKAGECONFIG[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 | ||
74 | TARGET_CFLAGS += "-fuse-ld=bfd" | ||
75 | LDFLAGS += " -pthread" | 72 | LDFLAGS += " -pthread" |
76 | 73 | ||
77 | BUILD_CFLAGS += "-fuse-ld=bfd" | ||
78 | BUILD_CXXFLAGS += "-fuse-ld=bfd" | ||
79 | |||
80 | LDFLAGS:x86:toolchain-clang = "-latomic" | 74 | LDFLAGS:x86:toolchain-clang = "-latomic" |
81 | LDFLAGS:riscv32:toolchain-clang = "-latomic" | 75 | LDFLAGS: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 | ||
161 | do_install() { | 158 | do_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 \ |