Bug 176405 - [MAINTAINER] databases/mariadb55-*: Add OpenSSL and storage engine options
Summary: [MAINTAINER] databases/mariadb55-*: Add OpenSSL and storage engine options
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Florian Smeets
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-25 02:00 UTC by never
Modified: 2013-03-07 20:30 UTC (History)
0 users

See Also:


Attachments
file.diff (6.96 KB, patch)
2013-02-25 02:00 UTC, never
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description never 2013-02-25 02:00:00 UTC
	* 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

Fix: Apply patch attached.
Please note that files/patch-include_my_compare.h renamed to files/extra-patch-include_my_compare.h
How-To-Repeat: N/A
Comment 1 Florian Smeets freebsd_committer 2013-02-25 06:58:28 UTC
Responsible Changed
From-To: freebsd-ports-bugs->flo

I'll take it.
Comment 2 dfilter service freebsd_committer 2013-03-07 20:23:06 UTC
Author: flo
Date: Thu Mar  7 20:22:40 2013
New Revision: 313604
URL: http://svnweb.freebsd.org/changeset/ports/313604

Log:
  Change this port to be more in line with databases/mariadb-server
  - Add support for [Open]SSL choice - bundled, system, ports
  - Add support for OQGRAPH, PBXT storage engines
  - Add MAXKEY options (should stay on if you want your data to be compatible
    with all the other mysql ports in the ports tree)
  - Minor fix of patch-sql_CMakeLists.txt
  
  PR:		ports/176405
  Submitted by:	Alexandr Kovalenko <never@nevermind.kiev.ua>

Added:
  head/databases/mariadb55-server/files/extra-patch-include_my_compare.h
     - copied unchanged from r313601, head/databases/mariadb55-server/files/patch-include_my_compare.h
  head/databases/mariadb55-server/files/patch-storage_oqgraph_CMakeLists.txt   (contents, props changed)
Deleted:
  head/databases/mariadb55-server/files/patch-include_my_compare.h
Modified:
  head/databases/mariadb55-server/Makefile
  head/databases/mariadb55-server/files/patch-sql_CMakeLists.txt
  head/databases/mariadb55-server/pkg-plist

Modified: head/databases/mariadb55-server/Makefile
==============================================================================
--- head/databases/mariadb55-server/Makefile	Thu Mar  7 20:04:30 2013	(r313603)
+++ head/databases/mariadb55-server/Makefile	Thu Mar  7 20:22:40 2013	(r313604)
@@ -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
 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+=	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,31 @@ MAN1=		my_print_defaults.1 myisam_ftdump
 
 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
+USE_GCC?=	yes
+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:

Copied: head/databases/mariadb55-server/files/extra-patch-include_my_compare.h (from r313601, head/databases/mariadb55-server/files/patch-include_my_compare.h)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/mariadb55-server/files/extra-patch-include_my_compare.h	Thu Mar  7 20:22:40 2013	(r313604, copy of r313601, head/databases/mariadb55-server/files/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)

Modified: head/databases/mariadb55-server/files/patch-sql_CMakeLists.txt
==============================================================================
--- head/databases/mariadb55-server/files/patch-sql_CMakeLists.txt	Thu Mar  7 20:04:30 2013	(r313603)
+++ head/databases/mariadb55-server/files/patch-sql_CMakeLists.txt	Thu Mar  7 20:22:40 2013	(r313604)
@@ -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.

Added: head/databases/mariadb55-server/files/patch-storage_oqgraph_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/mariadb55-server/files/patch-storage_oqgraph_CMakeLists.txt	Thu Mar  7 20:22:40 2013	(r313604)
@@ -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

Modified: head/databases/mariadb55-server/pkg-plist
==============================================================================
--- head/databases/mariadb55-server/pkg-plist	Thu Mar  7 20:04:30 2013	(r313603)
+++ head/databases/mariadb55-server/pkg-plist	Thu Mar  7 20:22:40 2013	(r313604)
@@ -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
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 3 Florian Smeets freebsd_committer 2013-03-07 20:26:44 UTC
State Changed
From-To: open->closed

Committed. Thanks!