diff options
author | Bernard Spil <brnrd@FreeBSD.org> | 2017-05-28 20:52:49 +0000 |
---|---|---|
committer | Bernard Spil <brnrd@FreeBSD.org> | 2017-05-28 20:52:49 +0000 |
commit | 302d685ac6e675526b414308fc12a154c4128988 (patch) | |
tree | 915d3deedec3d922c5b8b011a2dbbe9876fd16ef /databases/mariadb102-client/files | |
parent | Fix build on aarch64 (endian detection) (diff) |
databases/mariadb102-server: Add MariaDB 10.2 ports
- Add mariadb102-client port
- Add RocksDB storage engine
- Add non-base page compressors
- First sweep at making cmake patches upstreamable
Notes
Notes:
svn path=/head/; revision=441923
Diffstat (limited to 'databases/mariadb102-client/files')
13 files changed, 354 insertions, 0 deletions
diff --git a/databases/mariadb102-client/files/patch-CMakeLists.txt b/databases/mariadb102-client/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..edd96b565ad7 --- /dev/null +++ b/databases/mariadb102-client/files/patch-CMakeLists.txt @@ -0,0 +1,27 @@ +--- CMakeLists.txt.orig 2017-04-04 19:11:32 UTC ++++ CMakeLists.txt +@@ -170,6 +170,8 @@ IF(DISABLE_SHARED) + ENDIF() + OPTION(ENABLED_PROFILING "Enable profiling" ON) + OPTION(WITHOUT_SERVER "Build only the client library and clients" OFF) ++OPTION(WITHOUT_CLIENT "Build only the server components" OFF) ++OPTION(WITHOUT_DOCS "Do not install documentation" OFF) + IF(UNIX) + OPTION(WITH_VALGRIND "Valgrind instrumentation" OFF) + ENDIF() +@@ -454,6 +456,7 @@ ADD_CUSTOM_TARGET(INFO_BIN ALL + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + ) + ++IF(NOT WITHOUT_DOCS) + INSTALL_DOCUMENTATION(README.md CREDITS COPYING COPYING.thirdparty + EXCEPTIONS-CLIENT COMPONENT Readme) + +@@ -465,6 +468,7 @@ IF(UNIX) + INSTALL_DOCUMENTATION(Docs/INSTALL-BINARY COMPONENT Readme) + INSTALL_DOCUMENTATION(Docs/INSTALL-BINARY Docs/README-wsrep COMPONENT Readme) + ENDIF() ++ENDIF() + + INCLUDE(CPack) + diff --git a/databases/mariadb102-client/files/patch-client_CMakeLists.txt b/databases/mariadb102-client/files/patch-client_CMakeLists.txt new file mode 100644 index 000000000000..fe2487cff42d --- /dev/null +++ b/databases/mariadb102-client/files/patch-client_CMakeLists.txt @@ -0,0 +1,61 @@ +--- client/CMakeLists.txt.orig 2017-04-04 19:11:32 UTC ++++ client/CMakeLists.txt +@@ -43,11 +43,12 @@ IF(UNIX) + SET_TARGET_PROPERTIES(mysql PROPERTIES ENABLE_EXPORTS TRUE) + ENDIF(UNIX) + ++IF(NOT WITHOUT_SERVER) + MYSQL_ADD_EXECUTABLE(mysqltest mysqltest.cc COMPONENT Test) + SET_SOURCE_FILES_PROPERTIES(mysqltest.cc PROPERTIES COMPILE_FLAGS "-DTHREADS") + TARGET_LINK_LIBRARIES(mysqltest ${CLIENT_LIB} pcre pcreposix) + SET_TARGET_PROPERTIES(mysqltest PROPERTIES ENABLE_EXPORTS TRUE) +- ++ENDIF() + + MYSQL_ADD_EXECUTABLE(mysqlcheck mysqlcheck.c) + TARGET_LINK_LIBRARIES(mysqlcheck ${CLIENT_LIB}) +@@ -60,15 +61,19 @@ MYSQL_ADD_EXECUTABLE(mysqlimport mysqlim + SET_SOURCE_FILES_PROPERTIES(mysqlimport.c PROPERTIES COMPILE_FLAGS "-DTHREADS") + TARGET_LINK_LIBRARIES(mysqlimport ${CLIENT_LIB}) + ++IF(NOT WITHOUT_SERVER) + MYSQL_ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c COMPONENT Server) + TARGET_LINK_LIBRARIES(mysql_upgrade ${CLIENT_LIB}) + ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs) ++ENDIF() + + MYSQL_ADD_EXECUTABLE(mysqlshow mysqlshow.c) + TARGET_LINK_LIBRARIES(mysqlshow ${CLIENT_LIB}) + ++IF(NOT WITHOUT_SERVER) + MYSQL_ADD_EXECUTABLE(mysql_plugin mysql_plugin.c) + TARGET_LINK_LIBRARIES(mysql_plugin ${CLIENT_LIB}) ++ENDIF() + + MYSQL_ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc) + TARGET_LINK_LIBRARIES(mysqlbinlog ${CLIENT_LIB}) +@@ -89,14 +94,21 @@ ENDIF(WIN32) + ADD_EXECUTABLE(async_example async_example.c) + TARGET_LINK_LIBRARIES(async_example ${CLIENT_LIB}) + +-SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysqlslap mysql_plugin async_example ++SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap async_example + PROPERTIES HAS_CXX TRUE) + +- +-FOREACH(t mysql mysqltest mysqltest mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysql_plugin mysqlbinlog ++FOREACH(t mysql mysqlcheck mysqldump mysqlimport mysqlshow mysqlbinlog + mysqladmin mysqlslap async_example) + ADD_DEPENDENCIES(${t} GenError ${CLIENT_LIB}) + ENDFOREACH() + ++IF(NOT WITHOUT_SERVER) ++SET_TARGET_PROPERTIES (mysql_upgrade mysql_plugin PROPERTIES HAS_CXX TRUE) ++FOREACH(t mysqltest mysql_upgrade mysql_plugin) ++ ADD_DEPENDENCIES(${t} GenError ${CLIENT_LIB}) ++ENDFOREACH() ++ENDIF() ++ ++ + ADD_DEFINITIONS(-DHAVE_DLOPEN) + diff --git a/databases/mariadb102-client/files/patch-extra_CMakeLists.txt b/databases/mariadb102-client/files/patch-extra_CMakeLists.txt new file mode 100644 index 000000000000..95e7e7f4d845 --- /dev/null +++ b/databases/mariadb102-client/files/patch-extra_CMakeLists.txt @@ -0,0 +1,35 @@ +--- extra/CMakeLists.txt.orig 2017-04-04 19:11:33 UTC ++++ extra/CMakeLists.txt +@@ -46,6 +46,7 @@ ADD_CUSTOM_TARGET(GenError + DEPENDS + ${CMAKE_BINARY_DIR}/include/mysqld_error.h.tmp) + ++IF(FALSE) + MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) + TARGET_LINK_LIBRARIES(my_print_defaults mysys) + +@@ -84,15 +85,19 @@ IF(WITH_INNOBASE_STORAGE_ENGINE OR WITH_ + ) + + ++IF(NOT WITHOUT_SERVER) + MYSQL_ADD_EXECUTABLE(innochecksum innochecksum.cc ${INNOBASE_SOURCES}) + TARGET_LINK_LIBRARIES(innochecksum mysys mysys_ssl) + ADD_DEPENDENCIES(innochecksum GenError) + ENDIF() ++ENDIF() + + MYSQL_ADD_EXECUTABLE(replace replace.c COMPONENT Server) + TARGET_LINK_LIBRARIES(replace mysys) ++ENDIF() + + IF(UNIX) ++IF(NOT WITHOUT_SERVER) + MYSQL_ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.c) + TARGET_LINK_LIBRARIES(resolve_stack_dump mysys) + +@@ -102,3 +107,4 @@ IF(UNIX) + MYSQL_ADD_EXECUTABLE(mysqld_safe_helper mysqld_safe_helper.c COMPONENT Server) + TARGET_LINK_LIBRARIES(mysqld_safe_helper mysys) + ENDIF() ++ENDIF() diff --git a/databases/mariadb102-client/files/patch-include_CMakeLists.txt b/databases/mariadb102-client/files/patch-include_CMakeLists.txt new file mode 100644 index 000000000000..cb951775682f --- /dev/null +++ b/databases/mariadb102-client/files/patch-include_CMakeLists.txt @@ -0,0 +1,16 @@ +--- include/CMakeLists.txt.orig 2017-04-04 19:11:34 UTC ++++ include/CMakeLists.txt +@@ -73,11 +73,13 @@ INSTALL(DIRECTORY mysql/ DESTINATION ${I + STRING(REPLACE "." "\\." EXCL_RE "${HEADERS};${HEADERS_GEN_CONFIGURE}") + STRING(REPLACE ";" "|" EXCL_RE "${EXCL_RE}") + ++IF(FALSE) + INSTALL(DIRECTORY . DESTINATION ${INSTALL_INCLUDEDIR}/private COMPONENT Development + FILES_MATCHING PATTERN "*.h" + PATTERN CMakeFiles EXCLUDE + PATTERN mysql EXCLUDE + REGEX "\\./(${EXCL_RE}$)" EXCLUDE) ++ENDIF() + + INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/. DESTINATION ${INSTALL_INCLUDEDIR}/private COMPONENT Development + FILES_MATCHING PATTERN "*.h" diff --git a/databases/mariadb102-client/files/patch-include_my__compare.h b/databases/mariadb102-client/files/patch-include_my__compare.h new file mode 100644 index 000000000000..f0cbc1d11ab6 --- /dev/null +++ b/databases/mariadb102-client/files/patch-include_my__compare.h @@ -0,0 +1,11 @@ +--- include/my_compare.h.orig 2017-04-04 19:11:34 UTC ++++ include/my_compare.h +@@ -40,7 +40,7 @@ extern "C" { + But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH. + */ + +-#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */ ++#define HA_MAX_KEY_LENGTH 4000 /* Max length in bytes */ + #define HA_MAX_KEY_SEG 32 /* Max segments for key */ + + #define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6) diff --git a/databases/mariadb102-client/files/patch-include_mysql_service__encryption.h b/databases/mariadb102-client/files/patch-include_mysql_service__encryption.h new file mode 100644 index 000000000000..92ac035569a3 --- /dev/null +++ b/databases/mariadb102-client/files/patch-include_mysql_service__encryption.h @@ -0,0 +1,14 @@ +--- include/mysql/service_encryption.h.orig 2017-04-04 19:11:35 UTC ++++ include/mysql/service_encryption.h +@@ -37,9 +37,11 @@ extern "C" { + #elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) + #include <stdlib.h> + #else ++#ifndef __FreeBSD__ + #include <alloca.h> + #endif + #endif ++#endif + + /* returned from encryption_key_get_latest_version() */ + #define ENCRYPTION_KEY_VERSION_INVALID (~(unsigned int)0) diff --git a/databases/mariadb102-client/files/patch-libmariadb_include_ma__pthread.h b/databases/mariadb102-client/files/patch-libmariadb_include_ma__pthread.h new file mode 100644 index 000000000000..81bedb70f8d9 --- /dev/null +++ b/databases/mariadb102-client/files/patch-libmariadb_include_ma__pthread.h @@ -0,0 +1,10 @@ +--- libmariadb/include/ma_pthread.h.orig 2017-04-04 19:11:32 UTC ++++ libmariadb/include/ma_pthread.h +@@ -23,6 +23,7 @@ + + #undef SAFE_MUTEX + ++#include <pthread.h> + #include <errno.h> + #ifndef ETIME + #define ETIME ETIMEDOUT /* For FreeBSD */ diff --git a/databases/mariadb102-client/files/patch-man_CMakeLists.txt b/databases/mariadb102-client/files/patch-man_CMakeLists.txt new file mode 100644 index 000000000000..0fbb708cce2d --- /dev/null +++ b/databases/mariadb102-client/files/patch-man_CMakeLists.txt @@ -0,0 +1,16 @@ +--- man/CMakeLists.txt.orig 2017-04-04 19:11:35 UTC ++++ man/CMakeLists.txt +@@ -36,9 +36,13 @@ SET(MAN1_DEVEL mysql_config.1) + SET(MAN1_TEST mysql-stress-test.pl.1 mysql-test-run.pl.1 mysql_client_test.1 + mysqltest_embedded.1 mysql_client_test_embedded.1) + ++IF(NOT WITHOUT_SERVER) + INSTALL(FILES ${MAN1_SERVER} DESTINATION ${INSTALL_MANDIR}/man1 COMPONENT ManPagesServer) + INSTALL(FILES ${MAN8_SERVER} DESTINATION ${INSTALL_MANDIR}/man8 COMPONENT ManPagesServer) ++ENDIF() + INSTALL(FILES ${MAN1_CLIENT} DESTINATION ${INSTALL_MANDIR}/man1 COMPONENT ManPagesClient) + INSTALL(FILES ${MAN1_DEVEL} DESTINATION ${INSTALL_MANDIR}/man1 COMPONENT ManPagesDevelopment) ++IF(FALSE) + INSTALL(FILES ${MAN1_TEST} DESTINATION ${INSTALL_MANDIR}/man1 COMPONENT ManPagesTest) ++ENDIF() + diff --git a/databases/mariadb102-client/files/patch-mysys_my__default.c b/databases/mariadb102-client/files/patch-mysys_my__default.c new file mode 100644 index 000000000000..ce1b2338b9a9 --- /dev/null +++ b/databases/mariadb102-client/files/patch-mysys_my__default.c @@ -0,0 +1,52 @@ +--- mysys/my_default.c.orig 2017-04-04 19:11:51 UTC ++++ mysys/my_default.c +@@ -785,7 +785,7 @@ static int search_default_file_with_ext( + { + MY_STAT stat_info; + if (!my_stat(name,&stat_info,MYF(0))) +- return 1; ++ return 0; + /* + Ignore world-writable regular files. + This is mainly done to protect us to not read a file created by +@@ -803,6 +803,14 @@ static int search_default_file_with_ext( + if (!(fp= mysql_file_fopen(key_file_cnf, name, O_RDONLY, MYF(0)))) + return 1; /* Ignore wrong files */ + ++ if (strstr(name, "/etc") == name) ++ { ++ fprintf(stderr, ++ "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n", ++ name,name); ++ goto err; ++ } ++ + while (mysql_file_fgets(buff, sizeof(buff) - 1, fp)) + { + line++; +@@ -1067,7 +1075,8 @@ void my_print_default_files(const char * + if (name[0] == FN_HOMELIB) /* Add . to filenames in home */ + *end++= '.'; + strxmov(end, conf_file, *ext, " ", NullS); +- fputs(name, stdout); ++ if (strstr(name, "/etc") != name) ++ fputs(name, stdout); + } + } + } +@@ -1192,13 +1201,10 @@ static const char **init_default_directo + + #else + +-#if defined(DEFAULT_SYSCONFDIR) +- if (DEFAULT_SYSCONFDIR[0]) +- errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); +-#else + errors += add_directory(alloc, "/etc/", dirs); + errors += add_directory(alloc, "/etc/mysql/", dirs); +-#endif /* DEFAULT_SYSCONFDIR */ ++ errors += add_directory(alloc, "/usr/local/etc/", dirs); ++ errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs); + + #endif + diff --git a/databases/mariadb102-client/files/patch-scripts_CMakeLists.txt b/databases/mariadb102-client/files/patch-scripts_CMakeLists.txt new file mode 100644 index 000000000000..e47db3ec7d33 --- /dev/null +++ b/databases/mariadb102-client/files/patch-scripts_CMakeLists.txt @@ -0,0 +1,48 @@ +--- scripts/CMakeLists.txt.orig 2017-04-04 19:11:52 UTC ++++ scripts/CMakeLists.txt +@@ -90,6 +90,7 @@ SET(ADD_GIS_SP_EOL ";") + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/maria_add_gis_sp.sql.in + ${CMAKE_CURRENT_BINARY_DIR}/maria_add_gis_sp_bootstrap.sql ESCAPE_QUOTES @ONLY) + ++IF(NOT WITHOUT_SERVER) + INSTALL(FILES + ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables.sql + ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables_data.sql +@@ -102,6 +103,7 @@ INSTALL(FILES + ${FIX_PRIVILEGES_SQL} + DESTINATION ${INSTALL_MYSQLSHAREDIR} COMPONENT Server + ) ++ENDIF() + + # TCMalloc hacks + IF(MALLOC_LIB) +@@ -177,6 +179,7 @@ ELSE() + SET(localstatedir ${MYSQL_DATADIR}) + ENDIF() + ++IF(NOT WITHOUT_SERVER) + IF(UNIX) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_install_db.sh + ${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db ESCAPE_QUOTES @ONLY) +@@ -190,6 +193,7 @@ INSTALL_SCRIPT( + COMPONENT Server + ) + ENDIF() ++ENDIF() + + SET(prefix "${CMAKE_INSTALL_PREFIX}") + IF(INSTALL_SYSCONFDIR) +@@ -277,13 +281,8 @@ ELSE() + SET(BIN_SCRIPTS + msql2mysql + mysql_config +- mysql_setpermission +- mysql_secure_installation + mysqlaccess +- mysql_convert_table_format + mysql_find_rows +- mytop +- mysqlhotcopy + ${SERVER_SCRIPTS} + ${WSREP_SCRIPTS} + ${SYSTEMD_SCRIPTS} diff --git a/databases/mariadb102-client/files/patch-scripts_mysql__config.sh b/databases/mariadb102-client/files/patch-scripts_mysql__config.sh new file mode 100644 index 000000000000..790708a776fe --- /dev/null +++ b/databases/mariadb102-client/files/patch-scripts_mysql__config.sh @@ -0,0 +1,12 @@ +--- scripts/mysql_config.sh.orig 2017-05-21 07:34:41 UTC ++++ scripts/mysql_config.sh +@@ -106,7 +106,9 @@ fi + + # Create options + libs="-L$pkglibdir @RPATH_OPTION@ @LIBS_FOR_CLIENTS@" ++libs="$libs -L/usr/local/lib " + embedded_libs="-L$pkglibdir @RPATH_OPTION@ @EMB_LIBS_FOR_CLIENTS@" ++embedded_libs="$embedded_libs -L/usr/local/lib " + + include="-I$pkgincludedir" + if [ "$basedir" != "/usr" ]; then diff --git a/databases/mariadb102-client/files/patch-support-files_CMakeLists.txt b/databases/mariadb102-client/files/patch-support-files_CMakeLists.txt new file mode 100644 index 000000000000..ff67e1a2fe3c --- /dev/null +++ b/databases/mariadb102-client/files/patch-support-files_CMakeLists.txt @@ -0,0 +1,45 @@ +--- support-files/CMakeLists.txt.orig 2017-04-04 19:12:36 UTC ++++ support-files/CMakeLists.txt +@@ -41,15 +41,18 @@ ELSE() + SET(inst_location ${INSTALL_SUPPORTFILESDIR}) + ENDIF() + ++IF(NOT WITHOUT_SERVER) + FOREACH(inifile my-huge my-innodb-heavy-4G my-large my-medium my-small wsrep) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${inifile}.cnf.sh + ${CMAKE_CURRENT_BINARY_DIR}/${inifile}.${ini_file_extension} @ONLY) + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${inifile}.${ini_file_extension} + DESTINATION ${inst_location} COMPONENT IniFiles) + ENDFOREACH() ++ENDIF() + + IF(UNIX) + SET(prefix ${CMAKE_INSTALL_PREFIX}) ++ IF(NOT WITHOUT_SERVER) + FOREACH(script mysqld_multi.server mysql-log-rotate binary-configure wsrep_notify) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${script}.sh + ${CMAKE_CURRENT_BINARY_DIR}/${script} @ONLY ) +@@ -79,12 +82,14 @@ IF(UNIX) + ENDFOREACH() + ENDIF() + ENDIF() ++ ENDIF() + + CONFIGURE_FILE(mariadb.pc.in ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc @ONLY) + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc DESTINATION ${INSTALL_SHAREDIR}/pkgconfig COMPONENT Development) + + INSTALL(FILES mysql.m4 DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development) +- ++ ++IF(NOT WITHOUT_SERVER) + SET(bindir ${INSTALL_BINDIRABS}) + SET(sbindir ${INSTALL_SBINDIRABS}) + SET(scriptdir ${INSTALL_SCRIPTDIRABS}) +@@ -136,6 +141,7 @@ IF(UNIX) + INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/mysql.server + DESTINATION ${INSTALL_SYSCONFDIR}/init.d + RENAME mysql COMPONENT SupportFiles) ++ ENDIF() + + INSTALL(FILES rpm/my.cnf DESTINATION ${INSTALL_SYSCONFDIR} + COMPONENT Common) diff --git a/databases/mariadb102-client/files/pkg-message.in b/databases/mariadb102-client/files/pkg-message.in new file mode 100644 index 000000000000..8bea32f83491 --- /dev/null +++ b/databases/mariadb102-client/files/pkg-message.in @@ -0,0 +1,7 @@ +************************************************************************ + +MariaDB respects hier(7) and doesn't check /etc and /etc/mysql for +my.cnf. Please move existing my.cnf files from those paths to +%%PREFIX%%/etc and %%PREFIX%%/etc/mysql. + +************************************************************************ |