|
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk |
|
|
|
|
|
|
|
PKG_NAME:=mariadb |
|
|
|
PKG_VERSION:=10.2.19 |
|
|
|
PKG_RELEASE:=2 |
|
|
|
PKG_RELEASE:=3 |
|
|
|
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz |
|
|
|
PKG_SOURCE_URL := \
|
|
|
@ -33,39 +33,50 @@ PKG_BUILD_DEPENDS:=libevent2 mariadb/host |
|
|
|
|
|
|
|
CMAKE_INSTALL:=1 |
|
|
|
|
|
|
|
PLUGIN_DIR:=/usr/lib/mysql/plugin |
|
|
|
CONF_DIR:=/etc/mysql |
|
|
|
PLUGIN_DIR:=/usr/lib/mariadb/plugin |
|
|
|
SHARE_DIR:=/usr/share/mariadb |
|
|
|
|
|
|
|
MARIADB_DISABLE_ENGINES := \
|
|
|
|
cassandra \
|
|
|
|
example \
|
|
|
|
mroonga \
|
|
|
|
oqgraph \
|
|
|
|
rocksdb \
|
|
|
|
test_sql_discovery \
|
|
|
|
tokudb |
|
|
|
|
|
|
|
MARIADB_DISABLE_PLUGINS := \
|
|
|
|
audit_null \
|
|
|
|
auth_examples \
|
|
|
|
aws_key_management \
|
|
|
|
cracklib_password_check \
|
|
|
|
daemon_example \
|
|
|
|
debug_key_management \
|
|
|
|
example_key_management \
|
|
|
|
fulltext |
|
|
|
|
|
|
|
MARIADB_LIB_PLUGINS := \
|
|
|
|
auth_gssapi_client |
|
|
|
|
|
|
|
MARIADB_SERVER_PLUGINS := \
|
|
|
|
adt_null \
|
|
|
|
auth_0x0100 \
|
|
|
|
auth_ed25519 \
|
|
|
|
auth_socket \
|
|
|
|
auth_test_plugin \
|
|
|
|
auth_gssapi \
|
|
|
|
auth_pam \
|
|
|
|
client_ed25519 \
|
|
|
|
debug_key_management \
|
|
|
|
dialog_examples \
|
|
|
|
disks \
|
|
|
|
example_key_management \
|
|
|
|
feedback \
|
|
|
|
file_key_management \
|
|
|
|
ha_archive \
|
|
|
|
ha_blackhole \
|
|
|
|
ha_connect \
|
|
|
|
ha_example \
|
|
|
|
ha_federated \
|
|
|
|
ha_federatedx \
|
|
|
|
ha_sequence \
|
|
|
|
ha_sphinx \
|
|
|
|
ha_spider \
|
|
|
|
ha_test_sql_discovery \
|
|
|
|
handlersocket \
|
|
|
|
libdaemon_example \
|
|
|
|
locales \
|
|
|
|
metadata_lock_info \
|
|
|
|
mypluglib \
|
|
|
|
qa_auth_client \
|
|
|
|
qa_auth_interface \
|
|
|
|
qa_auth_server \
|
|
|
|
query_cache_info \
|
|
|
|
query_response_time \
|
|
|
|
semisync_master \
|
|
|
@ -76,39 +87,29 @@ MARIADB_SERVER_PLUGINS := \ |
|
|
|
wsrep_info |
|
|
|
|
|
|
|
PKG_CONFIG_DEPENDS := \
|
|
|
|
$(patsubst %,CONFIG_PACKAGE_lib$(PKG_NAME)-plugin-%,$(subst _,-,$(MARIADB_LIB_PLUGINS))) \
|
|
|
|
$(patsubst %,CONFIG_PACKAGE_$(PKG_NAME)-server-plugin-%,$(subst _,-,$(MARIADB_SERVER_PLUGINS))) \
|
|
|
|
CONFIG_PACKAGE_mariadb-server |
|
|
|
|
|
|
|
plugin-adt_null := PLUGIN_AUDIT_NULL |
|
|
|
plugin-auth_0x0100 := PLUGIN_AUTH_0X0100 |
|
|
|
plugin-auth_gssapi_client := PLUGIN_AUTH_GSSAPI_CLIENT |
|
|
|
|
|
|
|
plugin-auth_ed25519 := PLUGIN_AUTH_ED25519 |
|
|
|
plugin-auth_socket := PLUGIN_AUTH_SOCKET |
|
|
|
plugin-auth_test_plugin := PLUGIN_AUTH_TEST_PLUGIN |
|
|
|
plugin-auth_gssapi := PLUGIN_AUTH_GSSAPI |
|
|
|
plugin-auth_pam := PLUGIN_AUTH_PAM |
|
|
|
plugin-client_ed25519 := PLUGIN_CLIENT_ED25519 |
|
|
|
plugin-debug_key_management := PLUGIN_DEBUG_KEY_MANAGEMENT |
|
|
|
plugin-dialog_examples := PLUGIN_DIALOG_EXAMPLES |
|
|
|
plugin-disks := PLUGIN_DISKS |
|
|
|
plugin-example_key_management := PLUGIN_EXAMPLE_KEY_MANAGEMENT |
|
|
|
plugin-feedback := PLUGIN_FEEDBACK |
|
|
|
plugin-file_key_management := PLUGIN_FILE_KEY_MANAGEMENT |
|
|
|
plugin-ha_archive := PLUGIN_ARCHIVE |
|
|
|
plugin-ha_blackhole := PLUGIN_BLACKHOLE |
|
|
|
plugin-ha_connect := PLUGIN_CONNECT |
|
|
|
plugin-ha_example := PLUGIN_EXAMPLE |
|
|
|
plugin-ha_federated := PLUGIN_FEDERATED |
|
|
|
plugin-ha_federatedx := PLUGIN_FEDERATEDX |
|
|
|
plugin-ha_sequence := PLUGIN_SEQUENCE |
|
|
|
plugin-ha_sphinx := PLUGIN_SPHINX |
|
|
|
plugin-ha_spider := PLUGIN_SPIDER |
|
|
|
plugin-ha_test_sql_discovery := PLUGIN_TEST_SQL_DISCOVERY |
|
|
|
plugin-handlersocket := PLUGIN_HANDLERSOCKET |
|
|
|
plugin-libdaemon_example := PLUGIN_DAEMON_EXAMPLE |
|
|
|
plugin-locales := PLUGIN_LOCALES |
|
|
|
plugin-metadata_lock_info := PLUGIN_METADATA_LOCK_INFO |
|
|
|
plugin-mypluglib := PLUGIN_FTEXAMPLE |
|
|
|
plugin-qa_auth_client := PLUGIN_QA_AUTH_CLIENT |
|
|
|
plugin-qa_auth_interface := PLUGIN_QA_AUTH_INTERFACE |
|
|
|
plugin-qa_auth_server := PLUGIN_QA_AUTH_SERVER |
|
|
|
plugin-query_cache_info := PLUGIN_QUERY_CACHE_INFO |
|
|
|
plugin-query_response_time := PLUGIN_QUERY_RESPONSE_TIME |
|
|
|
plugin-semisync_master := PLUGIN_SEMISYNC_MASTER |
|
|
@ -156,13 +157,12 @@ MARIADB_SERVER_EXTRA := \ |
|
|
|
mysql_tzinfo_to_sql \
|
|
|
|
mysqlbinlog \
|
|
|
|
mysqld_multi \
|
|
|
|
mysqld_safe \
|
|
|
|
mysqld_safe_helper \
|
|
|
|
mysqldumpslow \
|
|
|
|
mysqlhotcopy \
|
|
|
|
perror \
|
|
|
|
replace \
|
|
|
|
resolve_stack_dump |
|
|
|
resolve_stack_dump \
|
|
|
|
wsrep_sst_* |
|
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk |
|
|
|
include $(INCLUDE_DIR)/host-build.mk |
|
|
@ -180,10 +180,22 @@ MARIADB_COMMON_DEPENDS := \ |
|
|
|
# ignore them.
|
|
|
|
TARGET_CFLAGS+=$(TARGET_CPPFLAGS) |
|
|
|
|
|
|
|
define Package/mariadb/disable/engine |
|
|
|
echo > $(1)/storage/$(2)/CMakeLists.txt |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb/disable/plugin |
|
|
|
echo > $(1)/plugin/$(2)/CMakeLists.txt |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb/install/bin |
|
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$(2) $(1)/usr/bin |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb/install/plugin |
|
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/$(2).so $(1)$(PLUGIN_DIR) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb/description/Default |
|
|
|
MariaDB is a fast, stable and true multi-user, multi-threaded SQL |
|
|
|
database server. SQL (Structured Query Language) is the most popular |
|
|
@ -191,12 +203,17 @@ database query language in the world. The main goals of MariaDB are |
|
|
|
speed, robustness and ease of use. |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libmariadb |
|
|
|
define Package/libmariadb/Default |
|
|
|
SECTION:=libs |
|
|
|
CATEGORY:=Libraries |
|
|
|
URL:=https://mariadb.org/ |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/libmariadb |
|
|
|
$(call Package/libmariadb/Default) |
|
|
|
DEPENDS:=$(MARIADB_COMMON_DEPENDS) |
|
|
|
TITLE:=MariaDB database client library |
|
|
|
URL:=https://mariadb.org/ |
|
|
|
MENU:=1 |
|
|
|
PROVIDES:=libmariadbclient libmysqlclient libmysqlclient-r |
|
|
|
endef |
|
|
|
|
|
|
@ -216,10 +233,9 @@ endef |
|
|
|
|
|
|
|
define Package/mariadb-client |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
TITLE:=MariaDB database core client binaries |
|
|
|
DEPENDS:= \
|
|
|
|
$(MARIADB_COMMON_DEPENDS) \
|
|
|
|
+libncursesw |
|
|
|
TITLE:=MariaDB database client |
|
|
|
MENU:=1 |
|
|
|
DEPENDS:=mariadb-client-base |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client/description |
|
|
@ -231,9 +247,30 @@ $(subst $(space),$(newline),$(MARIADB_CLIENT)) |
|
|
|
|
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client-base |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
TITLE:=MariaDB database client base |
|
|
|
DEPENDS:=mariadb-common \
|
|
|
|
$(MARIADB_COMMON_DEPENDS) \
|
|
|
|
+libedit |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client-base/conffiles |
|
|
|
$(CONF_DIR)/conf.d/50-client.cnf |
|
|
|
$(CONF_DIR)/conf.d/50-mysql-clients.cnf |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client-base/description |
|
|
|
$(call Package/mariadb/description/Default) |
|
|
|
|
|
|
|
This package provides the foundation for mariadb-client. It installs the |
|
|
|
configuration and the dependencies. |
|
|
|
|
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client-extra |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
TITLE:=MariaDB database extra client binaries |
|
|
|
TITLE:=MariaDB database client extra |
|
|
|
DEPENDS:=mariadb-client |
|
|
|
endef |
|
|
|
|
|
|
@ -246,32 +283,29 @@ $(subst $(space),$(newline),$(MARIADB_CLIENT_EXTRA)) |
|
|
|
|
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-extra-charsets |
|
|
|
define Package/mariadb-common |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
TITLE:=MariaDB database extra character sets |
|
|
|
DEPENDS:=mariadb-server |
|
|
|
TITLE:=MariaDB database common files |
|
|
|
DEPENDS:= |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-common/conffiles |
|
|
|
$(CONF_DIR)/my.cnf |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-extra-charsets/description |
|
|
|
define Package/mariadb-common/description |
|
|
|
$(call Package/mariadb/description/Default) |
|
|
|
|
|
|
|
This package contains single Byte character sets and collations that can |
|
|
|
be added at run time. |
|
|
|
This package includes shared files, for example $(CONF_DIR)/my.cnf. |
|
|
|
|
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
DEPENDS:= \
|
|
|
|
$(MARIADB_COMMON_DEPENDS) \
|
|
|
|
+!arc:libaio \
|
|
|
|
+liblzma \
|
|
|
|
+libpcre \
|
|
|
|
+resolveip |
|
|
|
TITLE:=MariaDB database core server binaries |
|
|
|
DEPENDS:=mariadb-server-base |
|
|
|
TITLE:=MariaDB database server |
|
|
|
MENU:=1 |
|
|
|
PROVIDES:=mysql-server |
|
|
|
USERID:=mariadb=376:mariadb=376 |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server/description |
|
|
@ -283,9 +317,36 @@ $(subst $(space),$(newline),$(MARIADB_SERVER)) |
|
|
|
|
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server-base |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
DEPENDS:=mariadb-common \
|
|
|
|
$(MARIADB_COMMON_DEPENDS) \
|
|
|
|
+!arc:libaio \
|
|
|
|
+liblzma \
|
|
|
|
+libpcre \
|
|
|
|
+resolveip |
|
|
|
TITLE:=MariaDB database server base |
|
|
|
USERID:=mariadb=376:mariadb=376 |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server-base/conffiles |
|
|
|
$(CONF_DIR)/conf.d/50-server.cnf |
|
|
|
$(CONF_DIR)/conf.d/60-galera.cnf |
|
|
|
/etc/config/mysqld |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server-base/description |
|
|
|
$(call Package/mariadb/description/Default) |
|
|
|
|
|
|
|
This package provides the foundation for mariadb-server. It installs the |
|
|
|
init script, support files (configuration etc.), the user "mariadb" and |
|
|
|
the dependencies. |
|
|
|
|
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server-extra |
|
|
|
$(call Package/mariadb/Default) |
|
|
|
TITLE:=MariaDB database extra server binaries |
|
|
|
TITLE:=MariaDB database server extra |
|
|
|
DEPENDS:=mariadb-server |
|
|
|
endef |
|
|
|
|
|
|
@ -310,82 +371,64 @@ CMAKE_OPTIONS += -DWITH_UNIT_TESTS=0 |
|
|
|
# time.
|
|
|
|
CMAKE_OPTIONS += -DSTACK_DIRECTION=-1 |
|
|
|
|
|
|
|
# Jemalloc was added for TokuDB. Since its configure script seems somewhat broken
|
|
|
|
# when it comes to cross-compilation we shall disable it and also disable TokuDB.
|
|
|
|
CMAKE_OPTIONS += -DWITH_JEMALLOC=no -DWITHOUT_TOKUDB=1 |
|
|
|
|
|
|
|
# Make it explicit that we are cross-compiling
|
|
|
|
CMAKE_OPTIONS += -DCMAKE_CROSSCOMPILING=1 |
|
|
|
|
|
|
|
# Explicitly disable dtrace to avoid detection of a host version
|
|
|
|
CMAKE_OPTIONS += -DENABLE_DTRACE=0 |
|
|
|
|
|
|
|
# Prevent mariadb from messing with OpenWrt's C(XX)FLAGS
|
|
|
|
# Prevent MariaDB from messing with OpenWrt's C(XX)FLAGS
|
|
|
|
CMAKE_OPTIONS += -DSECURITY_HARDENED=OFF |
|
|
|
|
|
|
|
ifeq ($(CONFIG_PACKAGE_mariadb-server),) |
|
|
|
CMAKE_OPTIONS += -DWITHOUT_SERVER=ON |
|
|
|
else |
|
|
|
CMAKE_OPTIONS += -DWITHOUT_SERVER=OFF |
|
|
|
# Enable the auth_socket plugin and let unix user root access MariaDB without a
|
|
|
|
# separate password.
|
|
|
|
CMAKE_OPTIONS += -DWITHOUT_SERVER=OFF -DPLUGIN_AUTH_SOCKET=STATIC |
|
|
|
endif |
|
|
|
|
|
|
|
CMAKE_OPTIONS += \
|
|
|
|
-DCONNECT_WITH_JDBC=NO \
|
|
|
|
-DCONNECT_WITH_LIBXML2=system \
|
|
|
|
-DCONNECT_WITH_MONGO=NO \
|
|
|
|
-DCONNECT_WITH_ODBC=NO \
|
|
|
|
-DDEFAULT_CHARSET=utf8 \
|
|
|
|
-DDEFAULT_COLLATION=utf8_general_ci \
|
|
|
|
-DDISABLE_SHARED=NO \
|
|
|
|
-DENABLED_PROFILING=OFF \
|
|
|
|
-DENABLE_STATIC_LIBS=OFF \
|
|
|
|
-DINSTALL_DOCDIR=share/doc/mariadb \
|
|
|
|
-DINSTALL_DOCREADMEDIR=share/doc/mariadb \
|
|
|
|
-DINSTALL_INFODIR=share/info \
|
|
|
|
-DINSTALL_MANDIR=share/man \
|
|
|
|
-DINSTALL_MYSQLSHAREDIR=share/mysql \
|
|
|
|
-DINSTALL_MYSQLSHAREDIR=share/mariadb \
|
|
|
|
-DINSTALL_MYSQLTESTDIR="" \
|
|
|
|
-DINSTALL_PLUGINDIR=lib/mysql/plugin \
|
|
|
|
-DINSTALL_PLUGINDIR=lib/mariadb/plugin \
|
|
|
|
-DINSTALL_SBINDIR=bin \
|
|
|
|
-DINSTALL_SCRIPTDIR=bin \
|
|
|
|
-DINSTALL_SQLBENCHDIR="" \
|
|
|
|
-DINSTALL_SUPPORTFILESDIR=share/mysql \
|
|
|
|
-DINSTALL_SUPPORTFILESDIR=share/mariadb \
|
|
|
|
-DINSTALL_UNIX_ADDRDIR=/var/run/mysqld/mysqld.sock \
|
|
|
|
-DMYSQLD_USER=mariadb \
|
|
|
|
-DMYSQL_DATADIR=/var/lib/mysql \
|
|
|
|
-DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
|
|
|
|
-DSKIP_TESTS=ON \
|
|
|
|
-DWITH_ASAN=OFF \
|
|
|
|
-DWITH_DEBUG=OFF \
|
|
|
|
-DWITH_EMBEDDED_SERVER=OFF \
|
|
|
|
-DWITH_EXTRA_CHARSETS=complex \
|
|
|
|
-DWITH_INNODB_BZIP2=OFF \
|
|
|
|
-DWITH_INNODB_LZ4=OFF \
|
|
|
|
-DWITH_INNODB_LZMA=ON \
|
|
|
|
-DWITH_INNODB_LZO=OFF \
|
|
|
|
-DWITH_INNODB_SNAPPY=OFF \
|
|
|
|
-DWITH_LIBEDIT=OFF \
|
|
|
|
-DWITH_LIBNUMA=NO \
|
|
|
|
-DWITH_JEMALLOC=OFF \
|
|
|
|
-DWITH_LIBARCHIVE=OFF \
|
|
|
|
-DWITH_LIBWRAP=OFF \
|
|
|
|
-DWITH_LIBWSEP=OFF \
|
|
|
|
-DWITH_MARIABACKUP=ON \
|
|
|
|
-DWITH_PCRE=system \
|
|
|
|
-DWITH_READLINE=OFF \
|
|
|
|
-DWITH_SAFEMALLOC=OFF \
|
|
|
|
-DWITH_SSL=system \
|
|
|
|
-DWITH_SYSTEMD=no \
|
|
|
|
-DWITH_VALGRIND=OFF \
|
|
|
|
-DWITH_ZLIB=system |
|
|
|
|
|
|
|
# Default-disable some modules
|
|
|
|
CMAKE_OPTIONS += \
|
|
|
|
-DPLUGIN_CASSANDRA=NO \
|
|
|
|
-DPLUGIN_MROONGA=NO \
|
|
|
|
-DPLUGIN_OQGRAPH=NO \
|
|
|
|
-DPLUGIN_ROCKSDB=NO \
|
|
|
|
-DPLUGIN_TOKUDB=NO \
|
|
|
|
-DPLUGIN_AUTH_PAM=NO \
|
|
|
|
-DPLUGIN_AUTH_GSSAPI=NO \
|
|
|
|
-DPLUGIN_AUTH_GSSAPI_CLIENT=OFF \
|
|
|
|
-DPLUGIN_CRACKLIB_PASSWORD_CHECK=NO |
|
|
|
|
|
|
|
# Help MariaDB find the correct libiconv.
|
|
|
|
# nls.mk sets it up so that with CONFIG_BUILD_NLS libiconv-full would be used,
|
|
|
|
# otherwise libiconv-stub (independent of the selected libc). MariaDB needs a
|
|
|
@ -395,6 +438,7 @@ CMAKE_OPTIONS += \ |
|
|
|
-DICONV_LIBRARIES=$(ICONV_PREFIX)/lib/libiconv.$(if $(CONFIG_BUILD_NLS),so,a) |
|
|
|
|
|
|
|
CMAKE_OPTIONS += \
|
|
|
|
$(foreach p,$(MARIADB_LIB_PLUGINS),-D$(plugin-$(p))=$(if $(CONFIG_PACKAGE_lib$(PKG_NAME)-plugin-$(subst _,-,$(p))),DYNAMIC,OFF)) \
|
|
|
|
$(foreach p,$(MARIADB_SERVER_PLUGINS),-D$(plugin-$(p))=$(if $(CONFIG_PACKAGE_$(PKG_NAME)-server-plugin-$(subst _,-,$(p))),DYNAMIC,NO)) |
|
|
|
|
|
|
|
# Set CMAKE_FIND_ROOT_PATH_MODE_INCLUDE and CMAKE_FIND_ROOT_PATH_MODE_LIBRARY
|
|
|
@ -409,10 +453,9 @@ CMAKE_HOST_OPTIONS += \ |
|
|
|
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH \
|
|
|
|
-DCMAKE_INSTALL_RPATH="$(STAGING_DIR_HOSTPKG)/lib" \
|
|
|
|
-DCMAKE_SKIP_RPATH=FALSE \
|
|
|
|
-DWITHOUT_SERVER=OFF \
|
|
|
|
-DWITHOUT_TOKUDB=1 |
|
|
|
-DWITHOUT_SERVER=OFF |
|
|
|
|
|
|
|
# Some helpers must be compiled for host in order to crosscompile mariadb for
|
|
|
|
# Some helpers must be compiled for host in order to crosscompile MariaDB for
|
|
|
|
# the target. They are then included by import_executables.cmake which is
|
|
|
|
# generated during the build of the host helpers. It is not necessary to build
|
|
|
|
# the whole host package, only the "import_executables" target.
|
|
|
@ -422,6 +465,13 @@ CMAKE_HOST_OPTIONS += \ |
|
|
|
|
|
|
|
CMAKE_OPTIONS += -DIMPORT_EXECUTABLES=$(STAGING_DIR_HOSTPKG)/share/mariadb/import_executables.cmake |
|
|
|
|
|
|
|
# Disable some engines/plugins here as well - decreases the number of cmake checks.
|
|
|
|
define Host/Prepare |
|
|
|
$(call Host/Prepare/Default) |
|
|
|
$(foreach e,$(MARIADB_DISABLE_ENGINES),$(call Package/mariadb/disable/engine,$(HOST_BUILD_DIR),$(e));) |
|
|
|
$(foreach p,$(MARIADB_DISABLE_PLUGINS),$(call Package/mariadb/disable/plugin,$(HOST_BUILD_DIR),$(p));) |
|
|
|
endef |
|
|
|
|
|
|
|
define Host/Compile |
|
|
|
$(call Host/Compile/Default,import_executables) |
|
|
|
endef |
|
|
@ -438,7 +488,7 @@ endef |
|
|
|
|
|
|
|
# LIBICONV_PLUG is used in GNU's libiconv for redefinition of exports [e.g.
|
|
|
|
# from libiconv_open() to iconv_open()]. But in OpenWrt this variable is not set
|
|
|
|
# when building libiconv-full. So when mariadb sets LIBICONV_PLUG it expects
|
|
|
|
# when building libiconv-full. So when MariaDB sets LIBICONV_PLUG it expects
|
|
|
|
# iconv_open() to be available for example, which is not the case - only
|
|
|
|
# libiconv_open() is. To address this prevent the variable from being set.
|
|
|
|
# libiconv-stub does not use this variable, so there is no harm in always doing
|
|
|
@ -447,6 +497,8 @@ endef |
|
|
|
define Build/Prepare |
|
|
|
$(call Build/Prepare/Default) |
|
|
|
$(SED) '/ADD_DEFINITIONS(-DLIBICONV_PLUG)/d' $(PKG_BUILD_DIR)/libmariadb/libmariadb/CMakeLists.txt |
|
|
|
$(foreach e,$(MARIADB_DISABLE_ENGINES),$(call Package/mariadb/disable/engine,$(PKG_BUILD_DIR),$(e));) |
|
|
|
$(foreach p,$(MARIADB_DISABLE_PLUGINS),$(call Package/mariadb/disable/plugin,$(PKG_BUILD_DIR),$(p));) |
|
|
|
endef |
|
|
|
|
|
|
|
define Build/InstallDev |
|
|
@ -477,111 +529,106 @@ define Package/mariadb-client/install |
|
|
|
cd $(1)/usr/bin; $(LN) mysqlcheck mysqloptimize |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client-base/install |
|
|
|
$(INSTALL_DIR) $(1)$(CONF_DIR)/conf.d |
|
|
|
$(INSTALL_CONF) conf/50-client.cnf $(1)$(CONF_DIR)/conf.d |
|
|
|
$(INSTALL_CONF) conf/50-mysql-clients.cnf $(1)$(CONF_DIR)/conf.d |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-client-extra/install |
|
|
|
$(INSTALL_DIR) $(1)/usr/bin |
|
|
|
$(foreach b,$(MARIADB_CLIENT_EXTRA),$(call Package/mariadb/install/bin,$(1),$(b));) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-extra-charsets/install |
|
|
|
$(INSTALL_DIR) $(1)/usr/share/mysql/charsets |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/charsets/* $(1)/usr/share/mysql/charsets |
|
|
|
define Package/mariadb-common/install |
|
|
|
$(INSTALL_DIR) $(1)$(CONF_DIR) |
|
|
|
$(INSTALL_CONF) conf/my.cnf $(1)$(CONF_DIR) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server/install |
|
|
|
$(INSTALL_DIR) $(1)/usr/bin |
|
|
|
$(foreach b,$(MARIADB_SERVER),$(call Package/mariadb/install/bin,$(1),$(b));) |
|
|
|
$(INSTALL_DIR) $(1)/etc/default |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server-base/install |
|
|
|
$(INSTALL_DIR) $(1)$(CONF_DIR)/conf.d |
|
|
|
$(INSTALL_DIR) $(1)$(SHARE_DIR)/charsets |
|
|
|
$(INSTALL_DIR) $(1)$(SHARE_DIR)/english |
|
|
|
$(INSTALL_DIR) $(1)/etc/config |
|
|
|
$(INSTALL_DIR) $(1)/etc/init.d |
|
|
|
$(INSTALL_DIR) $(1)/etc/mysql/conf.d |
|
|
|
$(INSTALL_BIN) files/mysqld.init $(1)/etc/init.d/mysqld |
|
|
|
$(INSTALL_CONF) conf/my.cnf $(1)/etc/mysql |
|
|
|
$(INSTALL_CONF) conf/mysqld.default $(1)/etc/default/mysqld |
|
|
|
$(INSTALL_DIR) $(1)$(PLUGIN_DIR) |
|
|
|
$(INSTALL_CONF) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/daemon_example.ini $(1)$(PLUGIN_DIR) |
|
|
|
$(INSTALL_DIR) $(1)/usr/share/mysql/english |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/english/errmsg.sys $(1)/usr/share/mysql/english |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/fill_help_tables.sql $(1)/usr/share/mysql |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/maria_add_gis_sp_bootstrap.sql $(1)/usr/share/mysql |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/mysql_performance_tables.sql $(1)/usr/share/mysql |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/mysql_system_tables.sql $(1)/usr/share/mysql |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/mysql/mysql_system_tables_data.sql $(1)/usr/share/mysql |
|
|
|
$(SED) '/^[a-z]/s/^/#/' $(PKG_INSTALL_DIR)$(SHARE_DIR)/wsrep.cnf |
|
|
|
$(INSTALL_CONF) $(PKG_INSTALL_DIR)$(SHARE_DIR)/wsrep.cnf $(1)$(CONF_DIR)/conf.d/60-galera.cnf |
|
|
|
$(INSTALL_CONF) conf/50-server.cnf $(1)$(CONF_DIR)/conf.d |
|
|
|
$(INSTALL_CONF) files/mysqld.config $(1)/etc/config/mysqld |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/charsets/* $(1)$(SHARE_DIR)/charsets |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/english/errmsg.sys $(1)$(SHARE_DIR)/english |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/fill_help_tables.sql $(1)$(SHARE_DIR) |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/maria_add_gis_sp_bootstrap.sql $(1)$(SHARE_DIR) |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/mysql_performance_tables.sql $(1)$(SHARE_DIR) |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/mysql_system_tables.sql $(1)$(SHARE_DIR) |
|
|
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)$(SHARE_DIR)/mysql_system_tables_data.sql $(1)$(SHARE_DIR) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server-extra/install |
|
|
|
$(INSTALL_DIR) $(1)/usr/bin |
|
|
|
$(SED) 's,/bin/bash,/bin/sh,g' $(PKG_INSTALL_DIR)/usr/bin/wsrep_sst_* |
|
|
|
$(foreach b,$(MARIADB_SERVER_EXTRA),$(call Package/mariadb/install/bin,$(1),$(b));) |
|
|
|
endef |
|
|
|
|
|
|
|
define Package/mariadb-server/conffiles |
|
|
|
/etc/default/mysqld |
|
|
|
/etc/mysql/my.cnf |
|
|
|
$(PLUGIN_DIR)/daemon_example.ini |
|
|
|
endef |
|
|
|
|
|
|
|
define BuildPlugin |
|
|
|
define Package/$(PKG_NAME)-server-plugin-$(subst _,-,$(1)) |
|
|
|
$$(call Package/mariadb/Default) |
|
|
|
TITLE:=MariaDB database plugin |
|
|
|
DEPENDS:=mariadb-server $(patsubst +%,+PACKAGE_$(PKG_NAME)-server-plugin-$(subst _,-,$(1)):%,$(2)) |
|
|
|
define Package/$(1)-plugin-$(subst _,-,$(2)) |
|
|
|
$(call Package/$(subst mariadb-server,mariadb,$(1))/Default) |
|
|
|
TITLE:=$(1) plugin |
|
|
|
DEPENDS:=$(1) $(patsubst +%,+PACKAGE_$(1)-plugin-$(subst _,-,$(2)):%,$(3)) |
|
|
|
endef |
|
|
|
define Package/$(PKG_NAME)-server-plugin-$(subst _,-,$(1))/description |
|
|
|
$$(call Package/mariadb/description/Default) |
|
|
|
define Package/$(1)-plugin-$(subst _,-,$(2))/description |
|
|
|
$(call Package/mariadb/description/Default) |
|
|
|
|
|
|
|
This package provides the $(1) plugin. |
|
|
|
This package provides the $(2) plugin. |
|
|
|
|
|
|
|
endef |
|
|
|
define Package/$(PKG_NAME)-server-plugin-$(subst _,-,$(1))/install |
|
|
|
$(INSTALL_DIR) $$(1)$(PLUGIN_DIR) |
|
|
|
$(INSTALL_BIN) \
|
|
|
|
$(PKG_INSTALL_DIR)$(PLUGIN_DIR)/$(1).so \
|
|
|
|
$$(1)$(PLUGIN_DIR) |
|
|
|
define Package/$(1)-plugin-$(subst _,-,$(2))/install |
|
|
|
$(INSTALL_DIR) $$(1)$(PLUGIN_DIR) |
|
|
|
$(call Package/mariadb/install/plugin,$$(1),$(2)) |
|
|
|
endef |
|
|
|
$$(eval $$(call BuildPackage,$(PKG_NAME)-server-plugin-$(subst _,-,$(1)))) |
|
|
|
$$(eval $$(call BuildPackage,$(1)-plugin-$(subst _,-,$(2)))) |
|
|
|
endef |
|
|
|
|
|
|
|
$(eval $(call HostBuild)) |
|
|
|
$(eval $(call BuildPackage,libmariadb)) |
|
|
|
$(eval $(call BuildPackage,mariadb-client)) |
|
|
|
$(eval $(call BuildPackage,mariadb-client-base)) |
|
|
|
$(eval $(call BuildPackage,mariadb-client-extra)) |
|
|
|
$(eval $(call BuildPackage,mariadb-extra-charsets)) |
|
|
|
$(eval $(call BuildPackage,mariadb-common)) |
|
|
|
$(eval $(call BuildPackage,mariadb-server)) |
|
|
|
$(eval $(call BuildPackage,mariadb-server-base)) |
|
|
|
$(eval $(call BuildPackage,mariadb-server-extra)) |
|
|
|
|
|
|
|
$(eval $(call BuildPlugin,adt_null,)) |
|
|
|
$(eval $(call BuildPlugin,auth_0x0100,)) |
|
|
|
$(eval $(call BuildPlugin,auth_ed25519,)) |
|
|
|
$(eval $(call BuildPlugin,auth_socket,)) |
|
|
|
$(eval $(call BuildPlugin,auth_test_plugin,)) |
|
|
|
$(eval $(call BuildPlugin,client_ed25519,)) |
|
|
|
$(eval $(call BuildPlugin,debug_key_management,)) |
|
|
|
$(eval $(call BuildPlugin,dialog_examples,)) |
|
|
|
$(eval $(call BuildPlugin,disks,)) |
|
|
|
$(eval $(call BuildPlugin,example_key_management,)) |
|
|
|
$(eval $(call BuildPlugin,feedback,)) |
|
|
|
$(eval $(call BuildPlugin,file_key_management,)) |
|
|
|
$(eval $(call BuildPlugin,ha_archive,)) |
|
|
|
$(eval $(call BuildPlugin,ha_blackhole,)) |
|
|
|
$(eval $(call BuildPlugin,ha_connect,+libxml2)) |
|
|
|
$(eval $(call BuildPlugin,ha_example,)) |
|
|
|
$(eval $(call BuildPlugin,ha_federated,)) |
|
|
|
$(eval $(call BuildPlugin,ha_federatedx,)) |
|
|
|
$(eval $(call BuildPlugin,ha_sequence,)) |
|
|
|
$(eval $(call BuildPlugin,ha_sphinx,)) |
|
|
|
$(eval $(call BuildPlugin,ha_spider,)) |
|
|
|
$(eval $(call BuildPlugin,ha_test_sql_discovery,)) |
|
|
|
$(eval $(call BuildPlugin,handlersocket,)) |
|
|
|
$(eval $(call BuildPlugin,libdaemon_example,)) |
|
|
|
$(eval $(call BuildPlugin,locales,)) |
|
|
|
$(eval $(call BuildPlugin,metadata_lock_info,)) |
|
|
|
$(eval $(call BuildPlugin,mypluglib,)) |
|
|
|
$(eval $(call BuildPlugin,qa_auth_client,)) |
|
|
|
$(eval $(call BuildPlugin,qa_auth_interface,)) |
|
|
|
$(eval $(call BuildPlugin,qa_auth_server,)) |
|
|
|
$(eval $(call BuildPlugin,query_cache_info,)) |
|
|
|
$(eval $(call BuildPlugin,query_response_time,)) |
|
|
|
$(eval $(call BuildPlugin,semisync_master,)) |
|
|
|
$(eval $(call BuildPlugin,semisync_slave,)) |
|
|
|
$(eval $(call BuildPlugin,server_audit,)) |
|
|
|
$(eval $(call BuildPlugin,simple_password_check,)) |
|
|
|
$(eval $(call BuildPlugin,sql_errlog,)) |
|
|
|
$(eval $(call BuildPlugin,wsrep_info,)) |
|
|
|
$(eval $(call BuildPlugin,libmariadb,auth_gssapi_client,+krb5-libs)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,auth_ed25519,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,auth_gssapi,+krb5-libs)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,auth_pam,+libpam)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,client_ed25519,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,disks,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,feedback,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,file_key_management,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_archive,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_blackhole,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_connect,+libxml2)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_federated,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_federatedx,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_sphinx,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,ha_spider,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,handlersocket,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,locales,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,metadata_lock_info,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,query_cache_info,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,query_response_time,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,semisync_master,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,semisync_slave,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,server_audit,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,simple_password_check,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,sql_errlog,)) |
|
|
|
$(eval $(call BuildPlugin,mariadb-server,wsrep_info,)) |
|
|
|
|