1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Fast SQL database server, derived from MySQL
8 HOMEPAGE= https://mariadb.org/
12 SITES[main]= https://downloads.mariadb.com/MariaDB/mariadb-10.2.31/source/
13 DISTFILE[1]= mariadb-10.2.31.tar.gz:main
15 SPKGS[standard]= complete
20 OPTIONS_AVAILABLE= none
21 OPTIONS_STANDARD= none
23 BUILD_DEPENDS= Zstandard:static:standard
27 bison:primary:standard
28 BUILDRUN_DEPENDS= Zstandard:shared:standard
32 boost-libraries:rest:python_used
33 snappy:single:standard
34 msgpack:single:standard
40 USERGROUP_SPKG= server
42 USES= cmake zlib ssl readline ncurses shebangfix
43 python:build perl:build pkgconfig iconv:translit
45 GNOME_COMPONENTS= libxml2
47 DISTNAME= mariadb-10.2.31
50 LICENSE_TERMS= server:{{WRKDIR}}/TERMS
51 LICENSE_FILE= GPLv2:{{WRKSRC}}/COPYING
52 LICENSE_AWK= TERMS:"^\#include"
53 LICENSE_SOURCE= TERMS:{{WRKSRC}}/libmysqld/libmysqld.c
56 FPC_EQUIVALENT= databases/mariadb102-server
57 SHEBANG_FILES= scripts/*.sh
59 INSTALL_REQ_TOOLCHAIN= yes
61 CMAKE_ARGS= -DCOMPILATION_COMMENT="Ravenports"
62 -DINSTALL_INCLUDEDIR=include/mysql
63 -DINSTALL_PLUGINDIR=lib/mysql/plugin
64 -DINSTALL_SHAREDIR=share
65 -DINSTALL_SUPPORTFILESDIR=share/mysql
66 -DINSTALL_MYSQLSHAREDIR=share/mysql
67 -DINSTALL_DOCREADMEDIR=share/doc/mariadb102
68 -DINSTALL_DOCDIR=share/doc/mariadb102
69 -DINSTALL_LIBDIR=lib/mysql
70 -DINSTALL_MANDIR=share/man
71 -DINSTALL_SCRIPTDIR=bin
72 -DINSTALL_MYSQLTESTDIR=
73 -DINSTALL_SQLBENCHDIR=
74 -DDEFAULT_CHARSET=utf8mb4
75 -DDEFAULT_COLLATION=utf8mb4_unicode_ci
76 -DDEFAULT_SYSCONFDIR="{{PREFIX}}/etc"
77 -DENABLED_LOCAL_INFILE=ON
81 -DWITH_EMBEDDED_SERVER=ON
82 -DWITH_EXTRA_CHARSETS=complex
87 -DWITH_READLINE=system
88 -DWITH_SSL="{{OPENSSLBASE}}"
94 ${REINPLACE_CMD} 's|/usr/bin/env python|${PYTHON_CMD}|' \
95 ${WRKSRC}/CMakeLists.txt
96 ${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' \
97 ${WRKSRC}/mysys/my_default.c
98 ${REINPLACE_CMD} 's|%%LOCALBASE%%|${LOCALBASE}|g' \
99 ${WRKSRC}/scripts/mysql_config.sh \
100 ${WRKSRC}/scripts/CMakeLists.txt
101 ${CP} ${WRKSRC}/cmake/os/FreeBSD.cmake \
102 ${WRKSRC}/cmake/os/DragonFly.cmake
105 ${RM} ${STAGEDIR}${STD_DOCDIR}/COPYING
106 ${MV} ${STAGEDIR}${PREFIX}/share/pkgconfig/mariadb.pc \
107 ${STAGEDIR}${PREFIX}/lib/pkgconfig/
108 ${RMDIR} ${STAGEDIR}${PREFIX}/share/pkgconfig
109 # strip plugins and libraries
110 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmariadb.so
111 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmysqld.so
112 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/plugin/*.so
114 @flist=$$(${FIND} ${STAGEDIR}${PREFIX}/bin -type f -perm /111 -print) ;\
115 for f in $$flist; do \
116 (${FILE} $$f | ${GREP} -Fq ", not stripped")\
117 && ${ECHO_CMD} "Auto-stripping $$f"\
118 && ${STRIP_CMD} $$f || ${TRUE} ;\
122 ${REINPLACE_CMD} -Ee 's|(#define INCLUDE.*)"$$|\1 -I${PREFIX}/include"|' \
123 -e 's|(#define LIBS .*)"$$|\1 -L${PREFIX}/lib"|' \
124 ${BUILD_WRKSRC}/libmariadb/mariadb_config/mariadb_config.c
125 ${REINPLACE_CMD} -e 's| ${PREFIX}/lib/liblz4.so\(.* ${PREFIX}/lib/liblz4.so.*\)|\1|' \
126 -e 's| ${PREFIX}/lib/liblzo2.so\(.* ${PREFIX}/lib/liblzo2.so.*\)|\1|' \
127 -e 's| ${PREFIX}/lib/libsnappy.so\(.* ${PREFIX}/lib/libsnappy.so\)|\1|' \
128 -e 's| -llzma\(.* -llzma\)|\1|;s| -lbz2\(.* -lbz2\)|\1|;' \
129 ${BUILD_WRKSRC}/extra/mariabackup/CMakeFiles/mbstream.dir/link.txt
131 [FILE:807:descriptions/desc.server]
132 MariaDB Server is one of the most popular database servers in the world.
133 It's made by the original developers of MySQL and guaranteed to stay open
134 source. Notable users include Wikipedia, WordPress.com and Google.
136 MariaDB turns data into structured information in a wide array of
137 applications, ranging from banking to websites. It is an enhanced, drop-in
138 replacement for MySQL. MariaDB is used because it is fast, scalable and
139 robust, with a rich ecosystem of storage engines, plugins and many other
140 tools make it very versatile for a wide variety of use cases.
142 MariaDB is developed as open source software and as a relational database
143 it provides an SQL interface for accessing data. The latest versions of
144 MariaDB also include GIS and JSON features.
146 This package contains the server and related files.
149 [FILE:267:descriptions/desc.client]
150 MariaDB Server is one of the most popular database servers in the world.
151 It's made by the original developers of MySQL and guaranteed to stay open
152 source. Notable users include Wikipedia, WordPress.com and Google.
154 This package contains the client and related files.
158 321f744c322ecbc06feddd290d5ee0bf7c68e92cb61fd93c9450eb9c05683151 73134720 mariadb-10.2.31.tar.gz
161 [FILE:9675:manifests/plist.server]
162 %%ONLY-LINUX%%lib/mysql/plugin/disks.so
179 mysql_client_test_embedded
185 mysql_secure_installation
201 wsrep_sst_mariabackup
206 wsrep_sst_xtrabackup-v2
207 include/mysql/server/
210 byte_order_generic_x86.h
211 byte_order_generic_x86_64.h
253 include/mysql/server/mysql/
262 plugin_password_validation.h
266 service_encryption_scheme.h
267 service_kill_statement.h
271 service_my_print_error.h
272 service_my_snprintf.h
273 service_progress_report.h
277 service_thd_autoinc.h
278 service_thd_error_context.h
280 service_thd_specifics.h
281 service_thd_timezone.h
285 include/mysql/server/mysql/psi/
299 include/mysql/server/private/
316 event_db_repository.h
399 mysqld_default_groups.h
411 probes_mysql_nodtrace.h
472 sql_expression_cache.h
473 sql_get_diagnostics.h
488 sql_partition_admin.h
539 welcome_copyright_notice.h
554 include/mysql/server/private/atomic/
568 auth_gssapi_client.so
571 caching_sha2_password.so
572 debug_key_management.so
574 example_key_management.so
575 file_key_management.so
586 ha_test_sql_discovery.so
590 metadata_lock_info.so
596 query_response_time.so
600 simple_password_check.so
603 share/aclocal/mysql.m4
607 share/groonga-normalizer-mysql/
616 galera_new_cluster.1.gz
620 mariadb-service-convert.1.gz
622 my_print_defaults.1.gz
628 mysql_client_test.1.gz
629 mysql_client_test_embedded.1.gz
631 mysql_fix_extensions.1.gz
632 mysql_install_db.1.gz
634 mysql_secure_installation.1.gz
635 mysql_tzinfo_to_sql.1.gz
639 mysqld_safe_helper.1.gz
642 mysqltest_embedded.1.gz
644 resolve_stack_dump.1.gz
648 wsrep_sst_common.1.gz
649 wsrep_sst_mariabackup.1.gz
650 wsrep_sst_mysqldump.1.gz
652 wsrep_sst_rsync_wan.1.gz
653 wsrep_sst_xtrabackup-v2.1.gz
654 wsrep_sst_xtrabackup.1.gz
655 share/man/man8/mysqld.8.gz
663 maria_add_gis_sp_bootstrap.sql
665 my-innodb-heavy-4G.cnf
671 mysql_performance_tables.sql
672 mysql_system_tables.sql
673 mysql_system_tables_data.sql
674 mysql_test_data_timezone.sql
680 share/mysql/charsets/
707 share/mysql/czech/errmsg.sys
708 share/mysql/danish/errmsg.sys
709 share/mysql/data/test/db.opt
710 share/mysql/dutch/errmsg.sys
711 share/mysql/english/errmsg.sys
712 share/mysql/estonian/errmsg.sys
713 share/mysql/french/errmsg.sys
714 share/mysql/german/errmsg.sys
715 share/mysql/greek/errmsg.sys
716 share/mysql/hindi/errmsg.sys
717 share/mysql/hungarian/errmsg.sys
718 share/mysql/italian/errmsg.sys
719 share/mysql/japanese/errmsg.sys
720 share/mysql/korean/errmsg.sys
726 share/mysql/norwegian/errmsg.sys
727 share/mysql/norwegian-ny/errmsg.sys
728 share/mysql/policy/apparmor/
731 usr.sbin.mysqld.local
732 share/mysql/policy/selinux/
737 share/mysql/polish/errmsg.sys
738 share/mysql/portuguese/errmsg.sys
739 share/mysql/romanian/errmsg.sys
740 share/mysql/russian/errmsg.sys
741 share/mysql/serbian/errmsg.sys
742 share/mysql/slovak/errmsg.sys
743 share/mysql/spanish/errmsg.sys
744 share/mysql/swedish/errmsg.sys
745 share/mysql/ukrainian/errmsg.sys
748 [FILE:1341:manifests/plist.client]
754 mysql_convert_table_format
786 include/mysql/mariadb/ma_io.h
804 mysql_clear_password.so
812 mysql-stress-test.pl.1.gz
813 mysql-test-run.pl.1.gz
816 mysql_convert_table_format.1.gz
819 mysql_setpermission.1.gz
833 [FILE:103:manifests/plist.docs]
834 share/doc/mariadb102/
843 [FILE:1118:patches/patch-MDEV-15961]
844 MDEV-15961: Fix stacktraces under FreeBSD
846 https://jira.mariadb.org/browse/MDEV-15961
847 --- mysys/stacktrace.c.orig 2020-01-26 16:43:30 UTC
848 +++ mysys/stacktrace.c
850 #include <execinfo.h>
854 #define PTR_SANE(p) ((p) && (char*)(p) >= heap_start && (char*)(p) <= heap_end)
856 static char *heap_start;
858 -#if(defined HAVE_BSS_START) && !(defined __linux__)
859 extern char *__bss_start;
862 +#define PTR_SANE(p) (p)
863 +#endif /* __linux */
865 void my_init_stacktrace()
867 -#if(defined HAVE_BSS_START) && !(defined __linux__)
869 heap_start = (char*) &__bss_start;
871 +#endif /* __linux__ */
875 @@ -149,15 +149,16 @@ static int safe_print_str(const char *ad
877 int my_safe_print_str(const char* val, int max_len)
880 +/* Only needed by the linux version of PTR_SANE */
884 // Try and make use of /proc filesystem to safely print memory contents.
885 if (!safe_print_str(val, max_len))
889 heap_end= (char*) sbrk(0);
896 [FILE:328:patches/patch-MDEV-20248]
897 --- storage/rocksdb/rocksdb/port/jemalloc_helper.h.orig 2020-01-26 16:43:30 UTC
898 +++ storage/rocksdb/rocksdb/port/jemalloc_helper.h
900 #include <jemalloc/jemalloc.h>
904 +#define JEMALLOC_USABLE_SIZE_CONST const
907 #ifndef JEMALLOC_CXX_THROW
908 #define JEMALLOC_CXX_THROW
912 [FILE:424:patches/patch-MDEV-21592]
913 --- plugin/auth_pam/mapper/pam_user_map.c.orig 2020-01-26 16:43:30 UTC
914 +++ plugin/auth_pam/mapper/pam_user_map.c
915 @@ -39,7 +39,11 @@ and usually end up in /var/log/secure fi
919 +#if defined __FreeBSD__ || defined __DragonFly__
920 +#include <security/pam_appl.h>
922 #include <security/pam_ext.h>
924 #include <security/pam_modules.h>
926 #define FILENAME "/etc/security/user_map.conf"
929 [FILE:572:patches/patch-client_mysql.cc]
930 --- client/mysql.cc.orig 2020-01-26 16:43:29 UTC
932 @@ -61,8 +61,8 @@ static char *server_version= NULL;
935 #if defined(HAVE_CURSES_H) && defined(HAVE_TERM_H)
938 +#include <ncurses/curses.h>
939 +#include <ncurses/term.h>
941 #if defined(HAVE_TERMIOS_H)
943 @@ -81,7 +81,7 @@ extern "C" {
945 #undef SYSV // hack to avoid syntax error
948 +#include <ncurses/term.h>
951 #endif /* defined(HAVE_CURSES_H) && defined(HAVE_TERM_H) */
954 [FILE:1958:patches/patch-cmake_readline.cmake]
955 --- cmake/readline.cmake.orig 2020-01-26 16:43:29 UTC
956 +++ cmake/readline.cmake
957 @@ -52,40 +52,17 @@ MACRO (MYSQL_CHECK_MULTIBYTE)
961 + SET(CURSES_NEED_NCURSES True)
963 MARK_AS_ADVANCED(CURSES_CURSES_H_PATH CURSES_FORM_LIBRARY CURSES_HAVE_CURSES_H)
965 SET(ERRORMSG "Curses library not found. Please install appropriate package,
966 remove CMakeCache.txt and rerun cmake.")
967 - IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
968 - SET(ERRORMSG ${ERRORMSG}
969 - "On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates "
970 - "it is ncurses-devel.")
972 MESSAGE(FATAL_ERROR ${ERRORMSG})
975 - IF(CURSES_HAVE_CURSES_H)
976 - SET(HAVE_CURSES_H 1 CACHE INTERNAL "")
978 - IF(CMAKE_SYSTEM_NAME MATCHES "HP")
979 - # CMake uses full path to library /lib/libcurses.sl
980 - # On Itanium, it results into architecture mismatch+
981 - # the library is for PA-RISC
982 - SET(CURSES_LIBRARY "curses" CACHE INTERNAL "" FORCE)
984 + SET(HAVE_CURSES_H 1 CACHE INTERNAL "")
986 - IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
987 - # -Wl,--as-needed breaks linking with -lcurses, e.g on Fedora
988 - # Lower-level libcurses calls are exposed by libtinfo
989 - CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} tputs "" HAVE_TPUTS_IN_CURSES)
990 - IF(NOT HAVE_TPUTS_IN_CURSES)
991 - CHECK_LIBRARY_EXISTS(tinfo tputs "" HAVE_TPUTS_IN_TINFO)
992 - IF(HAVE_TPUTS_IN_TINFO)
993 - SET(CURSES_LIBRARY tinfo)
997 CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} setupterm "" HAVE_SETUPTERM)
998 CHECK_LIBRARY_EXISTS(${CURSES_LIBRARY} vidattr "" HAVE_VIDATTR)
1000 @@ -207,6 +184,8 @@ MACRO (MYSQL_CHECK_READLINE)
1001 SET(CMAKE_REQUIRED_LIBRARIES)
1002 SET(CMAKE_REQUIRED_INCLUDES)
1004 + SET(CMAKE_REQUIRED_INCLUDES ${CURSES_INCLUDE_DIR}/ncurses)
1005 CHECK_INCLUDE_FILES ("curses.h;term.h" HAVE_TERM_H)
1006 + SET(CMAKE_REQUIRED_INCLUDES)
1011 [FILE:349:patches/patch-extra_readline_CMakeLists.txt]
1012 --- extra/readline/CMakeLists.txt.orig 2020-01-26 16:43:29 UTC
1013 +++ extra/readline/CMakeLists.txt
1014 @@ -56,4 +56,4 @@ ADD_LIBRARY(readline STATIC
1016 # Declare dependency
1017 # so every executable that links with readline links with curses as well
1018 -TARGET_LINK_LIBRARIES(readline ${CURSES_LIBRARY})
1019 +TARGET_LINK_LIBRARIES(readline ${CURSES_LIBRARY} tinfo)
1022 [FILE:316:patches/patch-libmariadb_libmariadb_CMakeLists.txt]
1023 --- libmariadb/libmariadb/CMakeLists.txt.orig 2020-01-26 16:43:29 UTC
1024 +++ libmariadb/libmariadb/CMakeLists.txt
1025 @@ -309,7 +309,6 @@ ELSE()
1026 IF(ICONV_INCLUDE_DIR)
1027 INCLUDE_DIRECTORIES(BEFORE ${ICONV_INCLUDE_DIR})
1029 - ADD_DEFINITIONS(-DLIBICONV_PLUG)
1032 IF(ZLIB_FOUND AND WITH_EXTERNAL_ZLIB)
1035 [FILE:1672:patches/patch-mysys_my__default.c]
1036 --- mysys/my_default.c.orig 2020-01-26 16:43:30 UTC
1037 +++ mysys/my_default.c
1038 @@ -784,7 +784,7 @@ static int search_default_file_with_ext(
1041 if (!my_stat(name,&stat_info,MYF(0)))
1045 Ignore world-writable regular files.
1046 This is mainly done to protect us to not read a file created by
1047 @@ -802,6 +802,14 @@ static int search_default_file_with_ext(
1048 if (!(fp= mysql_file_fopen(key_file_cnf, name, O_RDONLY, MYF(0))))
1049 return 1; /* Ignore wrong files */
1051 + if (strstr(name, "/etc") == name)
1054 + "error: Config file %s in invalid location, please move to or merge with %%PREFIX%%%s\n",
1059 while (mysql_file_fgets(buff, sizeof(buff) - 1, fp))
1062 @@ -1066,7 +1074,8 @@ void my_print_default_files(const char *
1063 if (name[0] == FN_HOMELIB) /* Add . to filenames in home */
1065 strxmov(end, conf_file, *ext, " ", NullS);
1066 - fputs(name, stdout);
1067 + if (strstr(name, "/etc") != name)
1068 + fputs(name, stdout);
1072 @@ -1193,13 +1202,10 @@ static const char **init_default_directo
1076 -#if defined(DEFAULT_SYSCONFDIR)
1077 - if (DEFAULT_SYSCONFDIR[0])
1078 - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
1080 errors += add_directory(alloc, "/etc/", dirs);
1081 errors += add_directory(alloc, "/etc/mysql/", dirs);
1082 -#endif /* DEFAULT_SYSCONFDIR */
1083 + errors += add_directory(alloc, "%%PREFIX%%/etc/", dirs);
1084 + errors += add_directory(alloc, "%%PREFIX%%/etc/mysql/", dirs);
1090 [FILE:1167:patches/patch-oqgraph-MDEV-15291]
1091 --- storage/oqgraph/oqgraph_judy.cc.orig 2020-01-26 16:43:31 UTC
1092 +++ storage/oqgraph/oqgraph_judy.cc
1095 Currently the only active code that can return error is:
1096 judy_bitset::reset()/J1U()
1097 - judy_bitset::setbit()/J1S()
1098 + judy_bitset::jsetbit()/J1S()
1100 In most cases errors are either about wrong parameters passed to Judy
1101 functions or internal structures corruption. These definitely deserve
1102 @@ -60,7 +60,7 @@ bool open_query::judy_bitset::test(size_
1106 -open_query::judy_bitset& open_query::judy_bitset::setbit(size_type n)
1107 +open_query::judy_bitset& open_query::judy_bitset::jsetbit(size_type n)
1111 --- storage/oqgraph/oqgraph_judy.h.orig 2020-01-26 16:43:31 UTC
1112 +++ storage/oqgraph/oqgraph_judy.h
1113 @@ -63,7 +63,7 @@ namespace open_query
1118 + return jsetbit(n);
1121 judy_bitset& set(const judy_bitset& src);
1122 @@ -115,7 +115,7 @@ namespace open_query
1124 mutable void* array;
1126 - judy_bitset& setbit(size_type n);
1127 + judy_bitset& jsetbit(size_type n);
1133 [FILE:399:patches/patch-scripts_CMakeLists.txt]
1134 --- scripts/CMakeLists.txt.orig 2020-01-26 16:43:30 UTC
1135 +++ scripts/CMakeLists.txt
1136 @@ -121,11 +121,7 @@ IF(CMAKE_GENERATOR MATCHES "Makefiles|Ni
1140 -IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
1141 - SET (PERL_PATH "/usr/local/bin/perl")
1143 - SET (PERL_PATH "/usr/bin/perl")
1145 +SET (PERL_PATH "%%LOCALBASE%%/bin/perl")
1148 # FIND_PROC and CHECK_PID are used by mysqld_safe
1151 [FILE:405:patches/patch-scripts_mysql__config.sh]
1152 --- scripts/mysql_config.sh.orig 2020-01-26 16:43:30 UTC
1153 +++ scripts/mysql_config.sh
1154 @@ -106,7 +106,9 @@ fi
1157 libs="-L$pkglibdir @RPATH_OPTION@ @LIBS_FOR_CLIENTS@"
1158 +libs="$libs -L%%LOCALBASE%%/lib "
1159 embedded_libs="-L$pkglibdir @RPATH_OPTION@ @EMB_LIBS_FOR_CLIENTS@"
1160 +embedded_libs="$embedded_libs -L%%LOCALBASE%%/lib "
1162 include="-I$pkgincludedir"
1163 if [ "$basedir" != "/usr" ]; then
1166 [FILE:446:patches/patch-scripts_mysqld__safe.sh]
1167 --- scripts/mysqld_safe.sh.orig 2020-01-26 16:43:30 UTC
1168 +++ scripts/mysqld_safe.sh
1169 @@ -583,11 +583,11 @@ fi
1171 if test -z "$MYSQL_HOME"
1173 - if test -r "$DATADIR/my.cnf"
1174 + if test -r "$DATADIR/etc/my.cnf"
1176 log_error "WARNING: Found $DATADIR/my.cnf
1177 The data directory is not a valid location for my.cnf, please move it to
1178 -$MY_BASEDIR_VERSION/my.cnf"
1179 +$MY_BASEDIR_VERSION/etc/my.cnf"
1181 MYSQL_HOME=$MY_BASEDIR_VERSION
1185 [FILE:437:patches/patch-scripts_wsrep__sst__mariabackup.sh]
1186 --- scripts/wsrep_sst_mariabackup.sh.orig 2020-01-26 16:43:30 UTC
1187 +++ scripts/wsrep_sst_mariabackup.sh
1188 @@ -606,7 +606,7 @@ recv_joiner()
1191 if [[ $tmt -gt 0 ]] && command -v timeout >/dev/null;then
1192 - if timeout --help | grep -q -- '-k';then
1193 + if timeout --help 2>&1 | grep -q -- '-k';then
1194 ltcmd="timeout -k $(( tmt+10 )) $tmt $tcmd"
1196 ltcmd="timeout -s9 $tmt $tcmd"
1199 [FILE:471:patches/patch-sql_CMakeLists.txt]
1200 --- sql/CMakeLists.txt.orig 2020-01-26 16:43:30 UTC
1201 +++ sql/CMakeLists.txt
1202 @@ -381,7 +381,7 @@ IF(INSTALL_LAYOUT STREQUAL "STANDALONE")
1204 # Copy db.opt into data/test/
1205 SET(DBOPT_FILE ${CMAKE_SOURCE_DIR}/support-files/db.opt )
1206 -INSTALL(FILES ${DBOPT_FILE} DESTINATION data/test COMPONENT DataFiles)
1207 +INSTALL(FILES ${DBOPT_FILE} DESTINATION ${INSTALL_SUPPORTFILESDIR}/data/test COMPONENT DataFiles)
1209 # Install initial database on windows
1210 IF(NOT CMAKE_CROSSCOMPILING)
1213 [FILE:304:patches/patch-sql_mysqld.cc]
1214 --- sql/mysqld.cc.orig 2020-01-26 16:43:30 UTC
1216 @@ -4918,8 +4918,9 @@ static void init_ssl()
1217 while ((err= ERR_get_error()))
1218 sql_print_warning("SSL error: %s", ERR_error_string(err, NULL));
1222 ERR_remove_state(0);
1229 [FILE:1422:patches/patch-storage_innobase_lz4.cmake]
1230 --- storage/innobase/lz4.cmake.orig 2020-01-26 16:43:31 UTC
1231 +++ storage/innobase/lz4.cmake
1232 @@ -17,21 +17,29 @@ SET(WITH_INNODB_LZ4 AUTO CACHE STRING
1234 MACRO (MYSQL_CHECK_LZ4)
1235 IF (WITH_INNODB_LZ4 STREQUAL "ON" OR WITH_INNODB_LZ4 STREQUAL "AUTO")
1236 - CHECK_INCLUDE_FILES(lz4.h HAVE_LZ4_H)
1237 - CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_limitedOutput "" HAVE_LZ4_SHARED_LIB)
1238 - CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_default "" HAVE_LZ4_COMPRESS_DEFAULT)
1239 + find_path(LZ4_INCLUDE_DIR NAMES lz4.h)
1240 + find_library(LZ4_LIBRARY NAMES lz4)
1242 + get_filename_component(LZ4_LIBDIR ${LZ4_LIBRARY} DIRECTORY)
1243 +#MESSAGE(STATUS "LZ4_INCLUDE_DIR=${LZ4_INCLUDE_DIR} LZ4_LIBRARY=${LZ4_LIBRARY} LZ4_LIBDIR=${LZ4_LIBDIR}")
1244 + IF (LZ4_INCLUDE_DIR)
1245 + SET(HAVE_LZ4_H YES)
1247 + CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_limitedOutput ${LZ4_LIBDIR} HAVE_LZ4_SHARED_LIB)
1248 + CHECK_LIBRARY_EXISTS(lz4 LZ4_compress_default ${LZ4_LIBDIR} HAVE_LZ4_COMPRESS_DEFAULT)
1250 IF (HAVE_LZ4_SHARED_LIB AND HAVE_LZ4_H)
1251 ADD_DEFINITIONS(-DHAVE_LZ4=1)
1252 IF (HAVE_LZ4_COMPRESS_DEFAULT)
1253 ADD_DEFINITIONS(-DHAVE_LZ4_COMPRESS_DEFAULT=1)
1255 - LINK_LIBRARIES(lz4)
1256 + LINK_LIBRARIES(innobase ${LZ4_LIBRARY})
1258 IF (WITH_INNODB_LZ4 STREQUAL "ON")
1259 MESSAGE(FATAL_ERROR "Required lz4 library is not found")
1268 [FILE:1513:patches/patch-storage_innobase_lzo.cmake]
1269 --- storage/innobase/lzo.cmake.orig 2020-01-26 16:43:31 UTC
1270 +++ storage/innobase/lzo.cmake
1271 @@ -17,12 +17,10 @@ SET(WITH_INNODB_LZO AUTO CACHE STRING
1273 MACRO (MYSQL_CHECK_LZO_STATIC)
1274 IF (WITH_INNODB_LZO STREQUAL "ON" OR WITH_INNODB_LZO STREQUAL "AUTO")
1275 - CHECK_INCLUDE_FILES(lzo/lzo1x.h HAVE_LZO_H)
1276 - CHECK_LIBRARY_EXISTS(liblzo2.a lzo1x_1_compress "" HAVE_LZO_LIB)
1278 + CHECK_LIBRARY_EXISTS(lzo2 lzo1x_1_compress "${LZO_LIBDIR}" HAVE_LZO_LIB)
1279 IF(HAVE_LZO_LIB AND HAVE_LZO_H)
1280 ADD_DEFINITIONS(-DHAVE_LZO=1)
1281 - LINK_LIBRARIES(liblzo2.a)
1282 + LINK_LIBRARIES(lzo2)
1284 IF (WITH_INNODB_LZO STREQUAL "ON")
1285 MESSAGE(FATAL_ERROR "Required lzo library is not found")
1286 @@ -33,12 +31,16 @@ ENDMACRO()
1288 MACRO (MYSQL_CHECK_LZO)
1289 IF (WITH_INNODB_LZO STREQUAL "ON" OR WITH_INNODB_LZO STREQUAL "AUTO")
1290 - CHECK_INCLUDE_FILES(lzo/lzo1x.h HAVE_LZO_H)
1291 - CHECK_LIBRARY_EXISTS(lzo2 lzo1x_1_compress "" HAVE_LZO_SHARED_LIB)
1293 + find_path(LZO_INCLUDE NAMES lzo/lzo1x.h)
1294 + find_library(LZO_LIBRARY NAMES lzo2)
1295 + get_filename_component(LZO_LIBDIR ${LZO_LIBRARY} DIRECTORY)
1299 + CHECK_LIBRARY_EXISTS(lzo2 lzo1x_1_compress ${LZO_LIBDIR} HAVE_LZO_SHARED_LIB)
1300 IF(HAVE_LZO_SHARED_LIB AND HAVE_LZO_H)
1301 ADD_DEFINITIONS(-DHAVE_LZO=1)
1302 - LINK_LIBRARIES(lzo2)
1303 + LINK_LIBRARIES(${LZO_LIBRARY})
1305 IF (WITH_INNODB_LZO STREQUAL "ON")
1306 MESSAGE(FATAL_ERROR "Required lzo library is not found")
1309 [FILE:589:patches/patch-storage_rocksdb_build__rocksdb.cmake]
1310 --- storage/rocksdb/build_rocksdb.cmake.orig 2020-01-26 16:43:31 UTC
1311 +++ storage/rocksdb/build_rocksdb.cmake
1312 @@ -71,10 +71,6 @@ if(ZSTD_FOUND AND (NOT WITH_ROCKSDB_ZSTD
1313 SET(CMAKE_REQUIRED_LIBRARIES zstd)
1314 CHECK_FUNCTION_EXISTS(ZDICT_trainFromBuffer ZSTD_VALID)
1315 UNSET(CMAKE_REQUIRED_LIBRARIES)
1316 - if (WITH_ROCKSDB_ZSTD STREQUAL "ON" AND NOT ZSTD_VALID)
1317 - MESSAGE(FATAL_ERROR
1318 - "WITH_ROCKSDB_ZSTD is ON and ZSTD library was found, but the version needs to be >= 1.1.3")
1321 add_definitions(-DZSTD)
1322 include_directories(${ZSTD_INCLUDE_DIR})
1325 [FILE:1855:patches/patch-storage_rocksdb_ha__rocksdb.cc]
1326 --- storage/rocksdb/ha_rocksdb.cc.orig 2020-01-26 16:43:31 UTC
1327 +++ storage/rocksdb/ha_rocksdb.cc
1328 @@ -261,7 +261,7 @@ Rdb_cf_manager cf_manager;
1329 Rdb_ddl_manager ddl_manager;
1330 Rdb_binlog_manager binlog_manager;
1332 -#if !defined(_WIN32) && !defined(__APPLE__)
1333 +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__)
1334 Rdb_io_watchdog *io_watchdog = nullptr;
1337 @@ -843,7 +843,7 @@ static void rocksdb_set_io_write_timeout
1338 void *const var_ptr MY_ATTRIBUTE((__unused__)), const void *const save) {
1339 DBUG_ASSERT(save != nullptr);
1340 DBUG_ASSERT(rdb != nullptr);
1341 -#if !defined(_WIN32) && !defined(__APPLE__)
1342 +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__)
1343 DBUG_ASSERT(io_watchdog != nullptr);
1346 @@ -852,7 +852,7 @@ static void rocksdb_set_io_write_timeout
1347 const uint32_t new_val = *static_cast<const uint32_t *>(save);
1349 rocksdb_io_write_timeout_secs = new_val;
1350 -#if !defined(_WIN32) && !defined(__APPLE__)
1351 +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__)
1352 io_watchdog->reset_timeout(rocksdb_io_write_timeout_secs);
1354 RDB_MUTEX_UNLOCK_CHECK(rdb_sysvars_mutex);
1355 @@ -5721,7 +5721,7 @@ static int rocksdb_init_func(void *const
1356 directories.push_back(myrocks::rocksdb_wal_dir);
1359 -#if !defined(_WIN32) && !defined(__APPLE__)
1360 +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__)
1361 io_watchdog = new Rdb_io_watchdog(std::move(directories));
1362 io_watchdog->reset_timeout(rocksdb_io_write_timeout_secs);
1364 @@ -5828,7 +5828,7 @@ static int rocksdb_done_func(void *const
1365 delete commit_latency_stats;
1366 commit_latency_stats = nullptr;
1368 -#if !defined(_WIN32) && !defined(__APPLE__)
1369 +#if defined(HAVE_TIMER_DELETE) && !defined(_WIN32) && !defined(__APPLE__)
1371 io_watchdog = nullptr;
1375 [FILE:249:patches/patch-storage_rocksdb_rdb__buff.h]
1376 --- storage/rocksdb/rdb_buff.h.orig 2020-01-26 16:43:31 UTC
1377 +++ storage/rocksdb/rdb_buff.h
1379 #define be16toh(x) OSSwapBigToHostInt16(x)
1382 +#include "port/port_posix.h"
1384 /* MySQL header files */
1385 #include "./my_global.h"
1389 [FILE:493:patches/patch-storage_rocksdb_ut0counter.h]
1390 --- storage/rocksdb/ut0counter.h.orig 2020-01-26 16:43:31 UTC
1391 +++ storage/rocksdb/ut0counter.h
1392 @@ -30,6 +30,12 @@ Created 2012/04/12 by Sunny Bains
1395 #define get_curr_thread_id() GetCurrentThreadId()
1396 +#elif defined __FreeBSD__
1397 +#include <pthread_np.h>
1398 +#define get_curr_thread_id() pthread_getthreadid_np()
1399 +#elif defined __DragonFly__
1400 +#include <sys/syscall.h>
1401 +#define get_curr_thread_id() syscall(SYS_lwp_gettid)
1403 #define get_curr_thread_id() pthread_self()