Uprev mariadb to latest from master branch
This commit is contained in:
parent
71392afcdc
commit
cfae882d3f
20
recipes-dbs/mysql/mariadb-native_10.3.16.bb
Normal file
20
recipes-dbs/mysql/mariadb-native_10.3.16.bb
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
require mariadb.inc
|
||||||
|
inherit native
|
||||||
|
|
||||||
|
PROVIDES += "mysql5-native"
|
||||||
|
DEPENDS = "ncurses-native zlib-native bison-native"
|
||||||
|
|
||||||
|
RDEPENDS_${PN} = ""
|
||||||
|
PACKAGES = ""
|
||||||
|
EXTRA_OEMAKE = ""
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
oe_runmake 'DESTDIR=${D}' install
|
||||||
|
|
||||||
|
install -d ${D}${bindir}
|
||||||
|
install -m 0755 sql/gen_lex_hash ${D}${bindir}/
|
||||||
|
install -m 0755 sql/gen_lex_token ${D}${bindir}/
|
||||||
|
install -m 0755 extra/comp_err ${D}${bindir}/
|
||||||
|
install -m 0755 scripts/comp_sql ${D}${bindir}/
|
||||||
|
}
|
||||||
|
|
309
recipes-dbs/mysql/mariadb.inc
Normal file
309
recipes-dbs/mysql/mariadb.inc
Normal file
@ -0,0 +1,309 @@
|
|||||||
|
SUMMARY = "A robust, scalable, and reliable SQL server"
|
||||||
|
HOMEPAGE = "http://mariadb.org"
|
||||||
|
SECTION = "libs"
|
||||||
|
LICENSE = "GPLv2"
|
||||||
|
LIC_FILES_CHKSUM = "file://COPYING;md5=b1becf0cfa3366e0f4d854d1d264f311"
|
||||||
|
|
||||||
|
SRC_URI = "https://downloads.mariadb.com/MariaDB/${BPN}-${PV}/source/${BPN}-${PV}.tar.gz \
|
||||||
|
file://my.cnf \
|
||||||
|
file://mysqld.service \
|
||||||
|
file://install_db.service \
|
||||||
|
file://install_db \
|
||||||
|
file://mysql-systemd-start \
|
||||||
|
file://configure.cmake-fix-valgrind.patch \
|
||||||
|
file://fix-a-building-failure.patch \
|
||||||
|
file://support-files-CMakeLists.txt-fix-do_populate_sysroot.patch \
|
||||||
|
file://sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch \
|
||||||
|
file://0001-disable-ucontext-on-musl.patch \
|
||||||
|
file://c11_atomics.patch \
|
||||||
|
file://clang_version_header_conflict.patch \
|
||||||
|
file://fix-arm-atomic.patch \
|
||||||
|
"
|
||||||
|
SRC_URI[md5sum] = "11220d0b94c5c24caa2e1e9eaba38e31"
|
||||||
|
SRC_URI[sha256sum] = "39e9723eaf620afd99b0925b2c2a5a50a89110ba50040adf14cce7cf89e5e21b"
|
||||||
|
|
||||||
|
UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases"
|
||||||
|
|
||||||
|
S = "${WORKDIR}/mariadb-${PV}"
|
||||||
|
|
||||||
|
BINCONFIG_GLOB = "mysql_config"
|
||||||
|
|
||||||
|
inherit cmake gettext binconfig update-rc.d useradd systemd multilib_script
|
||||||
|
|
||||||
|
MULTILIB_SCRIPTS = "${PN}-server:${bindir}/mysql_install_db ${PN}-server:${bindir}/mysqld_safe"
|
||||||
|
|
||||||
|
INITSCRIPT_PACKAGES = "${PN}-server ${PN}-setupdb"
|
||||||
|
INITSCRIPT_NAME_${PN}-server = "mysqld"
|
||||||
|
INITSCRIPT_PARAMS_${PN}-server ?= "start 45 5 . stop 45 0 6 1 ."
|
||||||
|
|
||||||
|
USERADD_PACKAGES = "${PN}-server"
|
||||||
|
USERADD_PARAM_${PN}-server = "--system --home-dir /var/mysql -g mysql --shell /bin/false mysql"
|
||||||
|
GROUPADD_PARAM_${PN}-server = "--system mysql"
|
||||||
|
|
||||||
|
INITSCRIPT_NAME_${PN}-setupdb = "install_db"
|
||||||
|
INITSCRIPT_PARAMS_${PN}-setupdb ?= "defaults 44 44"
|
||||||
|
|
||||||
|
SYSTEMD_PACKAGES = "${PN}-server ${PN}-setupdb"
|
||||||
|
SYSTEMD_SERVICE_${PN}-server = "mysqld.service"
|
||||||
|
SYSTEMD_AUTO_ENABLE_${PN}-server ?= "disable"
|
||||||
|
|
||||||
|
SYSTEMD_SERVICE_${PN}-setupdb = "install_db.service"
|
||||||
|
SYSTEMD_AUTO_ENABLE_${PN}-setupdb ?= "enable"
|
||||||
|
ALLOW_EMPTY_${PN}-setupdb ?= "1"
|
||||||
|
FILES_${PN}-setupdb = "${sysconfdir}/init.d/install_db"
|
||||||
|
|
||||||
|
EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'"
|
||||||
|
|
||||||
|
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} setupdb"
|
||||||
|
PACKAGECONFIG_class-native = ""
|
||||||
|
PACKAGECONFIG[pam] = ",-DWITHOUT_AUTH_PAM=TRUE,libpam"
|
||||||
|
PACKAGECONFIG[valgrind] = "-DWITH_VALGRIND=TRUE,-DWITH_VALGRIND=FALSE,valgrind"
|
||||||
|
PACKAGECONFIG[libedit] = "-DLIBEDIT_INTERFACE=TRUE,-DLIBEDIT_INTERFACE=FALSE,libedit"
|
||||||
|
PACKAGECONFIG[krb5] = ", ,krb5"
|
||||||
|
PACKAGECONFIG[setupdb] = ", ,,${PN}-setupdb"
|
||||||
|
|
||||||
|
# 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"
|
||||||
|
|
||||||
|
EXTRA_OECMAKE = "-DWITH_EMBEDDED_SERVER=ON \
|
||||||
|
-DWITH_JEMALLOC=no \
|
||||||
|
-DWITHOUT_TOKUDB=TRUE \
|
||||||
|
-DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE \
|
||||||
|
-DGROFF=FALSE \
|
||||||
|
-DNROFF=FALSE \
|
||||||
|
-DENABLE_DTRACE=FALSE \
|
||||||
|
-DWITH_PIC=ON \
|
||||||
|
-DINSTALL_LAYOUT=RPM \
|
||||||
|
-DINSTALL_DOCDIR:PATH=${datadir}/doc/${BPN} \
|
||||||
|
-DINSTALL_LIBDIR:PATH=${baselib} \
|
||||||
|
-DINSTALL_PLUGINDIR:PATH=${baselib}/plugin \
|
||||||
|
-DINSTALL_SYSCONFDIR:PATH=${sysconfdir} \
|
||||||
|
-DMYSQL_DATADIR:PATH=/var/mysql \
|
||||||
|
-DCAT_EXECUTABLE=`which cat` \
|
||||||
|
-DCMAKE_AR:FILEPATH=${AR}"
|
||||||
|
|
||||||
|
# With Ninja it fails with:
|
||||||
|
# make: *** No rule to make target `install'. Stop.
|
||||||
|
OECMAKE_GENERATOR = "Unix Makefiles"
|
||||||
|
|
||||||
|
ARM_INSTRUCTION_SET_armv4 = "arm"
|
||||||
|
ARM_INSTRUCTION_SET_armv5 = "arm"
|
||||||
|
|
||||||
|
do_configure_append() {
|
||||||
|
# handle distros with different values of ${libexecdir}
|
||||||
|
libexecdir2=`echo ${libexecdir} | sed -e 's+/usr/++g'`
|
||||||
|
sed -i -e "s:/libexec:/$libexecdir2:g" ${S}/scripts/mysql_install_db.sh
|
||||||
|
sed -i -e "s:mysqld libexec:mysqld $libexecdir2:g" ${S}/scripts/mysql_install_db.sh
|
||||||
|
sed -i -e "s:/libexec:/$libexecdir2:g" ${S}/scripts/mysqld_safe.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
do_generate_toolchain_file_append_class-native () {
|
||||||
|
# If these are set cmake will assume we're cross-compiling, which will
|
||||||
|
# result in certain things we want being disabled
|
||||||
|
sed -i "/set( CMAKE_SYSTEM_NAME/d" ${WORKDIR}/toolchain.cmake
|
||||||
|
sed -i "/set( CMAKE_SYSTEM_PROCESSOR/d" ${WORKDIR}/toolchain.cmake
|
||||||
|
}
|
||||||
|
|
||||||
|
do_compile_prepend_class-target () {
|
||||||
|
# These need to be in-tree or make will think they need to be built,
|
||||||
|
# and since we're cross-compiling that is disabled
|
||||||
|
cp ${STAGING_BINDIR_NATIVE}/comp_err ${S}/extra
|
||||||
|
cp ${STAGING_BINDIR_NATIVE}/comp_sql ${S}/scripts
|
||||||
|
|
||||||
|
if [ "${@bb.utils.contains('PACKAGECONFIG', 'krb5', 'yes', 'no', d)}" = "no" ]; then
|
||||||
|
if ! [ -e ${B}/include/openssl/kssl.h ] ; then
|
||||||
|
mkdir -p ${B}/include/openssl
|
||||||
|
echo "#ifndef KSSL_H" >${B}/include/openssl/kssl.h
|
||||||
|
echo "#define KSSL_H" >>${B}/include/openssl/kssl.h
|
||||||
|
echo "#include <openssl/opensslconf.h>">>${B}/include/openssl/kssl.h
|
||||||
|
echo "#endif" >>${B}/include/openssl/kssl.h
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# workaround to handle out-of-source build from source package
|
||||||
|
yacc_files="sql_yacc.hh sql_yacc.cc sql_yacc_ora.hh sql_yacc_ora.cc"
|
||||||
|
for yacc_file in ${yacc_files}; do
|
||||||
|
cp ${S}/sql/${yacc_file} ${B}/sql/${yacc_file}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
SYSROOT_PREPROCESS_FUNCS += "mariadb_sysroot_preprocess"
|
||||||
|
|
||||||
|
# We need to append this so it runs *after* binconfig's preprocess function
|
||||||
|
#
|
||||||
|
# We really don't care exactly what the directories were set to originally.
|
||||||
|
# plugindir is not fixed, but we don't create any plugins.
|
||||||
|
#
|
||||||
|
mariadb_sysroot_preprocess () {
|
||||||
|
sed -i -es,^pkgincludedir=.*,pkgincludedir=\'${STAGING_INCDIR}/mysql\', ${SYSROOT_DESTDIR}${bindir_crossscripts}/mysql_config
|
||||||
|
sed -i -es,^pkglibdir=.*,pkglibdir=\'${STAGING_LIBDIR}\', ${SYSROOT_DESTDIR}${bindir_crossscripts}/mysql_config
|
||||||
|
}
|
||||||
|
|
||||||
|
do_install() {
|
||||||
|
oe_runmake 'DESTDIR=${D}' install
|
||||||
|
|
||||||
|
install -d ${D}/${sysconfdir}/init.d
|
||||||
|
install -m 0644 ${WORKDIR}/my.cnf ${D}/${sysconfdir}/
|
||||||
|
install -m 0755 ${WORKDIR}/install_db ${D}/${sysconfdir}/init.d/
|
||||||
|
mv ${D}/${sysconfdir}/init.d/mysql ${D}/${sysconfdir}/init.d/mysqld
|
||||||
|
|
||||||
|
install -d ${D}${systemd_unitdir}/system
|
||||||
|
install -m 0644 ${WORKDIR}/mysqld.service ${D}${systemd_unitdir}/system
|
||||||
|
install -m 0644 ${WORKDIR}/install_db.service ${D}${systemd_unitdir}/system
|
||||||
|
sed -i -e 's,@BINDIR@,${bindir},g' -e 's,@PREFIX@,${prefix},g' ${D}${systemd_unitdir}/system/mysqld.service \
|
||||||
|
${D}${systemd_unitdir}/system/install_db.service
|
||||||
|
|
||||||
|
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
|
||||||
|
install -d ${D}${sysconfdir}/tmpfiles.d
|
||||||
|
echo "f /var/log/mysqld.err 0640 mysql mysql -" \
|
||||||
|
> ${D}${sysconfdir}/tmpfiles.d/99-mysqld.conf
|
||||||
|
fi
|
||||||
|
install -d ${D}${bindir}
|
||||||
|
install -m 755 ${WORKDIR}/mysql-systemd-start ${D}${bindir}
|
||||||
|
install -d ${D}${datadir}/doc/${PN}
|
||||||
|
if [ -f ${D}${datadir}/doc/README ]; then
|
||||||
|
mv ${D}${datadir}/doc/README ${D}${datadir}/doc/${PN}/
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
PACKAGES = "${PN}-dbg ${PN} \
|
||||||
|
libmysqlclient-r libmysqlclient-r-dev libmysqlclient-r-staticdev \
|
||||||
|
libmysqlclient libmysqlclient-dev libmysqlclient-staticdev \
|
||||||
|
libmysqld libmysqld-dev ${PN}-client ${PN}-server ${PN}-setupdb ${PN}-leftovers"
|
||||||
|
CONFFILES_${PN}-server += "${sysconfdir}/my.cnf ${sysconfdir}/my.cnf.d/server.cnf"
|
||||||
|
CONFFILES_${PN}-client += "${sysconfdir}/my.cnf.d/mysql-clients.cnf"
|
||||||
|
CONFFILES_libmysqlclient += "${sysconfdir}/my.cnf.d/client.cnf"
|
||||||
|
|
||||||
|
RPROVIDES_${PN}-dbg += "libmysqlclient-r-dbg libmysqlclient-dbg"
|
||||||
|
|
||||||
|
FILES_${PN} = " "
|
||||||
|
RDEPENDS_${PN} = "${PN}-client ${PN}-server"
|
||||||
|
ALLOW_EMPTY_${PN} = "1"
|
||||||
|
|
||||||
|
RDEPENDS_${PN}-client = "perl perl-module-getopt-long perl-module-file-temp \
|
||||||
|
perl-module-fcntl perl-module-sys-hostname perl-module-ipc-open3 \
|
||||||
|
perl-module-exporter"
|
||||||
|
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"
|
||||||
|
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 \
|
||||||
|
perl-module-file-spec perl-module-file-find perl-module-file-basename perl-module-file-path \
|
||||||
|
perl-module-constant perl-module-lib perl-module-file-temp perl-module-file-spec-functions \
|
||||||
|
perl-module-io-socket-inet perl-module-io-select bash"
|
||||||
|
RDEPENDS_${PN}-setupdb = "coreutils"
|
||||||
|
|
||||||
|
# Allow old code to link to the backward compatible library
|
||||||
|
RDEPENDS_libmysqlclient-dev = "libmysqlclient-r-dev"
|
||||||
|
|
||||||
|
FILES_libmysqlclient = "\
|
||||||
|
${libdir}/libmysqlclient.so.* \
|
||||||
|
${libdir}/libmariadb.so.* \
|
||||||
|
${sysconfdir}/my.cnf.d/client.cnf"
|
||||||
|
FILES_libmysqlclient-dev = " \
|
||||||
|
${includedir}/mysql/ \
|
||||||
|
${libdir}/libmysqlclient.so \
|
||||||
|
${libdir}/libmariadb.so \
|
||||||
|
${sysconfdir}/aclocal \
|
||||||
|
${bindir}/mysql_config"
|
||||||
|
FILES_libmysqlclient-staticdev = "\
|
||||||
|
${libdir}/*.a"
|
||||||
|
|
||||||
|
# Avoid warnings about ha_xtradb.so.0.0.0 and ha_innodb_plugin.so.0.0.0
|
||||||
|
# which are intentionally non-PIC on 32-bit x86 (see e.g.
|
||||||
|
# storage/xtradb/plug.in in the source)
|
||||||
|
INSANE_SKIP_libmysqlclient_append_x86 = " textrel"
|
||||||
|
|
||||||
|
FILES_libmysqlclient-r = "${libdir}/libmysqlclient_r.so.*"
|
||||||
|
FILES_libmysqlclient-r-dev = "\
|
||||||
|
${libdir}/libmysqlclient_r.so"
|
||||||
|
FILES_libmysqlclient-r-staticdev = "${libdir}/libmysqlclient_r.a"
|
||||||
|
|
||||||
|
FILES_libmysqld = "\
|
||||||
|
${libdir}/libmysqld.so.* \
|
||||||
|
${libdir}/libmariadbd.so.*"
|
||||||
|
FILES_libmysqld-dev = "\
|
||||||
|
${libdir}/libmysqld.so \
|
||||||
|
${libdir}/libmariadbd.so"
|
||||||
|
|
||||||
|
FILES_${PN}-client = "\
|
||||||
|
${bindir}/myisam_ftdump \
|
||||||
|
${bindir}/mysql \
|
||||||
|
${bindir}/mysql_client_test \
|
||||||
|
${bindir}/mysql_client_test_embedded \
|
||||||
|
${bindir}/mysql_find_rows \
|
||||||
|
${bindir}/mysql_fix_extensions \
|
||||||
|
${bindir}/mysql_waitpid \
|
||||||
|
${bindir}/mysqlaccess \
|
||||||
|
${bindir}/mysqladmin \
|
||||||
|
${bindir}/mysqlbug \
|
||||||
|
${bindir}/mysqlcheck \
|
||||||
|
${bindir}/mysqldump \
|
||||||
|
${bindir}/mysqldumpslow \
|
||||||
|
${bindir}/mysqlimport \
|
||||||
|
${bindir}/mysqlshow \
|
||||||
|
${bindir}/mysqlslap \
|
||||||
|
${bindir}/mysqltest_embedded \
|
||||||
|
${libexecdir}/mysqlmanager \
|
||||||
|
${sysconfdir}/my.cnf.d/mysql-clients.cnf"
|
||||||
|
|
||||||
|
FILES_${PN}-server = "\
|
||||||
|
${bindir}/comp_err \
|
||||||
|
${bindir}/isamchk \
|
||||||
|
${bindir}/isamlog \
|
||||||
|
${bindir}/msql2mysql \
|
||||||
|
${bindir}/my_print_defaults \
|
||||||
|
${bindir}/myisamchk \
|
||||||
|
${bindir}/myisamlog \
|
||||||
|
${bindir}/myisampack \
|
||||||
|
${bindir}/mysql_convert_table_format \
|
||||||
|
${bindir}/mysql_fix_privilege_tables \
|
||||||
|
${bindir}/mysql_install_db \
|
||||||
|
${bindir}/mysql_secure_installation \
|
||||||
|
${bindir}/mysql_setpermission \
|
||||||
|
${bindir}/mysql-systemd-start \
|
||||||
|
${bindir}/mysql_tzinfo_to_sql \
|
||||||
|
${bindir}/mysql_upgrade \
|
||||||
|
${bindir}/mysql_plugin \
|
||||||
|
${bindir}/mysql_zap \
|
||||||
|
${bindir}/mysqlbinlog \
|
||||||
|
${bindir}/mysqld_multi \
|
||||||
|
${bindir}/mysqld_safe \
|
||||||
|
${bindir}/mysqld_safe_helper \
|
||||||
|
${bindir}/mysqlhotcopy \
|
||||||
|
${bindir}/mysqltest \
|
||||||
|
${bindir}/ndb_delete_all \
|
||||||
|
${bindir}/ndb_desc \
|
||||||
|
${bindir}/ndb_drop_index \
|
||||||
|
${bindir}/ndb_drop_table \
|
||||||
|
${bindir}/ndb_mgm \
|
||||||
|
${bindir}/ndb_restore \
|
||||||
|
${bindir}/ndb_select_all \
|
||||||
|
${bindir}/ndb_select_count \
|
||||||
|
${bindir}/ndb_show_tables \
|
||||||
|
${bindir}/ndb_waiter \
|
||||||
|
${bindir}/pack_isam \
|
||||||
|
${bindir}/perror \
|
||||||
|
${bindir}/replace \
|
||||||
|
${bindir}/resolve_stack_dump \
|
||||||
|
${bindir}/resolveip \
|
||||||
|
${libexecdir}/mysqld \
|
||||||
|
${sbindir}/mysqld \
|
||||||
|
${sbindir}/ndb_cpcd \
|
||||||
|
${sbindir}/ndbd \
|
||||||
|
${sbindir}/ndb_mgmd \
|
||||||
|
${libdir}/plugin/*.so \
|
||||||
|
${datadir}/mysql/ \
|
||||||
|
${localstatedir}/mysql/ \
|
||||||
|
${sysconfdir}/init.d/mysqld \
|
||||||
|
${sysconfdir}/my.cnf \
|
||||||
|
${sysconfdir}/my.cnf.d/server.cnf \
|
||||||
|
${sysconfdir}/tmpfiles.d"
|
||||||
|
|
||||||
|
DESCRIPTION_${PN}-leftovers = "unpackaged and probably unneeded files for ${PN}"
|
||||||
|
FILES_${PN}-leftovers = "/"
|
@ -0,0 +1,26 @@
|
|||||||
|
From b658bdb38b7ff6a78915fd0ac390fc224e4006cb Mon Sep 17 00:00:00 2001
|
||||||
|
From: Khem Raj <raj.khem@gmail.com>
|
||||||
|
Date: Sun, 26 Mar 2017 14:30:33 -0700
|
||||||
|
Subject: [PATCH] disable ucontext on musl
|
||||||
|
|
||||||
|
musl does not have *contex() APIs even though it has ucontext.h header
|
||||||
|
|
||||||
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||||
|
|
||||||
|
---
|
||||||
|
include/my_context.h | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/include/my_context.h b/include/my_context.h
|
||||||
|
index ea0e3496..4c9b37dc 100644
|
||||||
|
--- a/include/my_context.h
|
||||||
|
+++ b/include/my_context.h
|
||||||
|
@@ -31,7 +31,7 @@
|
||||||
|
#define MY_CONTEXT_USE_X86_64_GCC_ASM
|
||||||
|
#elif defined(__GNUC__) && __GNUC__ >= 3 && defined(__i386__)
|
||||||
|
#define MY_CONTEXT_USE_I386_GCC_ASM
|
||||||
|
-#elif defined(HAVE_UCONTEXT_H)
|
||||||
|
+#elif defined(__GLIBC__) && defined(HAVE_UCONTEXT_H)
|
||||||
|
#define MY_CONTEXT_USE_UCONTEXT
|
||||||
|
#else
|
||||||
|
#define MY_CONTEXT_DISABLE
|
67
recipes-dbs/mysql/mariadb/c11_atomics.patch
Normal file
67
recipes-dbs/mysql/mariadb/c11_atomics.patch
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
Author: Vicențiu Ciorbaru <vicentiu@mariadb.org>
|
||||||
|
Date: Fri Dec 21 19:14:04 2018 +0200
|
||||||
|
|
||||||
|
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>
|
||||||
|
|
||||||
|
--- a/configure.cmake
|
||||||
|
+++ b/configure.cmake
|
||||||
|
@@ -926,7 +926,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)
|
||||||
|
--- 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})
|
||||||
|
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)
|
||||||
|
--- a/sql/CMakeLists.txt
|
||||||
|
+++ b/sql/CMakeLists.txt
|
||||||
|
@@ -178,6 +178,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 AND NOT WITHOUT_DYNAMIC_PLUGINS)
|
||||||
|
|
@ -0,0 +1,32 @@
|
|||||||
|
libc++ also has a file called version and this file and how cflags are specified
|
||||||
|
it ends up including this file and resulting in compile errors
|
||||||
|
|
||||||
|
fixes errors like
|
||||||
|
storage/mroonga/version:1:1: error: expected unqualified-id
|
||||||
|
7.07
|
||||||
|
^
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||||
|
|
||||||
|
--- a/storage/mroonga/CMakeLists.txt
|
||||||
|
+++ b/storage/mroonga/CMakeLists.txt
|
||||||
|
@@ -80,7 +80,7 @@ else()
|
||||||
|
set(MRN_SOURCE_DIR ${CMAKE_SOURCE_DIR})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-file(READ ${MRN_SOURCE_DIR}/version MRN_VERSION)
|
||||||
|
+file(READ ${MRN_SOURCE_DIR}/ver MRN_VERSION)
|
||||||
|
file(READ ${MRN_SOURCE_DIR}/version_major MRN_VERSION_MAJOR)
|
||||||
|
file(READ ${MRN_SOURCE_DIR}/version_minor MRN_VERSION_MINOR)
|
||||||
|
file(READ ${MRN_SOURCE_DIR}/version_micro MRN_VERSION_MICRO)
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/storage/mroonga/ver
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+7.07
|
||||||
|
\ No newline at end of file
|
||||||
|
--- a/storage/mroonga/version
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1 +0,0 @@
|
||||||
|
-7.07
|
||||||
|
\ No newline at end of file
|
40
recipes-dbs/mysql/mariadb/configure.cmake-fix-valgrind.patch
Normal file
40
recipes-dbs/mysql/mariadb/configure.cmake-fix-valgrind.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From 24e2b0edc2612acefcc48414bb6f0aeb086061a9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jackie Huang <jackie.huang@windriver.com>
|
||||||
|
Date: Tue, 26 Feb 2019 23:57:06 -0800
|
||||||
|
Subject: [PATCH] configure.cmake: fix valgrind
|
||||||
|
|
||||||
|
Check valgrind headers only if WITH_VALGRIND is set.
|
||||||
|
|
||||||
|
mariadb uses two macros for valgrind compilations:
|
||||||
|
HAVE_valgrind - valgrind is installed and can be set by configure option -DWITH_VALGRIND
|
||||||
|
HAVE_VALGRIND - valgrind debug libraries is installed, set by auto check
|
||||||
|
|
||||||
|
We would like to set them both by the configure option so that we can use
|
||||||
|
PACKAGECONFIG to decide if valgrind is needed or not.
|
||||||
|
|
||||||
|
Upstream-Status: Inappropriate [oe specific]
|
||||||
|
|
||||||
|
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||||
|
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
|
||||||
|
---
|
||||||
|
configure.cmake | 5 ++---
|
||||||
|
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/configure.cmake b/configure.cmake
|
||||||
|
index 3cfc4b31..d017b3b3 100644
|
||||||
|
--- a/configure.cmake
|
||||||
|
+++ b/configure.cmake
|
||||||
|
@@ -930,10 +930,9 @@ HAVE_GCC_C11_ATOMICS)
|
||||||
|
|
||||||
|
IF(WITH_VALGRIND)
|
||||||
|
SET(HAVE_valgrind 1)
|
||||||
|
-ENDIF()
|
||||||
|
-
|
||||||
|
-CHECK_INCLUDE_FILES("valgrind/memcheck.h;valgrind/valgrind.h"
|
||||||
|
+ CHECK_INCLUDE_FILES("valgrind/memcheck.h;valgrind/valgrind.h"
|
||||||
|
HAVE_VALGRIND_MEMCHECK_H)
|
||||||
|
+ENDIF()
|
||||||
|
|
||||||
|
#--------------------------------------------------------------------
|
||||||
|
# Check for IPv6 support
|
35
recipes-dbs/mysql/mariadb/fix-a-building-failure.patch
Normal file
35
recipes-dbs/mysql/mariadb/fix-a-building-failure.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
From 1b2b6a61c9f82157cd2e0c3744f6c07e07aeb0bd Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
Date: Mon, 4 Mar 2019 01:11:30 -0800
|
||||||
|
Subject: [PATCH] fix a building failure
|
||||||
|
|
||||||
|
Upstream-Status: Inappropriate [configuration]
|
||||||
|
|
||||||
|
building failed since native does not generate import_executables.cmake
|
||||||
|
In fact, our building system will export the needed commands
|
||||||
|
|
||||||
|
Signed-off-by: Roy Li <rongqing.li@windriver.com>
|
||||||
|
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 5 -----
|
||||||
|
1 file changed, 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index fc30750..4f9110e 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -347,11 +347,6 @@ CHECK_PCRE()
|
||||||
|
|
||||||
|
CHECK_SYSTEMD()
|
||||||
|
|
||||||
|
-IF(CMAKE_CROSSCOMPILING)
|
||||||
|
- SET(IMPORT_EXECUTABLES "IMPORTFILE-NOTFOUND" CACHE FILEPATH "Path to import_executables.cmake from a native build")
|
||||||
|
- INCLUDE(${IMPORT_EXECUTABLES})
|
||||||
|
-ENDIF()
|
||||||
|
-
|
||||||
|
#
|
||||||
|
# Setup maintainer mode options. Platform checks are
|
||||||
|
# not run with the warning options as to not perturb fragile checks
|
||||||
|
--
|
||||||
|
2.17.1
|
||||||
|
|
34
recipes-dbs/mysql/mariadb/fix-arm-atomic.patch
Normal file
34
recipes-dbs/mysql/mariadb/fix-arm-atomic.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From ffaaf4d43ebf2ef6d0229a60f407c1f5a06e5c53 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
Date: Fri, 15 Mar 2019 01:46:05 -0700
|
||||||
|
Subject: [PATCH] build_rocksdb.cmake: fix atomic support on arm
|
||||||
|
|
||||||
|
Check to link with libatomic to enable C11 atomics support
|
||||||
|
to fix below build error on arm:
|
||||||
|
| /build/tmp/work/armv5e-wrs-linux-gnueabi/mariadb/10.3.13-r0/recipe-sysroot-native/usr/bin/arm-wrs-linux-gnueabi/../../libexec/arm-wrs-linux-gnueabi/gcc/arm-wrs-linux-gnueabi/8.3.0/ld.bfd: librocksdblib.a(env_posix.cc.o): in function `std::__atomic_base<unsigned long long>::store(unsigned long long, std::memory_order)':
|
||||||
|
| /usr/include/c++/8.3.0/bits/atomic_base.h:374: undefined reference to `__atomic_store_8'
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
|
||||||
|
---
|
||||||
|
storage/rocksdb/build_rocksdb.cmake | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/storage/rocksdb/build_rocksdb.cmake b/storage/rocksdb/build_rocksdb.cmake
|
||||||
|
index c36c761..2b539ff 100644
|
||||||
|
--- a/storage/rocksdb/build_rocksdb.cmake
|
||||||
|
+++ b/storage/rocksdb/build_rocksdb.cmake
|
||||||
|
@@ -424,6 +424,9 @@ list(APPEND SOURCES ${CMAKE_CURRENT_BINARY_DIR}/build_version.cc)
|
||||||
|
|
||||||
|
ADD_CONVENIENCE_LIBRARY(rocksdblib ${SOURCES})
|
||||||
|
target_link_libraries(rocksdblib ${THIRDPARTY_LIBS} ${SYSTEM_LIBS})
|
||||||
|
+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
|
||||||
|
+ TARGET_LINK_LIBRARIES(rocksdblib atomic)
|
||||||
|
+ENDIF()
|
||||||
|
IF(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
||||||
|
set_target_properties(rocksdblib PROPERTIES COMPILE_FLAGS "-fPIC -fno-builtin-memcmp -frtti")
|
||||||
|
endif()
|
||||||
|
--
|
||||||
|
2.17.1
|
||||||
|
|
13
recipes-dbs/mysql/mariadb/install_db
Executable file
13
recipes-dbs/mysql/mariadb/install_db
Executable file
@ -0,0 +1,13 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
case "$1" in
|
||||||
|
start)
|
||||||
|
echo "Starting to install database for mariadb"
|
||||||
|
/usr/bin/mysql-systemd-start pre
|
||||||
|
echo "done."
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Usage: /etc/init.d/install_db start"
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
17
recipes-dbs/mysql/mariadb/install_db.service
Normal file
17
recipes-dbs/mysql/mariadb/install_db.service
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
#
|
||||||
|
# Simple install MySQL database service file
|
||||||
|
# It shoulb be done before mysqld.service
|
||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=Install MySQL Community Server Database
|
||||||
|
After=network.target
|
||||||
|
After=syslog.target
|
||||||
|
Before=mysqld.service
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
ExecStart=@BINDIR@/mysql-systemd-start pre
|
||||||
|
|
25
recipes-dbs/mysql/mariadb/my.cnf
Normal file
25
recipes-dbs/mysql/mariadb/my.cnf
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
[client]
|
||||||
|
#password = password
|
||||||
|
port = 3306
|
||||||
|
socket = /var/lib/mysql/mysql.sock
|
||||||
|
|
||||||
|
[mysqld_safe]
|
||||||
|
|
||||||
|
[mysqld]
|
||||||
|
user = mysql
|
||||||
|
port = 3306
|
||||||
|
socket = /var/lib/mysql/mysql.sock
|
||||||
|
pid-file = /var/lib/mysql/mysqld.pid
|
||||||
|
log-error = /var/log/mysqld.err
|
||||||
|
basedir = /usr
|
||||||
|
datadir = /var/lib/mysql
|
||||||
|
skip-external-locking
|
||||||
|
skip-networking
|
||||||
|
ignore-builtin-innodb
|
||||||
|
default-storage-engine = myisam
|
||||||
|
bind-address = localhost
|
||||||
|
|
||||||
|
#
|
||||||
|
# include all files from the config directory
|
||||||
|
#
|
||||||
|
!includedir /etc/my.cnf.d
|
66
recipes-dbs/mysql/mariadb/mysql-systemd-start
Normal file
66
recipes-dbs/mysql/mariadb/mysql-systemd-start
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
#
|
||||||
|
# Needed argument: pre | post
|
||||||
|
#
|
||||||
|
# pre mode : try to run mysql_install_db and fix perms and SELinux contexts
|
||||||
|
# post mode : ping server until answer is received
|
||||||
|
#
|
||||||
|
|
||||||
|
get_option () {
|
||||||
|
local section=$1
|
||||||
|
local option=$2
|
||||||
|
local default=$3
|
||||||
|
ret=$(/usr/bin/my_print_defaults $section | grep '^--'${option}'=' | cut -d= -f2-)
|
||||||
|
[ -z $ret ] && ret=$default
|
||||||
|
echo $ret
|
||||||
|
}
|
||||||
|
|
||||||
|
install_db () {
|
||||||
|
# Note: something different than datadir=/var/lib/mysql requires SELinux policy changes (in enforcing mode)
|
||||||
|
datadir=$(get_option mysqld datadir "/var/lib/mysql")
|
||||||
|
|
||||||
|
# Restore log, dir, perms and SELinux contexts
|
||||||
|
[ -d "$datadir" ] || install -d -m 0755 -omysql -gmysql "$datadir" || exit 1
|
||||||
|
log=/var/log/mysqld.log
|
||||||
|
[ -e $log ] || touch $log
|
||||||
|
chmod 0640 $log
|
||||||
|
chown mysql:mysql $log || exit 1
|
||||||
|
if [ -x /usr/sbin/restorecon ]; then
|
||||||
|
/usr/sbin/restorecon "$datadir"
|
||||||
|
/usr/sbin/restorecon $log
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If special mysql dir is in place, skip db install
|
||||||
|
[ -d "$datadir/mysql" ] && exit 0
|
||||||
|
|
||||||
|
# Create initial db
|
||||||
|
/usr/bin/mysql_install_db --rpm --datadir="$datadir" --user=mysql
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
pinger () {
|
||||||
|
# Wait for ping to answer to signal startup completed,
|
||||||
|
# might take a while in case of e.g. crash recovery
|
||||||
|
# MySQL systemd service will timeout script if no answer
|
||||||
|
datadir=$(get_option mysqld datadir "/var/lib/mysql")
|
||||||
|
socket=$(get_option mysqld socket "$datadir/mysql.sock")
|
||||||
|
case $socket in
|
||||||
|
/*) adminsocket="$socket" ;;
|
||||||
|
*) adminsocket="$datadir/$socket" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
while /bin/true ; do
|
||||||
|
sleep 1
|
||||||
|
mysqladmin --no-defaults --socket="$adminsocket" --user=UNKNOWN_MYSQL_USER ping >/dev/null 2>&1 && break
|
||||||
|
done
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# main
|
||||||
|
case $1 in
|
||||||
|
"pre") install_db ;;
|
||||||
|
"post") pinger ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
25
recipes-dbs/mysql/mariadb/mysqld.service
Normal file
25
recipes-dbs/mysql/mariadb/mysqld.service
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=MariaDB database server
|
||||||
|
After=syslog.target
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
PIDFile=/var/lib/mysql/mysqld.pid
|
||||||
|
Type=simple
|
||||||
|
User=mysql
|
||||||
|
Group=mysql
|
||||||
|
|
||||||
|
# Execute post scripts as root
|
||||||
|
PermissionsStartOnly=true
|
||||||
|
|
||||||
|
# Start main service
|
||||||
|
ExecStart=@BINDIR@/mysqld_safe --basedir=@PREFIX@
|
||||||
|
|
||||||
|
# Don't signal startup success before a ping works
|
||||||
|
ExecStartPost=@BINDIR@/mysql-systemd-start post
|
||||||
|
|
||||||
|
TimeoutSec=300
|
||||||
|
PrivateTmp=true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
@ -0,0 +1,65 @@
|
|||||||
|
From 796464015bffe6e0beca9e1c355b223512803c3e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
Date: Wed, 27 Feb 2019 23:01:00 -0800
|
||||||
|
Subject: [PATCH] sql/CMakeLists.txt: fix gen_lex_hash not found
|
||||||
|
|
||||||
|
Fix the below do_compile issue in cross-compiling env.
|
||||||
|
| make[2]: *** No rule to make target '/build/tmp/work/aarch64-poky-linux/mariadb/10.3.13-r0/mariadb-10.3.13/sql/gen_lex_hash', needed by 'sql/lex_hash.h'. Stop.
|
||||||
|
| make[2]: *** No rule to make target '/build/tmp/work/aarch64-poky-linux/mariadb/10.3.13-r0/mariadb-10.3.13/sql/gen_lex_token', needed by 'sql/lex_token.h'. Stop.
|
||||||
|
|
||||||
|
Upstream-Status: Inappropriate [oe build specific]
|
||||||
|
|
||||||
|
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
|
||||||
|
---
|
||||||
|
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
|
||||||
|
--- a/sql/CMakeLists.txt
|
||||||
|
+++ b/sql/CMakeLists.txt
|
||||||
|
@@ -50,11 +50,16 @@ ${WSREP_INCLUDES}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-ADD_CUSTOM_COMMAND(
|
||||||
|
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_token.h
|
||||||
|
- COMMAND gen_lex_token > lex_token.h
|
||||||
|
- DEPENDS gen_lex_token
|
||||||
|
-)
|
||||||
|
+IF(NOT CMAKE_CROSSCOMPILING)
|
||||||
|
+ ADD_CUSTOM_COMMAND(
|
||||||
|
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_token.h
|
||||||
|
+ COMMAND gen_lex_token > lex_token.h
|
||||||
|
+ DEPENDS gen_lex_token)
|
||||||
|
+ELSE()
|
||||||
|
+ ADD_CUSTOM_COMMAND(
|
||||||
|
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_token.h
|
||||||
|
+ COMMAND gen_lex_token > lex_token.h)
|
||||||
|
+ENDIF()
|
||||||
|
|
||||||
|
ADD_DEFINITIONS(-DMYSQL_SERVER -DHAVE_EVENT_SCHEDULER)
|
||||||
|
|
||||||
|
@@ -370,11 +375,16 @@ IF(NOT CMAKE_CROSSCOMPILING)
|
||||||
|
ADD_EXECUTABLE(gen_lex_hash gen_lex_hash.cc)
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
|
-ADD_CUSTOM_COMMAND(
|
||||||
|
- OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_hash.h
|
||||||
|
- COMMAND gen_lex_hash > lex_hash.h
|
||||||
|
- DEPENDS gen_lex_hash
|
||||||
|
-)
|
||||||
|
+IF(NOT CMAKE_CROSSCOMPILING)
|
||||||
|
+ ADD_CUSTOM_COMMAND(
|
||||||
|
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_hash.h
|
||||||
|
+ COMMAND gen_lex_hash > lex_hash.h
|
||||||
|
+ DEPENDS gen_lex_hash)
|
||||||
|
+ELSE()
|
||||||
|
+ ADD_CUSTOM_COMMAND(
|
||||||
|
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/lex_hash.h
|
||||||
|
+ 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")
|
@ -0,0 +1,34 @@
|
|||||||
|
From 4ac5b555d058d4d489f25a3806a787b7b2465d09 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
Date: Wed, 27 Feb 2019 22:41:26 -0800
|
||||||
|
Subject: [PATCH] support-files/CMakeLists.txt: fix do_populate_sysroot issue
|
||||||
|
|
||||||
|
Comment out the logic which for suse as it introduces
|
||||||
|
below do_populate_sysroot error:
|
||||||
|
ERROR: mariadb-native-10.3.13-r0 do_populate_sysroot: sstate found an absolute path symlink /build/tmp/work/x86_64-linux/mariadb-native/10.3.13-r0/sysroot-destdir/build/tmp/work/x86_64-linux/mariadb-native/10.3.13-r0/recipe-sysroot-native/usr/sbin/rcmysql pointing at /build/tmp/work/x86_64-linux/mariadb-native/10.3.13-r0/recipe-sysroot-native/etc/init.d/mysql. Please replace this with a relative link.
|
||||||
|
|
||||||
|
Upstream-Status: Inappropriate[oe build specific]
|
||||||
|
|
||||||
|
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
|
||||||
|
---
|
||||||
|
support-files/CMakeLists.txt | 7 -------
|
||||||
|
1 file changed, 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/support-files/CMakeLists.txt b/support-files/CMakeLists.txt
|
||||||
|
index b5767432..56733de1 100644
|
||||||
|
--- a/support-files/CMakeLists.txt
|
||||||
|
+++ b/support-files/CMakeLists.txt
|
||||||
|
@@ -165,12 +165,5 @@ IF(UNIX)
|
||||||
|
INSTALL(FILES rpm/enable_encryption.preset DESTINATION ${INSTALL_SYSCONF2DIR}
|
||||||
|
COMPONENT IniFiles)
|
||||||
|
ENDIF()
|
||||||
|
-
|
||||||
|
- # This is for SuSE:
|
||||||
|
- INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink
|
||||||
|
- ${INSTALL_SYSCONFDIR}/init.d/mysql
|
||||||
|
- ${INSTALL_SBINDIR}/rcmysql
|
||||||
|
- WORKING_DIRECTORY \$ENV{DESTDIR}${prefix})"
|
||||||
|
- COMPONENT SupportFiles)
|
||||||
|
ENDIF(INSTALL_SYSCONFDIR)
|
||||||
|
ENDIF()
|
27
recipes-dbs/mysql/mariadb_10.3.16.bb
Normal file
27
recipes-dbs/mysql/mariadb_10.3.16.bb
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
require mariadb.inc
|
||||||
|
|
||||||
|
EXTRA_OECMAKE += "-DSTACK_DIRECTION=-1"
|
||||||
|
|
||||||
|
DEPENDS += "mariadb-native bison-native openssl ncurses zlib readline libaio libevent libxml2"
|
||||||
|
|
||||||
|
PROVIDES += "mysql5 libmysqlclient"
|
||||||
|
|
||||||
|
RPROVIDES_${PN} += "mysql5"
|
||||||
|
RREPLACES_${PN} += "mysql5"
|
||||||
|
RCONFLICTS_${PN} += "mysql5"
|
||||||
|
|
||||||
|
RPROVIDES_${PN}-dbg += "mysql5-dbg"
|
||||||
|
RREPLACES_${PN}-dbg += "mysql5-dbg"
|
||||||
|
RCONFLICTS_${PN}-dbg += "mysql5-dbg"
|
||||||
|
|
||||||
|
RPROVIDES_${PN}-leftovers += "mysql5-leftovers"
|
||||||
|
RREPLACES_${PN}-leftovers += "mysql5-leftovers"
|
||||||
|
RCONFLICTS_${PN}-leftovers += "mysql5-leftovers"
|
||||||
|
|
||||||
|
RPROVIDES_${PN}-client += "mysql5-client"
|
||||||
|
RREPLACES_${PN}-client += "mysql5-client"
|
||||||
|
RCONFLICTS_${PN}-client += "mysql5-client"
|
||||||
|
|
||||||
|
RPROVIDES_${PN}-server += "mysql5-server"
|
||||||
|
RREPLACES_${PN}-server += "mysql5-server"
|
||||||
|
RCONFLICTS_${PN}-server += "mysql5-server"
|
@ -0,0 +1,34 @@
|
|||||||
|
From 45436592aa64308b2ab46f84c6107c6d7de0a3ec Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
Date: Wed, 6 Mar 2019 00:16:17 -0800
|
||||||
|
Subject: [PATCH] _mysql.c: fix compilation with MariaDB 10.3.13
|
||||||
|
|
||||||
|
Use standard API function MYSQL_OPT_RECONNECT
|
||||||
|
instead of direct modification of internal structures
|
||||||
|
which does not work for MariaDB.
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
---
|
||||||
|
_mysql.c | 9 ++++++++-
|
||||||
|
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
--- a/_mysql.c
|
||||||
|
+++ b/_mysql.c
|
||||||
|
@@ -2002,7 +2002,14 @@ _mysql_ConnectionObject_ping(
|
||||||
|
int r, reconnect = -1;
|
||||||
|
if (!PyArg_ParseTuple(args, "|I", &reconnect)) return NULL;
|
||||||
|
check_connection(self);
|
||||||
|
- if ( reconnect != -1 ) self->connection.reconnect = reconnect;
|
||||||
|
+ if ( reconnect != -1 ) {
|
||||||
|
+#if MYSQL_VERSION_ID >= 50013
|
||||||
|
+ my_bool recon = reconnect;
|
||||||
|
+ mysql_options(&self->connection, MYSQL_OPT_RECONNECT, &recon);
|
||||||
|
+#else
|
||||||
|
+ self->connection.reconnect = reconnect;
|
||||||
|
+#endif
|
||||||
|
+ }
|
||||||
|
Py_BEGIN_ALLOW_THREADS
|
||||||
|
r = mysql_ping(&(self->connection));
|
||||||
|
Py_END_ALLOW_THREADS
|
19
recipes-dbs/mysql/mysql-python_1.2.5.bb
Normal file
19
recipes-dbs/mysql/mysql-python_1.2.5.bb
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
SUMMARY = "Python interface to MySQL"
|
||||||
|
HOMEPAGE = "https://github.com/farcepest/MySQLdb1"
|
||||||
|
SECTION = "devel/python"
|
||||||
|
LICENSE = "GPLv2"
|
||||||
|
LIC_FILES_CHKSUM = "file://GPL-2.0;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||||
|
|
||||||
|
DEPENDS = "mysql5"
|
||||||
|
|
||||||
|
SRCNAME = "MySQL-python"
|
||||||
|
|
||||||
|
SRC_URI = "https://pypi.python.org/packages/source/M/${SRCNAME}/${SRCNAME}-${PV}.zip \
|
||||||
|
file://0001-_mysql.c-fix-compilation-with-MariaDB-with-10.3.13.patch \
|
||||||
|
"
|
||||||
|
SRC_URI[md5sum] = "654f75b302db6ed8dc5a898c625e030c"
|
||||||
|
SRC_URI[sha256sum] = "811040b647e5d5686f84db415efd697e6250008b112b6909ba77ac059e140c74"
|
||||||
|
|
||||||
|
S = "${WORKDIR}/${SRCNAME}-${PV}"
|
||||||
|
|
||||||
|
inherit setuptools
|
Loading…
x
Reference in New Issue
Block a user