Date: Mon, 25 Feb 2013 03:51:34 +0200 (EET) From: Alexandr Kovalenko <never@nevermind.kiev.ua> To: FreeBSD-gnats-submit@freebsd.org Subject: ports/176405: [MAINTAINER] databases/mariadb55-*: Add OpenSSL and storage engine options Message-ID: <201302250151.r1P1pYBw034185@naia.nevermind.kiev.ua> Resent-Message-ID: <201302250200.r1P201MU063597@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 176405 >Category: ports >Synopsis: [MAINTAINER] databases/mariadb55-*: Add OpenSSL and storage engine options >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Mon Feb 25 02:00:00 UTC 2013 >Closed-Date: >Last-Modified: >Originator: Alexandr Kovalenko >Release: FreeBSD 9.1-STABLE amd64 >Organization: Nevermind Ltd. >Environment: System: FreeBSD 9.1-STABLE r247194 amd64 >Description: * Add support for [Open]SSL choice - bundled, system, ports * Add support for OQGRAPH, PBXT storage engines (on by default) * Add MAXKEY options (you should not turn it off unless you are absolutely sure what are you doing) * Minor fix of patch-sql_CMakeLists.txt >How-To-Repeat: N/A >Fix: Apply patch attached. Please note that files/patch-include_my_compare.h renamed to files/extra-patch-include_my_compare.h diff --git a/databases/mariadb55-server/Makefile b/databases/mariadb55-server/Makefile index 4f54292..aec00b0 100644 --- a/databases/mariadb55-server/Makefile +++ b/databases/mariadb55-server/Makefile @@ -2,7 +2,7 @@ PORTNAME?= mariadb PORTVERSION= 5.5.29 -PORTREVISION?= 0 +PORTREVISION?= 1 CATEGORIES= databases ipv6 MASTER_SITES= http://ftp.osuosl.org/pub/mariadb/${PORTNAME}-${PORTVERSION}/kvm-tarbake-jaunty-x86/ \ http://mirrors.supportex.net/mariadb/${PORTNAME}-${PORTVERSION}/kvm-tarbake-jaunty-x86/ \ @@ -23,10 +23,12 @@ USE_CMAKE= yes MAKE_JOBS_SAFE= yes NO_OPTIONS_SORT=yes -OPTIONS_DEFINE= SSL FASTMTX -OPTIONS_DEFAULT=SSL +OPTIONS_DEFINE+= SSL OPENSSL PORTSSL FASTMTX +OPTIONS_DEFAULT+= SSL FASTMTX_DESC= Replace mutexes with spinlocks +OPENSSL_DESC= Use OpenSSL instead of bundled yassl +PORTSSL_DESC= Use OpenSSL from port (requires OPENSSL to be set) CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \ -DINSTALL_DOCREADMEDIR="share/doc/mysql" \ @@ -53,11 +55,34 @@ CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \ DATADIR= ${PREFIX}/share/mysql USE_LDCONFIG= ${PREFIX}/lib/mysql +# MySQL-Server options +.if !defined(CLIENT_ONLY) +OPTIONS_DEFINE+= OQGRAPH PBXT MAXKEY + +OQGRAPH_DESC= Open Query Graph Computation engine +PBXT_DESC= MVCC-based transactional engine +MAXKEY_DESC= Change max key length from 1000 to 4000 + +OPTIONS_DEFAULT+= OQGRAPH PBXT MAXKEY +.endif + .include <bsd.port.options.mk> .if ${PORT_OPTIONS:MSSL} +.if ${PORT_OPTIONS:MOPENSSL} +USE_OPENSSL= yes +.if empty(PORT_OPTIONS:MPORTSSL) +WITH_OPENSSL_BASE= yes +.else +WITH_OPENSSL_PORT= yes +.endif +CMAKE_ARGS+= -DWITH_SSL=yes +.else CMAKE_ARGS+= -DWITH_SSL=bundled .endif +.else +CMAKE_FLAGS+= -DWITH_SSL=no +.endif .if ${PORT_OPTIONS:MFASTMTX} CMAKE_ARGS+= -DWITH_FAST_MUTEXES=1 .endif @@ -86,12 +111,30 @@ MAN1= my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 MAN8= mysqld.8 -CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" +CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" \ + -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 post-install: .if !defined(PACKAGE_BUILDING) @${CAT} ${PKGMESSAGE} .endif + +.if empty(PORT_OPTIONS:MOQGRAPH) +CMAKE_ARGS+= -DWITHOUT_OQGRAPH_STORAGE_ENGINE=1 +PLIST_SUB+= OQGRAPH="@comment " +.else +CMAKE_ARGS+= -DWITH_OQGRAPH_STORAGE_ENGINE=1 +PLIST_SUB+= OQGRAPH="" +LIB_DEPENDS+= boost_system:${PORTSDIR}/devel/boost-libs +.endif +.if empty(PORT_OPTIONS:MPBXT) +CMAKE_ARGS+= -DWITHOUT_PBXT_STORAGE_ENGINE=1 +.else +CMAKE_ARGS+= -DWITH_PBXT_STORAGE_ENGINE=1 +.endif +.if ${PORT_OPTIONS:MMAXKEY} +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-include_my_compare.h +.endif .endif post-patch: diff --git a/databases/mariadb55-server/files/extra-patch-include_my_compare.h b/databases/mariadb55-server/files/extra-patch-include_my_compare.h new file mode 100644 index 0000000..5fc447b --- /dev/null +++ b/databases/mariadb55-server/files/extra-patch-include_my_compare.h @@ -0,0 +1,11 @@ +--- include/my_compare.h.orig 2012-11-28 17:49:43.000000000 +0200 ++++ include/my_compare.h 2012-12-23 02:45:51.000000000 +0200 +@@ -40,7 +40,7 @@ + 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/mariadb55-server/files/patch-configure.cmake b/databases/mariadb55-server/files/patch-configure.cmake new file mode 100644 index 0000000..9878397 --- /dev/null +++ b/databases/mariadb55-server/files/patch-configure.cmake @@ -0,0 +1,11 @@ +--- configure.cmake.orig 2013-02-24 20:23:54.000000000 +0200 ++++ configure.cmake 2013-02-24 20:24:23.000000000 +0200 +@@ -67,7 +67,7 @@ + # MySQL "canonical" GCC flags. At least -fno-rtti flag affects + # ABI and cannot be simply removed. + SET(CMAKE_CXX_FLAGS +- "${CMAKE_CXX_FLAGS} -fno-implicit-templates -fno-exceptions -fno-rtti") ++ "${CMAKE_CXX_FLAGS} -fno-implicit-templates -fno-exceptions") + IF(CMAKE_CXX_FLAGS) + STRING(REGEX MATCH "fno-implicit-templates" NO_IMPLICIT_TEMPLATES + ${CMAKE_CXX_FLAGS}) diff --git a/databases/mariadb55-server/files/patch-include_my_compare.h b/databases/mariadb55-server/files/patch-include_my_compare.h deleted file mode 100644 index 5fc447b..0000000 --- a/databases/mariadb55-server/files/patch-include_my_compare.h +++ /dev/null @@ -1,11 +0,0 @@ ---- include/my_compare.h.orig 2012-11-28 17:49:43.000000000 +0200 -+++ include/my_compare.h 2012-12-23 02:45:51.000000000 +0200 -@@ -40,7 +40,7 @@ - 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/mariadb55-server/files/patch-sql_CMakeLists.txt b/databases/mariadb55-server/files/patch-sql_CMakeLists.txt index 7ad3019..af5a856 100644 --- a/databases/mariadb55-server/files/patch-sql_CMakeLists.txt +++ b/databases/mariadb55-server/files/patch-sql_CMakeLists.txt @@ -2,9 +2,9 @@ +++ sql/CMakeLists.txt 2012-12-23 05:56:58.000000000 +0200 @@ -268,6 +268,7 @@ ++IF(FALSE) IF(INSTALL_LAYOUT STREQUAL "STANDALONE") -+IF(FALSE) # We need to create empty directories (data/test) the installation. # This does not work with current CPack due to http://www.cmake.org/Bug/view.php?id=8767 # Avoid completely empty directories and install dummy file instead. diff --git a/databases/mariadb55-server/files/patch-storage_oqgraph_CMakeLists.txt b/databases/mariadb55-server/files/patch-storage_oqgraph_CMakeLists.txt new file mode 100644 index 0000000..32912a6 --- /dev/null +++ b/databases/mariadb55-server/files/patch-storage_oqgraph_CMakeLists.txt @@ -0,0 +1,10 @@ +--- storage/oqgraph/CMakeLists.txt.orig 2013-01-29 16:12:49.000000000 +0200 ++++ storage/oqgraph/CMakeLists.txt 2013-02-24 20:21:58.000000000 +0200 +@@ -3,6 +3,7 @@ + RETURN() + ENDIF() + INCLUDE_DIRECTORIES(BEFORE ${Boost_INCLUDE_DIRS}) ++SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${Boost_INCLUDE_DIRS}) + + IF(MSVC) + # lp:756966 OQGRAPH on Win64 does not compile diff --git a/databases/mariadb55-server/pkg-plist b/databases/mariadb55-server/pkg-plist index 15cc586..754b5f4 100644 --- a/databases/mariadb55-server/pkg-plist +++ b/databases/mariadb55-server/pkg-plist @@ -41,10 +41,10 @@ lib/mysql/plugin/dialog_examples.so lib/mysql/plugin/feedback.so lib/mysql/plugin/ha_archive.so lib/mysql/plugin/ha_blackhole.so -lib/mysql/plugin/ha_example.so lib/mysql/plugin/ha_federated.so lib/mysql/plugin/ha_federatedx.so lib/mysql/plugin/ha_innodb.so +%%OQGRAPH%%lib/mysql/plugin/ha_oqgraph.so lib/mysql/plugin/ha_sphinx.so lib/mysql/plugin/handlersocket.so lib/mysql/plugin/libdaemon_example.so >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201302250151.r1P1pYBw034185>