Index: databases/mariadb101-client/Makefile =================================================================== --- databases/mariadb101-client/Makefile +++ databases/mariadb101-client/Makefile @@ -26,6 +26,9 @@ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${b} . endfor ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/libmysqlclient.so.18 +. for b in auth_gssapi_client.so dialog.so mysql_clear_password.so + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/mysql/plugin/${b} +. endfor # Fix https://mariadb.atlassian.net/browse/MDEV-9388 @${REINPLACE_CMD} 's/-l-pthread/-lpthread/' ${STAGEDIR}${PREFIX}/bin/mysql_config Index: databases/mariadb101-client/files/patch-cmake_jemalloc.cmake =================================================================== --- databases/mariadb101-client/files/patch-cmake_jemalloc.cmake +++ /dev/null @@ -1,18 +0,0 @@ -# Upstreamed https://github.com/MariaDB/server/pull/140 - ---- cmake/jemalloc.cmake.orig 2015-12-23 15:33:29 UTC -+++ cmake/jemalloc.cmake -@@ -12,7 +12,12 @@ MACRO(JEMALLOC_TRY_STATIC) - ENDMACRO() - - MACRO(JEMALLOC_TRY_DYNAMIC) -- SET(libname jemalloc) -+ IF(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND -+ CMAKE_SYSTEM_VERSION STRGREATER "10.0") -+ SET(libname c) -+ ELSE() -+ SET(libname jemalloc) -+ ENDIF() - SET(what system) - CHECK_LIBRARY_EXISTS(${libname} malloc_stats_print "" HAVE_DYNAMIC_JEMALLOC) - ENDMACRO() Index: databases/mariadb101-client/files/patch-cmake_ssl.cmake =================================================================== --- databases/mariadb101-client/files/patch-cmake_ssl.cmake +++ databases/mariadb101-client/files/patch-cmake_ssl.cmake @@ -1,7 +1,7 @@ MariaDB prefers static libraries, breaks builds with ports' OpenSSL libs ---- cmake/ssl.cmake.orig 2015-12-23 15:33:29 UTC +--- cmake/ssl.cmake.orig 2016-03-24 09:12:10 UTC +++ cmake/ssl.cmake @@ -145,9 +145,9 @@ MACRO (MYSQL_CHECK_SSL) @@ -16,3 +16,16 @@ FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD HINTS ${OPENSSL_ROOT_DIR}/lib) +@@ -156,9 +156,9 @@ MACRO (MYSQL_CHECK_SSL) + HINTS ${OPENSSL_ROOT_DIR}/lib) + MARK_AS_ADVANCED(CRYPTO_LIBRARY OPENSSL_LIBRARIES OPENSSL_ROOT_DIR + OPENSSL_INCLUDE_DIR) +- IF (WITH_SSL_PATH) +- LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) +- ENDIF() ++# IF (WITH_SSL_PATH) ++# LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) ++# ENDIF() + + INCLUDE(CheckSymbolExists) + SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) Index: databases/mariadb101-client/pkg-plist =================================================================== --- databases/mariadb101-client/pkg-plist +++ databases/mariadb101-client/pkg-plist @@ -93,6 +93,12 @@ lib/mysql/libmysqlclient_r.a lib/mysql/libmysqlclient_r.so lib/mysql/libmysqlclient_r.so.18 +%%NO_GSSAPI_NONE%%lib/mysql/plugin/auth_gssapi_client.so +lib/mysql/plugin/daemon_example.ini +lib/mysql/plugin/dialog.so +lib/mysql/plugin/mysql_clear_password.so +%%DATADIR%%/maria_add_gis_sp.sql +%%DATADIR%%/maria_add_gis_sp_bootstrap.sql man/man1/msql2mysql.1.gz man/man1/mysql.1.gz man/man1/mysql_config.1.gz Index: databases/mariadb101-server/Makefile =================================================================== --- databases/mariadb101-server/Makefile +++ databases/mariadb101-server/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME?= mariadb -PORTVERSION= 10.1.11 +PORTVERSION= 10.1.13 CATEGORIES= databases ipv6 MASTER_SITES= http://ftp.osuosl.org/pub/${SITESDIR}/ \ http://mirrors.supportex.net/${SITESDIR}/ \ @@ -17,6 +17,9 @@ COMMENT?= Multithreaded SQL database (server) LICENSE= GPLv2 +LICENSE_NAME_PerconaFT= PerconaFT patents license +LICENSE_FILE_PerconaFT= ${WRKSRC}/storage/tokudb/PerconaFT/PATENTS +LICENSE_PERMS_PerconaFT= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept SUB_FILES= pkg-message PKGMESSAGE= ${WRKDIR}/pkg-message @@ -26,10 +29,11 @@ USE_LDCONFIG= ${PREFIX}/lib/mysql SHEBANG_FILES= scripts/*.sh SITESDIR= mariadb/mariadb-${PORTVERSION}/source +DOCSDIR= ${PREFIX}/share/doc/mysql OPTIONS_DEFINE= FASTMTX OPTIONS_SINGLE= GSSAPI -OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT +OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT GSSAPI_NONE OPTIONS_DEFAULT= GSSAPI_BASE FASTMTX_DESC= Replace mutexes with spinlocks @@ -46,7 +50,7 @@ INNOBASE_DESC= Build InnoDB engine next to XtraDB MAXKEY_DESC= Change max key length from 1000 to 4000 MROONGA_DESC= Mroonga Full Text Search engine -OQGRAPH_DESC= Open Query Graph Computation engine (Requires GCC) +OQGRAPH_DESC= Open Query Graph Computation engine SPHINX_DESC= SphinxSE engine SPIDER_DESC= Partitioning and XA-transactions engine TOKUDB_DESC= Fractal tree index tree data structure engine @@ -91,20 +95,22 @@ USE_OPENSSL= yes FASTMTX_CMAKE_ON= -DWITH_FAST_MUTEXES=1 +OPTIONS_SUB= yes .if defined(CLIENT_ONLY) # MySQL-Client part USES+= readline +GSSAPI_NONE_CMAKE_ON= -DPLUGIN_AUTH_GSSAPI_CLIENT=NO .else # MySQL-Server part USE_MYSQL= yes WANT_MYSQL_VER= 101m -OPTIONS_SUB= yes USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin USE_RC_SUBR= mysql-server USERS= mysql GROUPS= mysql CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" \ + -DPLUGIN_AUTH_GSSAPI_CLIENT=NO \ -DCMAKE_SKIP_BUILD_RPATH:BOOL=YES \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 @@ -113,15 +119,14 @@ -DWITHOUT_${ENGINE}=1 .endfor +GSSAPI_NONE_CMAKE_ON= -DPLUGIN_AUTH_GSSAPI=NO MAXKEY_EXTRA_PATCHES+= ${FILESDIR}/extra-patch-include_my__compare.h OQGRAPH_LIB_DEPENDS= libboost_system.so:${PORTSDIR}/devel/boost-libs \ libJudy.so:${PORTSDIR}/devel/judy -# Currently OQGraph does not build using clang. -# See See https://mariadb.atlassian.net/browse/MDEV-8051. -OQGRAPH_USE= gcc=yes TOKUDB_LIB_DEPENDS= libsnappy.so:${PORTSDIR}/archivers/snappy - -NOT_FOR_ARCHS= i386 +TOKUDB_PORTDOCS= README.md +TOKUDB_VARS= LICENSE+=PerconaFT LICENSE_COMB=multi +NOT_FOR_ARCHS= i386 NOT_FOR_ARCHS_REASON= currently does not compile on i386, see \ https://mariadb.atlassian.net/browse/MDEV-9627 Index: databases/mariadb101-server/distinfo =================================================================== --- databases/mariadb101-server/distinfo +++ databases/mariadb101-server/distinfo @@ -1,2 +1,2 @@ -SHA256 (mariadb-10.1.11.tar.gz) = cd32927370343b4f14bcc6073bca163623c27843ae7bc59c8c6a9ebeda0325ce -SIZE (mariadb-10.1.11.tar.gz) = 55184229 +SHA256 (mariadb-10.1.13.tar.gz) = 21e1c7da1421146c69f5e8077333aaac06778a87046a1943ee4f449fbcefc00d +SIZE (mariadb-10.1.13.tar.gz) = 55272572 Index: databases/mariadb101-server/files/patch-cmake_jemalloc.cmake =================================================================== --- databases/mariadb101-server/files/patch-cmake_jemalloc.cmake +++ /dev/null @@ -1,24 +0,0 @@ -Fix jemalloc detection on FreeBSD 10.x -Upstream https://github.com/MariaDB/server/pull/140 - ---- cmake/jemalloc.cmake.orig 2015-12-23 15:33:29 UTC -+++ cmake/jemalloc.cmake -@@ -12,9 +12,16 @@ MACRO(JEMALLOC_TRY_STATIC) - ENDMACRO() - - MACRO(JEMALLOC_TRY_DYNAMIC) -- SET(libname jemalloc) - SET(what system) -- CHECK_LIBRARY_EXISTS(${libname} malloc_stats_print "" HAVE_DYNAMIC_JEMALLOC) -+ IF (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND -+ CMAKE_SYSTEM_VERSION STRGREATER "10.0") -+ # Since FreeBSD 10.0 jemalloc is in base libc -+ SET(libname c) -+ SET(HAVE_DYNAMIC_JEMALLOC ON) -+ ELSE() -+ SET(libname jemalloc) -+ CHECK_LIBRARY_EXISTS(${libname} malloc_stats_print "" HAVE_DYNAMIC_JEMALLOC) -+ ENDIF() - ENDMACRO() - - MACRO (CHECK_JEMALLOC) Index: databases/mariadb101-server/files/patch-cmake_ssl.cmake =================================================================== --- databases/mariadb101-server/files/patch-cmake_ssl.cmake +++ databases/mariadb101-server/files/patch-cmake_ssl.cmake @@ -1,7 +1,7 @@ MariaDB prefers static libraries, breaks builds with ports' OpenSSL libs ---- cmake/ssl.cmake.orig 2015-12-23 15:33:29 UTC +--- cmake/ssl.cmake.orig 2016-03-24 09:12:10 UTC +++ cmake/ssl.cmake @@ -145,9 +145,9 @@ MACRO (MYSQL_CHECK_SSL) @@ -16,3 +16,16 @@ FIND_LIBRARY(OPENSSL_LIBRARIES NAMES ssl ssleay32 ssleay32MD HINTS ${OPENSSL_ROOT_DIR}/lib) +@@ -156,9 +156,9 @@ MACRO (MYSQL_CHECK_SSL) + HINTS ${OPENSSL_ROOT_DIR}/lib) + MARK_AS_ADVANCED(CRYPTO_LIBRARY OPENSSL_LIBRARIES OPENSSL_ROOT_DIR + OPENSSL_INCLUDE_DIR) +- IF (WITH_SSL_PATH) +- LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) +- ENDIF() ++# IF (WITH_SSL_PATH) ++# LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) ++# ENDIF() + + INCLUDE(CheckSymbolExists) + SET(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR}) Index: databases/mariadb101-server/files/patch-plugin_auth__gssapi_gssapi__server.cc =================================================================== --- databases/mariadb101-server/files/patch-plugin_auth__gssapi_gssapi__server.cc +++ /dev/null @@ -1,23 +0,0 @@ -From 3d794d0ee8e0a5a7dfbd3b7de056c0a3ccb9aa81 Mon Sep 17 00:00:00 2001 -From: Vladislav Vaintroub - -Date: Wed, 6 Jan 2016 09:15:19 +0100 -Subject: [PATCH] MDEV9494 Fix build for Heimdal Kerberos ---- - - plugin/auth_gssapi/gssapi_server.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/plugin/auth_gssapi/gssapi_server.cc b/plugin/auth_gssapi/gssapi_server.cc -index d325b2a..ed042a0 100644 ---- plugin/auth_gssapi/gssapi_server.cc.orig 2016-01-28 12:12:51 UTC -+++ plugin/auth_gssapi/gssapi_server.cc -@@ -58,7 +58,7 @@ static char* get_default_principal_name() - } - - /* Check for entry in keytab */ -- if (krb5_kt_read_service_key(context, NULL, principal, 0, 0, &key)) -+ if (krb5_kt_read_service_key(context, NULL, principal, 0, (krb5_enctype)0, &key)) - { - sql_print_warning("GSSAPI plugin : default principal '%s' not found in keytab", unparsed_name); - goto cleanup; Index: databases/mariadb101-server/files/patch-storage_oqgraph_graphcore.cc =================================================================== --- /dev/null +++ databases/mariadb101-server/files/patch-storage_oqgraph_graphcore.cc @@ -0,0 +1,11 @@ +--- storage/oqgraph/graphcore.cc.orig 2016-01-28 12:12:55 UTC ++++ storage/oqgraph/graphcore.cc +@@ -485,7 +485,7 @@ namespace open_query + optional + oqgraph_share::find_vertex(VertexID id) const + { +- return ::boost::find_vertex(id, g); ++ return oqgraph3::find_vertex(id, g); + } + + #if 0 Index: databases/mariadb101-server/files/patch-storage_oqgraph_oqgraph__shim.h =================================================================== --- /dev/null +++ databases/mariadb101-server/files/patch-storage_oqgraph_oqgraph__shim.h @@ -0,0 +1,73 @@ +--- storage/oqgraph/oqgraph_shim.h.orig 2016-01-28 12:12:55 UTC ++++ storage/oqgraph/oqgraph_shim.h +@@ -254,7 +254,7 @@ namespace boost + typedef no_property type; + }; + +-#if BOOST_VERSION >= 104601 ++#if BOOST_VERSION >= 104601 && BOOST_VERSION < 104900 + template <> + struct graph_bundle_type + { +@@ -274,6 +274,33 @@ namespace boost + }; + #endif + ++ template<> ++ struct property_map ++ { ++ typedef void type; ++ typedef oqgraph3::edge_weight_property_map const_type; ++ }; ++ ++ template<> ++ struct property_map ++ { ++ typedef void type; ++ typedef oqgraph3::vertex_index_property_map const_type; ++ }; ++ ++ template<> ++ struct property_map ++ { ++ typedef void type; ++ typedef oqgraph3::edge_index_property_map const_type; ++ }; ++ ++} ++ ++namespace oqgraph3 ++{ ++ using namespace boost; ++ + inline graph_traits::vertex_descriptor + source( + const graph_traits::edge_descriptor& e, +@@ -401,27 +428,6 @@ namespace boost + return count; + } + +- template<> +- struct property_map +- { +- typedef void type; +- typedef oqgraph3::edge_weight_property_map const_type; +- }; +- +- template<> +- struct property_map +- { +- typedef void type; +- typedef oqgraph3::vertex_index_property_map const_type; +- }; +- +- template<> +- struct property_map +- { +- typedef void type; +- typedef oqgraph3::edge_index_property_map const_type; +- }; +- + inline property_map< + oqgraph3::graph, + edge_weight_t>::const_type::reference Index: databases/mariadb101-server/files/patch-storage_tokudb_CMakeLists.txt =================================================================== --- databases/mariadb101-server/files/patch-storage_tokudb_CMakeLists.txt +++ databases/mariadb101-server/files/patch-storage_tokudb_CMakeLists.txt @@ -1,24 +1,12 @@ ---- storage/tokudb/CMakeLists.txt.orig 2015-12-23 15:33:32 UTC +--- storage/tokudb/CMakeLists.txt.orig 2016-03-26 16:20:50 UTC +++ storage/tokudb/CMakeLists.txt -@@ -1,7 +1,8 @@ - SET(TOKUDB_VERSION 5.6.26-74.0) - # PerconaFT only supports x86-64 and cmake-2.8.9+ --IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND -- NOT CMAKE_VERSION VERSION_LESS "2.8.9") -+IF( ( CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" -+ OR CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64" ) -+ AND NOT CMAKE_VERSION VERSION_LESS "2.8.9") - CHECK_CXX_SOURCE_COMPILES( - " - struct a {int b; int c; }; -@@ -107,8 +109,8 @@ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINA +@@ -103,9 +103,6 @@ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINA TARGET_LINK_LIBRARIES(tokudb tokufractaltree_static tokuportability_static ${ZLIB_LIBRARY} stdc++) -SET(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} -flto -fuse-linker-plugin") -SET(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO} -flto -fuse-linker-plugin") -+SET(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE}") -+SET(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO}") - +- SET(CPACK_RPM_server_PACKAGE_OBSOLETES "${CPACK_RPM_server_PACKAGE_OBSOLETES} MariaDB-tokudb-engine < 10.0.5" PARENT_SCOPE) + Index: databases/mariadb101-server/files/patch-storage_tokudb_PerconaFT_CMakeLists.txt =================================================================== --- /dev/null +++ databases/mariadb101-server/files/patch-storage_tokudb_PerconaFT_CMakeLists.txt @@ -0,0 +1,11 @@ +--- storage/tokudb/PerconaFT/CMakeLists.txt.orig 2016-03-26 18:18:05 UTC ++++ storage/tokudb/PerconaFT/CMakeLists.txt +@@ -77,7 +77,7 @@ add_subdirectory(src) + add_subdirectory(ftcxx) + add_subdirectory(tools) + +-INSTALL_DOCUMENTATION(README.md COPYING.AGPLv3 COPYING.GPLv2 PATENTS ++INSTALL_DOCUMENTATION(README.md + COMPONENT Server) + + ## build tags Index: databases/mariadb101-server/files/patch-storage_tokudb_PerconaFT_buildheader_CMakeLists.txt =================================================================== --- databases/mariadb101-server/files/patch-storage_tokudb_PerconaFT_buildheader_CMakeLists.txt +++ /dev/null @@ -1,29 +0,0 @@ -https://github.com/MariaDB/server/pull/157 - -MDEV-9657 - Use /bin/sh #157 - -Sp1l commented Feb 27, 2016 - -Remove Linuxism. - -Works fine with a POSIX-compat shell - ---- storage/tokudb/PerconaFT/buildheader/CMakeLists.txt.orig 2016-01-28 12:12:55 UTC -+++ storage/tokudb/PerconaFT/buildheader/CMakeLists.txt -@@ -1,6 +1,6 @@ - set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "") - --file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/runcat.sh" "#!/bin/bash -+file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/runcat.sh" "#!/bin/sh - out=$1; shift - exec \"$@\" >$out") - -@@ -8,7 +8,7 @@ add_executable(make_tdb make_tdb.cc) - set_property(TARGET make_tdb APPEND PROPERTY COMPILE_DEFINITIONS _GNU_SOURCE) - add_custom_command( - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/db.h" -- COMMAND bash runcat.sh "${CMAKE_CURRENT_BINARY_DIR}/db.h" $ -+ COMMAND sh runcat.sh "${CMAKE_CURRENT_BINARY_DIR}/db.h" $ - DEPENDS make_tdb) - add_custom_target(install_tdb_h DEPENDS - "${CMAKE_CURRENT_BINARY_DIR}/db.h") Index: databases/mariadb101-server/files/patch-storage_tokudb_PerconaFT_cmake__modules_TokuFeatureDetection.cmake =================================================================== --- databases/mariadb101-server/files/patch-storage_tokudb_PerconaFT_cmake__modules_TokuFeatureDetection.cmake +++ /dev/null @@ -1,19 +0,0 @@ -Fix failing backtrace detection - ---- storage/tokudb/PerconaFT/cmake_modules/TokuFeatureDetection.cmake.orig 2015-10-15 15:43:51 UTC -+++ storage/tokudb/PerconaFT/cmake_modules/TokuFeatureDetection.cmake -@@ -87,13 +87,7 @@ if (NOT HAVE_DLSYM_WITHOUT_DL) - endif () - check_function_exists(backtrace HAVE_BACKTRACE_WITHOUT_EXECINFO) - if (NOT HAVE_BACKTRACE_WITHOUT_EXECINFO) -- set(CMAKE_REQUIRED_LIBRARIES execinfo) -- check_function_exists(backtrace HAVE_BACKTRACE_WITH_EXECINFO) -- if (HAVE_BACKTRACE_WITH_EXECINFO) -- list(APPEND EXTRA_SYSTEM_LIBS execinfo) -- else () -- message(FATAL_ERROR "Cannot find backtrace(), even with -lexecinfo.") -- endif () -+ list(APPEND EXTRA_SYSTEM_LIBS execinfo) - endif () - - if(HAVE_CLOCK_REALTIME) Index: databases/mariadb101-server/pkg-plist =================================================================== --- databases/mariadb101-server/pkg-plist +++ databases/mariadb101-server/pkg-plist @@ -33,6 +33,8 @@ bin/replace bin/resolve_stack_dump bin/resolveip +%%TOKUDB%%bin/tokuft_logprint +%%TOKUDB%%bin/tokuftdump bin/wsrep_sst_common bin/wsrep_sst_mysqldump bin/wsrep_sst_rsync @@ -44,8 +46,7 @@ lib/mysql/libmysqld.so.18 lib/mysql/plugin/adt_null.so lib/mysql/plugin/auth_0x0100.so -lib/mysql/plugin/auth_gssapi.so -lib/mysql/plugin/auth_gssapi_client.so +%%NO_GSSAPI_NONE%%lib/mysql/plugin/auth_gssapi.so lib/mysql/plugin/auth_pam.so lib/mysql/plugin/auth_socket.so lib/mysql/plugin/auth_test_plugin.so