diff options
Diffstat (limited to 'data/mariadb/make.sh')
-rw-r--r-- | data/mariadb/make.sh | 58 |
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 || : + |