summaryrefslogtreecommitdiff
path: root/data/mariadb/make.sh
diff options
context:
space:
mode:
Diffstat (limited to 'data/mariadb/make.sh')
-rw-r--r--data/mariadb/make.sh58
1 files changed, 58 insertions, 0 deletions
diff --git a/data/mariadb/make.sh b/data/mariadb/make.sh
new file mode 100644
index 000000000..d0b002358
--- /dev/null
+++ b/data/mariadb/make.sh
@@ -0,0 +1,58 @@
+pkg:setup
+# Host
+# https://mariadb.com/kb/en/library/cross-compiling-mariadb/
+mkdir host && cd host
+cmake ..
+make import_executables
+cd ..
+
+# Target
+mkdir target && cd target
+cat >iphoneos_toolchain.cmake <<EOF
+set(CMAKE_BUILD_TYPE Release)
+set(CMAKE_SYSTEM_NAME Darwin) # Tell CMake we're cross-compiling
+set(CMAKE_CROSSCOMPILING true)
+#include(CMakeForceCompiler)
+# Prefix detection only works with compiler id "GNU"
+# CMake will look for prefixed g++, cpp, ld, etc. automatically
+set(CMAKE_SYSTEM_PROCESSOR aarch64)
+set(triple ${PKG_TARG})
+set(CMAKE_FIND_ROOT_PATH $(echo ${PKG_PATH} | sed -e s/:/' '/g))
+set(CMAKE_LIBRARY_PATH $(echo ${LIBRARY_PATH} | sed -e s/:/' '/g))
+set(CMAKE_INCLUDE_PATH $(echo ${INCLUDE_PATH} | sed -e s/:/' '/g))
+set(CMAKE_C_COMPILER ${PKG_TARG}-gcc)
+set(CMAKE_CXX_COMPILER ${PKG_TARG}-g++)
+set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
+set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
+set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
+set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG ")
+set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG ")
+EOF
+
+cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="${PKG_TAPF}" -DCMAKE_TOOLCHAIN_FILE=iphoneos_toolchain.cmake -DSTACK_DIRECTION=-1 -DHAVE_IB_GCC_ATOMIC_BUILTINS=0 -DIMPORT_EXECUTABLES=../host/import_executables.cmake -DCURSES_LIBRARY="ncurses" -DICONV_LIBRARIES="${PKG_ROOT}/usr/lib/libiconv.tbd" -DCMAKE_CXX_FLAGS="-Wno-error=c++11-narrowing" \
+ -DINSTALL_PLUGINDIR=lib/mysql/plugin -DINSTALL_SCRIPTDIR=bin -DINSTALL_SYSCONFDIR=/etc/mysql -DINSTALL_SYSCONF2DIR=/etc/mysql/my.cnf.d -DINSTALL_INCLUDEDIR=include/mysql -DINSTALL_SUPPORTFILESDIR=share/mysql -DINSTALL_MYSQLSHAREDIR=share/mysql -DINSTALL_SHAREDIR=share/mysql \
+ -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_PCRE=bundled -DWITH_EMBEDDED_SERVER=ON -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_general_ci -DWITH_EXTRA_CHARSETS=complex -DWITH_EMBEDDED_SERVER=ON -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_TOKUDB_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 -DWITHOUT_PBXT_STORAGE_ENGINE=1
+pkg:make
+pkg:install
+
+for file in \
+ COPYING \
+ COPYING.thirdparty \
+ CREDITS \
+ EXCEPTIONS-CLIENT \
+ INSTALL-BINARY \
+ README.md \
+ README-wsrep
+do
+ pkg: rm -f "${PKG_TAPF}"/"${file}" || :
+done
+
+# XXX: Should this be a seperate package?
+pkg: rm -rf "${PKG_TAPF}"/mysql-test
+pkg: rm -rf "${PKG_TAPF}"/include
+pkg: rm -rf "${PKG_TAPF}"/sql-bench
+pkg: rm -rf "${PKG_TAPF}"/data
+
+pkg: rm -rf "${PKG_TAPF}"/man || :
+pkg: rm "${PKG_TAPF}"/lib/*.a || :
+