@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME := mariadb
PKG_VERSION := 10.2.16
PKG_RELEASE := 1
PKG_RELEASE := 2
PKG_SOURCE := $( PKG_NAME) -$( PKG_VERSION) .tar.gz
PKG_SOURCE_URL := \
@ -36,6 +36,7 @@ CMAKE_INSTALL:=1
PLUGIN_DIR := /usr/lib/mysql/plugin
MARIADB_COMMON_DEPENDS := \
+USE_UCLIBC:libiconv-full \
+libatomic \
+libopenssl \
+libstdcpp \
@ -384,6 +385,13 @@ CMAKE_OPTIONS += \
-DPLUGIN_AUTH_GSSAPI_CLIENT= NO \
-DPLUGIN_CRACKLIB_PASSWORD_CHECK= NO
# musl and glibc include their own iconv, but uclibc does not
i f n e q ( $( CONFIG_USE_UCLIBC ) , )
CMAKE_OPTIONS += \
-DICONV_INCLUDE_DIR= $( STAGING_DIR) /usr/lib/libiconv-full/include \
-DICONV_LIBRARIES= $( STAGING_DIR) /usr/lib/libiconv-full/lib/libiconv.so
e n d i f
CMAKE_OPTIONS += \
$( foreach p,$( MARIADB_SERVER_PLUGINS) ,-D$( plugin-$( p) ) = $( if $( CONFIG_PACKAGE_$( PKG_NAME) -server-plugin-$( subst _,-,$( p) ) ) ,DYNAMIC,NO) )
@ -426,6 +434,20 @@ define Host/Install
$( INSTALL_DATA) $( HOST_BUILD_DIR) /import_executables.cmake $( 1) /share/mariadb
e n d e f
# 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
# iconv_open() to be available for example, which is not the case - only
# libiconv_open() is. To address this do not set the variable when building
# against libiconv-full.
d e f i n e B u i l d / P r e p a r e
$( call Build/Prepare/Default)
i f n e q ( $( CONFIG_USE_UCLIBC ) , )
$( SED) '/ADD_DEFINITIONS(-DLIBICONV_PLUG)/d' $( PKG_BUILD_DIR) /libmariadb/libmariadb/CMakeLists.txt
e n d i f
e n d e f
d e f i n e B u i l d / I n s t a l l D e v
$( INSTALL_DIR) $( 2) /bin $( 1) /usr/bin $( 1) /usr/include $( 1) /usr/lib/mysql $( 1) /usr/lib/pkgconfig $( 1) /usr/share/aclocal
$( INSTALL_BIN) $( PKG_INSTALL_DIR) /usr/bin/mysql_config $( 1) /usr/bin