public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog mysql-cmake.eclass mysql-multilib.eclass
@ 2014-07-31 22:26 Brian Evans (grknight)
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Evans (grknight) @ 2014-07-31 22:26 UTC (permalink / raw
  To: gentoo-commits

grknight    14/07/31 22:26:07

  Modified:             ChangeLog mysql-cmake.eclass mysql-multilib.eclass
  Log:
  Update mysql cmake eclasses to prevent upstream from setting default features and CFLAGS

Revision  Changes    Path
1.1335               eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1335&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1335&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1334&r2=1.1335

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1334
retrieving revision 1.1335
diff -u -r1.1334 -r1.1335
--- ChangeLog	31 Jul 2014 02:31:09 -0000	1.1334
+++ ChangeLog	31 Jul 2014 22:26:07 -0000	1.1335
@@ -1,6 +1,11 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1334 2014/07/31 02:31:09 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1335 2014/07/31 22:26:07 grknight Exp $
+
+  31 Jul 2014; Brian Evans <grknight@gentoo.org> mysql-cmake.eclass,
+  mysql-multilib.eclass:
+  Update CMake variables to prevent MySQL from setting default CFLAGS
+  and features
 
   31 Jul 2014; Brian Evans <grknight@gentoo.org> mysql-multilib.eclass:
   Update the multilib eclass to match the work done by grobian for mysql-v2



1.24                 eclass/mysql-cmake.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.24&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.24&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?r1=1.23&r2=1.24

Index: mysql-cmake.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- mysql-cmake.eclass	29 Jul 2014 17:59:21 -0000	1.23
+++ mysql-cmake.eclass	31 Jul 2014 22:26:07 -0000	1.24
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.23 2014/07/29 17:59:21 robbat2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.24 2014/07/31 22:26:07 grknight Exp $
 
 # @ECLASS: mysql-cmake.eclass
 # @MAINTAINER:
@@ -317,6 +317,8 @@
 		-DENABLED_LOCAL_INFILE=1
 		$(cmake-utils_use_enable static-libs STATIC_LIBS)
 		-DWITH_SSL=$(usex ssl system bundled)
+		-DWITH_DEFAULT_COMPILER_OPTIONS=0
+		-DWITH_DEFAULT_FEATURE_SET=0
 	)
 
 	if in_iuse bindist ; then



1.4                  eclass/mysql-multilib.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.4&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.4&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?r1=1.3&r2=1.4

Index: mysql-multilib.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- mysql-multilib.eclass	31 Jul 2014 02:31:09 -0000	1.3
+++ mysql-multilib.eclass	31 Jul 2014 22:26:07 -0000	1.4
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.3 2014/07/31 02:31:09 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.4 2014/07/31 22:26:07 grknight Exp $
 
 # @ECLASS: mysql-multilib.eclass
 # @MAINTAINER:
@@ -8,6 +8,7 @@
 #	- MySQL Team <mysql-bugs@gentoo.org>
 #	- Robin H. Johnson <robbat2@gentoo.org>
 #	- Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
+#	- Brian Evans <grknight@gentoo.org>
 # @BLURB: This eclass provides most of the functions for mysql ebuilds
 # @DESCRIPTION:
 # The mysql-multilib.eclass is the base eclass to build the mysql and
@@ -445,6 +446,8 @@
 		-DENABLED_LOCAL_INFILE=1
 		-DMYSQL_UNIX_ADDR=${EPREFIX}/var/run/mysqld/mysqld.sock
 		-DWITH_SSL=$(usex ssl system bundled)
+		-DWITH_DEFAULT_COMPILER_OPTIONS=0
+		-DWITH_DEFAULT_FEATURE_SET=0
 	)
 
 	if in_iuse bindist ; then





^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog mysql-cmake.eclass mysql-multilib.eclass
@ 2014-10-08 17:25 Brian Evans (grknight)
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Evans (grknight) @ 2014-10-08 17:25 UTC (permalink / raw
  To: gentoo-commits

grknight    14/10/08 17:25:46

  Modified:             ChangeLog mysql-cmake.eclass mysql-multilib.eclass
  Log:
  Sync eclasses from mysql overlay

Revision  Changes    Path
1.1381               eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1381&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1381&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1380&r2=1.1381

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1380
retrieving revision 1.1381
diff -u -r1.1380 -r1.1381
--- ChangeLog	7 Oct 2014 16:23:39 -0000	1.1380
+++ ChangeLog	8 Oct 2014 17:25:46 -0000	1.1381
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1380 2014/10/07 16:23:39 pesa Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1381 2014/10/08 17:25:46 grknight Exp $
+
+  08 Oct 2014; Brian Evans <grknight@gentoo.org> mysql-cmake.eclass,
+  mysql-multilib.eclass:
+  Sync from overlay
 
   07 Oct 2014; Davide Pesavento <pesa@gentoo.org> qt5-build.eclass:
   Restrict mirror for qtwebkit wrt bug #524584



1.25                 eclass/mysql-cmake.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.25&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.25&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?r1=1.24&r2=1.25

Index: mysql-cmake.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- mysql-cmake.eclass	31 Jul 2014 22:26:07 -0000	1.24
+++ mysql-cmake.eclass	8 Oct 2014 17:25:46 -0000	1.25
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.24 2014/07/31 22:26:07 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.25 2014/10/08 17:25:46 grknight Exp $
 
 # @ECLASS: mysql-cmake.eclass
 # @MAINTAINER:
@@ -272,6 +272,7 @@
 		# Don't build bundled xz-utils
 		rm -f "${S}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake"
 		touch "${S}/storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake"
+		sed -i 's/ build_lzma//' "${S}/storage/tokudb/ft-index/ft/CMakeLists.txt" || die
 	fi
 
 	epatch_user
@@ -414,11 +415,12 @@
 	# Configuration stuff
 	case ${MYSQL_PV_MAJOR} in
 		5.[1-4]*) mysql_mycnf_version="5.1" ;;
-		5.[5-9]|6*|7*|8*|9*|10*) mysql_mycnf_version="5.5" ;;
+		5.5) mysql_mycnf_version="5.5" ;;
+		5.[6-9]|6*|7*|8*|9*|10*) mysql_mycnf_version="5.6" ;;
 	esac
 	einfo "Building default my.cnf (${mysql_mycnf_version})"
 	insinto "${MY_SYSCONFDIR#${EPREFIX}}"
-	doins "${S}"/scripts/mysqlaccess.conf
+	[[ -f "${S}/scripts/mysqlaccess.conf" ]] && doins "${S}"/scripts/mysqlaccess.conf
 	mycnf_src="my.cnf-${mysql_mycnf_version}"
 	sed -e "s!@DATADIR@!${MY_DATADIR}!g" \
 		"${FILESDIR}/${mycnf_src}" \



1.10                 eclass/mysql-multilib.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.10&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.10&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?r1=1.9&r2=1.10

Index: mysql-multilib.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- mysql-multilib.eclass	26 Sep 2014 17:56:29 -0000	1.9
+++ mysql-multilib.eclass	8 Oct 2014 17:25:46 -0000	1.10
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.9 2014/09/26 17:56:29 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.10 2014/10/08 17:25:46 grknight Exp $
 
 # @ECLASS: mysql-multilib.eclass
 # @MAINTAINER:
@@ -257,7 +257,7 @@
 fi
 
 if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] ; then
-	mysql_version_is_at_least "5.7.5" && DEPEND="${DEPEND} dev-libs/boost:0="
+	mysql_version_is_at_least "5.7.5" && DEPEND="${DEPEND} >=dev-libs/boost-1.56.0:0="
 fi
 
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
@@ -506,14 +506,14 @@
 	filter-flags "-O" "-O[01]"
 
 	CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing"
-	CXXFLAGS="${CXXFLAGS} -felide-constructors -fno-rtti"
+	CXXFLAGS="${CXXFLAGS} -felide-constructors"
 	# Causes linkage failures.  Upstream bug #59607 removes it
 	if ! mysql_version_is_at_least "5.6" ; then
 		CXXFLAGS="${CXXFLAGS} -fno-implicit-templates"
 	fi
 	# As of 5.7, exceptions are used!
 	if ! mysql_version_is_at_least "5.7" ; then
-		CXXFLAGS="${CXXFLAGS} -fno-exceptions"
+		CXXFLAGS="${CXXFLAGS} -fno-exceptions -fno-rtti"
 	fi
 	export CXXFLAGS
 





^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog mysql-cmake.eclass mysql-multilib.eclass
@ 2014-11-26  0:34 Brian Evans (grknight)
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Evans (grknight) @ 2014-11-26  0:34 UTC (permalink / raw
  To: gentoo-commits

grknight    14/11/26 00:34:41

  Modified:             ChangeLog mysql-cmake.eclass mysql-multilib.eclass
  Log:
  Sync eclasses from mysql overlay

Revision  Changes    Path
1.1446               eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1446&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1446&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1445&r2=1.1446

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1445
retrieving revision 1.1446
diff -u -r1.1445 -r1.1446
--- ChangeLog	24 Nov 2014 01:39:55 -0000	1.1445
+++ ChangeLog	26 Nov 2014 00:34:41 -0000	1.1446
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1445 2014/11/24 01:39:55 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1446 2014/11/26 00:34:41 grknight Exp $
+
+  26 Nov 2014; Brian Evans <grknight@gentoo.org> musql-cmake.eclass,
+  mysql-multilib.eclass:
+  Sync from mysql overlay
 
   24 Nov 2014; Mike Gilbert <floppym@gentoo.org> distutils-r1.eclass:
   eqawarn about /usr/lib/pypy/share instead of dying.



1.26                 eclass/mysql-cmake.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.26&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.26&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?r1=1.25&r2=1.26

Index: mysql-cmake.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- mysql-cmake.eclass	8 Oct 2014 17:25:46 -0000	1.25
+++ mysql-cmake.eclass	26 Nov 2014 00:34:41 -0000	1.26
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.25 2014/10/08 17:25:46 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.26 2014/11/26 00:34:41 grknight Exp $
 
 # @ECLASS: mysql-cmake.eclass
 # @MAINTAINER:
@@ -179,7 +179,6 @@
 		-DWITH_MYISAMMRG_STORAGE_ENGINE=1
 		-DWITH_MYISAM_STORAGE_ENGINE=1
 		-DWITH_PARTITION_STORAGE_ENGINE=1
-		$(cmake-utils_use_with extraengine FEDERATED_STORAGE_ENGINE)
 	)
 
 	if in_iuse pbxt ; then
@@ -187,10 +186,19 @@
 	fi
 
 	if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
+
+		# Federated{,X} must be treated special otherwise they will not be built as plugins
+		if ! use extraengine ; then
+			mycmakeargs+=(
+				-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
+				-DPLUGIN_FEDERATED=0
+				-DWITHOUT_FEDERATEDX_STORAGE_ENGINE=1
+				-DPLUGIN_FEDERATEDX=0 )
+		fi
+
 		mycmakeargs+=(
 			$(mysql-cmake_use_plugin oqgraph OQGRAPH)
 			$(mysql-cmake_use_plugin sphinx SPHINX)
-			$(mysql-cmake_use_plugin extraengine FEDERATEDX)
 			$(mysql-cmake_use_plugin tokudb TOKUDB)
 			$(mysql-cmake_use_plugin pam AUTH_PAM)
 		)
@@ -209,6 +217,23 @@
 				$(cmake-utils_use odbc CONNECT_WITH_ODBC)
 			)
 		fi
+
+		if in_iuse mroonga ; then
+			use mroonga || mycmakeargs+=( -DWITHOUT_MROONGA=1 )
+		else
+			mycmakeargs+=( -DWITHOUT_MROONGA=1 )
+		fi
+
+		if in_iuse galera ; then
+			mycmakeargs+=( $(cmake-utils_use_with galera WSREP) )
+		fi
+
+		if mysql_version_is_at_least "10.1.1" ; then
+			mycmakeargs+=(  $(cmake-utils_use_with innodb-lz4 INNODB_LZ4)
+					$(cmake-utils_use_with innodb-lzo INNODB_LZO) )
+		fi
+	else
+		mycmakeargs+=( $(cmake-utils_use_with extraengine FEDERATED_STORAGE_ENGINE) )
 	fi
 
 	if [[ ${PN} == "percona-server" ]]; then
@@ -275,6 +300,12 @@
 		sed -i 's/ build_lzma//' "${S}/storage/tokudb/ft-index/ft/CMakeLists.txt" || die
 	fi
 
+	# Remove the bundled groonga if it exists
+	# There is no CMake flag, it simply checks for existance
+	if [[ -d "${S}"/storage/mroonga/vendor/groonga ]] ; then
+		rm -r "${S}"/storage/mroonga/vendor/groonga || die "could not remove packaged groonga"
+	fi
+
 	epatch_user
 }
 



1.11                 eclass/mysql-multilib.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.11&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.11&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?r1=1.10&r2=1.11

Index: mysql-multilib.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- mysql-multilib.eclass	8 Oct 2014 17:25:46 -0000	1.10
+++ mysql-multilib.eclass	26 Nov 2014 00:34:41 -0000	1.11
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.10 2014/10/08 17:25:46 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.11 2014/11/26 00:34:41 grknight Exp $
 
 # @ECLASS: mysql-multilib.eclass
 # @MAINTAINER:
@@ -205,10 +205,19 @@
 	mysql_version_is_at_least "10.0.5" && IUSE="${IUSE} odbc xml" && \
 		REQUIRED_USE="odbc? ( extraengine !minimal ) xml? ( extraengine !minimal )"
 	REQUIRED_USE="${REQUIRED_USE} minimal? ( !oqgraph !sphinx ) tokudb? ( jemalloc )"
+
+	# MariaDB 10.1 introduces InnoDB/XtraDB compression with external libraries
+	# Choices are bzip2, lz4, lzma, lzo.  bzip2 and lzma enabled by default as they are system libraries
+	mysql_version_is_at_least "10.1.1" && IUSE="${IUSE} innodb-lz4 innodb-lzo"
 fi
 
-if [[ ${PN} == "mariadb-galera" ]]; then
-	IUSE="${IUSE} +sst-rsync sst-xtrabackup"
+if [[ -n "${WSREP_REVISION}" ]]; then
+	if [[ ${PN} == "mariadb" ]]; then
+		IUSE="${IUSE} galera sst-rsync sst-xtrabackup"
+		REQUIRED_USE="${REQUIRED_USE} sst-rsync? ( galera ) sst-xtrabackup? ( galera )"
+	else
+		IUSE="${IUSE} +sst-rsync sst-xtrabackup"
+	fi
 fi
 
 if [[ ${PN} == "percona-server" ]]; then
@@ -273,7 +282,12 @@
 			"
 	fi
 	mysql_version_is_at_least "10.0.7" && DEPEND="${DEPEND} oqgraph? ( dev-libs/judy:0= )"
-	mysql_version_is_at_least "10.0.9" && DEPEND="${DEPEND} >=dev-libs/libpcre-8.35:3="
+	mysql_version_is_at_least "10.0.9" && DEPEND="${DEPEND} >=dev-libs/libpcre-8.35:3=[${MULTILIB_USEDEP}]"
+
+	mysql_version_is_at_least "10.1.1" && DEPEND="${DEPEND}
+		innodb-lz4? ( app-arch/lz4 )
+		innodb-lzo? ( dev-libs/lzo )
+		"
 fi
 
 [[ ${PN} == "percona-server" ]] && DEPEND="${DEPEND} !minimal? ( pam? ( virtual/pam:0= ) )"
@@ -308,18 +322,23 @@
 		virtual/perl-Time-HiRes ) "
 fi
 
-if [[ ${PN} == "mariadb-galera" ]] ; then
+if [[ -n "${WSREP_REVISION}" ]] ; then
 	# The wsrep API version must match between the ebuild and sys-cluster/galera.
 	# This will be indicated by WSREP_REVISION in the ebuild and the first number
 	# in the version of sys-cluster/galera
 	#
 	# lsof is required as of 5.5.38 and 10.0.11 for the rsync sst
-	RDEPEND="${RDEPEND}
-		sys-apps/iproute2
+
+	GALERA_RDEPEND="sys-apps/iproute2
 		=sys-cluster/galera-${WSREP_REVISION}*
+		"
+	if [[ ${PN} == "mariadb" ]]; then
+		GALERA_RDEPEND="galera? ( ${GALERA_RDEPEND} )"
+	fi
+	RDEPEND="${RDEPEND} ${GALERA_RDEPEND}
 		sst-rsync? ( sys-process/lsof )
 		sst-xtrabackup? (
-			dev-db/xtrabackup-bin
+			>=dev-db/xtrabackup-bin-2.2.4
 			net-misc/socat[ssl]
 		)
 	"
@@ -345,6 +364,9 @@
 # my_config.h includes ABI specific data
 MULTILIB_WRAPPED_HEADERS=( /usr/include/mysql/my_config.h /usr/include/mysql/private/embedded_priv.h )
 
+[[ ${PN} == "mariadb" ]] && mysql_version_is_at_least "10.1.1" && \
+	MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h )
+
 # wrap the config script
 MULTILIB_CHOST_TOOLS=( /usr/bin/mysql_config )
 
@@ -393,7 +415,8 @@
 		mysql_version_is_at_least "7.2.9" && java-pkg-opt-2_pkg_setup
 	fi
 
-	if use_if_iuse tokudb && [[ $(gcc-major-version) -lt 4 || $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 7 ]] ; then
+	if use_if_iuse tokudb && [[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 || \
+		$(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 7 ]] ; then
 		eerror "${PN} with tokudb needs to be built with gcc-4.7 or later."
 		eerror "Please use gcc-config to switch to gcc-4.7 or later version."
 		die
@@ -470,12 +493,19 @@
 		-DWITHOUT_LIBWRAP=1
 		-DENABLED_LOCAL_INFILE=1
 		-DMYSQL_UNIX_ADDR=${EPREFIX}/var/run/mysqld/mysqld.sock
+		-DINSTALL_UNIX_ADDRDIR=${EPREFIX}/var/run/mysqld/mysqld.sock
 		-DWITH_SSL=$(usex ssl system bundled)
 		-DWITH_DEFAULT_COMPILER_OPTIONS=0
 		-DWITH_DEFAULT_FEATURE_SET=0
-		$(cmake-utils_use_enable systemtap DTRACE)
 	)
 
+	# systemtap only works on native ABI  bug 530132
+	if multilib_is_native_abi; then
+		mycmakeargs+=( $(cmake-utils_use_enable systemtap DTRACE) )
+	else
+		mycmakeargs+=( -DENABLE_DTRACE=0 )
+	fi
+
 	if in_iuse bindist ; then
 		mycmakeargs+=(
 			-DWITH_READLINE=$(usex bindist 1 0)





^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog mysql-cmake.eclass mysql-multilib.eclass
@ 2015-01-28 13:48 Brian Evans (grknight)
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Evans (grknight) @ 2015-01-28 13:48 UTC (permalink / raw
  To: gentoo-commits

grknight    15/01/28 13:48:58

  Modified:             ChangeLog mysql-cmake.eclass mysql-multilib.eclass
  Log:
  Sync changes from mysql overlay

Revision  Changes    Path
1.1516               eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1516&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1516&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1515&r2=1.1516

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1515
retrieving revision 1.1516
diff -u -r1.1515 -r1.1516
--- ChangeLog	23 Jan 2015 22:48:10 -0000	1.1515
+++ ChangeLog	28 Jan 2015 13:48:58 -0000	1.1516
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1515 2015/01/23 22:48:10 monsieurp Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1516 2015/01/28 13:48:58 grknight Exp $
+
+  28 Jan 2015; Brian Evans <grknight@gentoo.org> mysql-multilib.eclass,
+  mysql-cmake.eclass:
+  Sync from mysql overlay
 
   23 Jan 2015; Patrice Clement <monsieurp@gentoo.org> java-ant-2.eclass:
   Sanitise find arguments when using JAVA_PKG_BSFIX_NAME option. Fix #231956.



1.27                 eclass/mysql-cmake.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.27&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.27&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?r1=1.26&r2=1.27

Index: mysql-cmake.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- mysql-cmake.eclass	26 Nov 2014 00:34:41 -0000	1.26
+++ mysql-cmake.eclass	28 Jan 2015 13:48:58 -0000	1.27
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.26 2014/11/26 00:34:41 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.27 2015/01/28 13:48:58 grknight Exp $
 
 # @ECLASS: mysql-cmake.eclass
 # @MAINTAINER:
@@ -232,6 +232,10 @@
 			mycmakeargs+=(  $(cmake-utils_use_with innodb-lz4 INNODB_LZ4)
 					$(cmake-utils_use_with innodb-lzo INNODB_LZO) )
 		fi
+
+		if mysql_version_is_at_least "10.1.2" ; then
+			mycmakeargs+=( $(mysql-cmake_use_plugin cracklib CRACKLIB_PASSWORD_CHECK ) )
+		fi
 	else
 		mycmakeargs+=( $(cmake-utils_use_with extraengine FEDERATED_STORAGE_ENGINE) )
 	fi



1.12                 eclass/mysql-multilib.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.12&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.12&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?r1=1.11&r2=1.12

Index: mysql-multilib.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- mysql-multilib.eclass	26 Nov 2014 00:34:41 -0000	1.11
+++ mysql-multilib.eclass	28 Jan 2015 13:48:58 -0000	1.12
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.11 2014/11/26 00:34:41 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.12 2015/01/28 13:48:58 grknight Exp $
 
 # @ECLASS: mysql-multilib.eclass
 # @MAINTAINER:
@@ -184,21 +184,31 @@
 LICENSE="GPL-2"
 SLOT="0"
 
-IUSE="+community cluster debug embedded extraengine jemalloc latin1 max-idx-128 minimal
+IUSE="+community cluster debug embedded extraengine jemalloc latin1 minimal
 	+perl profiling selinux ssl systemtap static static-libs tcmalloc test"
 
+### Begin readline/libedit
+### If the world was perfect, we would use external libedit on both to have a similar experience
+### However libedit does not seem to support UTF-8 keyboard input
+
 # This probably could be simplified, but the syntax would have to be just right
-if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
-        mysql_check_version_range "5.5.37 to 10.0.13.99" ; then
-	IUSE="bindist ${IUSE}"
-elif [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
-	mysql_check_version_range "5.5.37 to 5.6.11.99" ; then
-	IUSE="bindist ${IUSE}"
-elif [[ ${PN} == "mysql-cluster" ]] && \
-	mysql_check_version_range "7.2 to 7.2.99.99"  ; then
+#if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
+#	mysql_check_version_range "5.5.37 to 10.0.13.99" ; then
+#	IUSE="bindist ${IUSE}"
+#elif [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
+#	mysql_check_version_range "5.5.37 to 5.6.11.99" ; then
+#	IUSE="bindist ${IUSE}"
+#elif [[ ${PN} == "mysql-cluster" ]] && \
+#	mysql_check_version_range "7.2 to 7.2.99.99"  ; then
+#	IUSE="bindist ${IUSE}"
+#fi
+
+if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
 	IUSE="bindist ${IUSE}"
 fi
 
+### End readline/libedit
+
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
 	IUSE="${IUSE} oqgraph pam sphinx tokudb"
 	# 5.5.33 and 10.0.5 add TokuDB. Authors strongly recommend jemalloc or perfomance suffers
@@ -209,6 +219,9 @@
 	# MariaDB 10.1 introduces InnoDB/XtraDB compression with external libraries
 	# Choices are bzip2, lz4, lzma, lzo.  bzip2 and lzma enabled by default as they are system libraries
 	mysql_version_is_at_least "10.1.1" && IUSE="${IUSE} innodb-lz4 innodb-lzo"
+
+	# 10.1.2 introduces a cracklib password checker
+	mysql_version_is_at_least "10.1.1" && IUSE="${IUSE} cracklib"
 fi
 
 if [[ -n "${WSREP_REVISION}" ]]; then
@@ -250,21 +263,31 @@
 	systemtap? ( >=dev-util/systemtap-1.3:0= )
 "
 
+### Begin readline/libedit
+### If the world was perfect, we would use external libedit on both to have a similar experience
+### However libedit does not seem to support UTF-8 keyboard input
+
 # dev-db/mysql-5.6.12+ only works with dev-libs/libedit
 # mariadb 10.0.14 fixes libedit detection. changed to follow mysql
 # This probably could be simplified
-if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
-	mysql_version_is_at_least "5.6.12" ; then
-	DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
-elif [[ ${PN} == "mysql-cluster" ]] && mysql_version_is_at_least "7.3"; then
-	DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
-elif [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
-	mysql_version_is_at_least "10.0.14" ; then
-	DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
-else
+#if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] && \
+#	mysql_version_is_at_least "5.6.12" ; then
+#	DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
+#elif [[ ${PN} == "mysql-cluster" ]] && mysql_version_is_at_least "7.3"; then
+#	DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
+#elif [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && \
+#	mysql_version_is_at_least "10.0.14" ; then
+#	DEPEND="${DEPEND} dev-libs/libedit:0=[${MULTILIB_USEDEP}]"
+#else
+#	DEPEND="${DEPEND} !bindist? ( >=sys-libs/readline-4.1:0=[${MULTILIB_USEDEP}] )"
+#fi
+
+if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
 	DEPEND="${DEPEND} !bindist? ( >=sys-libs/readline-4.1:0=[${MULTILIB_USEDEP}] )"
 fi
 
+### End readline/libedit
+
 if [[ ${PN} == "mysql" || ${PN} == "percona-server" ]] ; then
 	mysql_version_is_at_least "5.7.5" && DEPEND="${DEPEND} >=dev-libs/boost-1.56.0:0="
 fi
@@ -288,6 +311,8 @@
 		innodb-lz4? ( app-arch/lz4 )
 		innodb-lzo? ( dev-libs/lzo )
 		"
+
+	mysql_version_is_at_least "10.1.2" && DEPEND="${DEPEND} cracklib? ( sys-libs/cracklib:0= )"
 fi
 
 [[ ${PN} == "percona-server" ]] && DEPEND="${DEPEND} !minimal? ( pam? ( virtual/pam:0= ) )"
@@ -514,7 +539,8 @@
 		)
 	fi
 
-	mycmakeargs+=( -DWITH_EDITLINE=system )
+	### TODO: make this system but issues with UTF-8 prevent it
+	mycmakeargs+=( -DWITH_EDITLINE=bundled )
 
 	if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
 		mycmakeargs+=(





^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog mysql-cmake.eclass mysql-multilib.eclass
@ 2015-07-28  1:58 Brian Evans (grknight)
  0 siblings, 0 replies; 5+ messages in thread
From: Brian Evans (grknight) @ 2015-07-28  1:58 UTC (permalink / raw
  To: gentoo-commits

grknight    15/07/28 01:58:13

  Modified:             ChangeLog mysql-cmake.eclass mysql-multilib.eclass
  Log:
  Add support for the split client/server options to the mysql eclasses

Revision  Changes    Path
1.1734               eclass/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1734&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1734&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1733&r2=1.1734

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1733
retrieving revision 1.1734
diff -u -r1.1733 -r1.1734
--- ChangeLog	27 Jul 2015 19:11:00 -0000	1.1733
+++ ChangeLog	28 Jul 2015 01:58:13 -0000	1.1734
@@ -1,6 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1733 2015/07/27 19:11:00 williamh Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1734 2015/07/28 01:58:13 grknight Exp $
+
+  28 Jul 2015; Brian Evans <grknight@gentoo.org> mysql-cmake.eclass,
+  mysql-multilib.eclass:
+  Add support for the split client/server options to the mysql eclasses
 
   27 Jul 2015; William Hubbs <williamh@gentoo.org> +golang-base.eclass,
   golang-build.eclass, golang-vcs.eclass:



1.28                 eclass/mysql-cmake.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.28&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?rev=1.28&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-cmake.eclass?r1=1.27&r2=1.28

Index: mysql-cmake.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- mysql-cmake.eclass	28 Jan 2015 13:48:58 -0000	1.27
+++ mysql-cmake.eclass	28 Jul 2015 01:58:13 -0000	1.28
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.27 2015/01/28 13:48:58 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-cmake.eclass,v 1.28 2015/07/28 01:58:13 grknight Exp $
 
 # @ECLASS: mysql-cmake.eclass
 # @MAINTAINER:
@@ -87,26 +87,30 @@
 # Helper function to configure locale cmake options
 configure_cmake_locale() {
 
-	if ! use minimal && [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
-		ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
-		ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
-		ewarn "You MUST file bugs without these variables set."
+	if use_if_iuse minimal ; then
+		:
+	elif ! in_iuse server || use_if_iuse server ; then
+		if [[ ( -n ${MYSQL_DEFAULT_CHARSET} ) && ( -n ${MYSQL_DEFAULT_COLLATION} ) ]]; then
+			ewarn "You are using a custom charset of ${MYSQL_DEFAULT_CHARSET}"
+			ewarn "and a collation of ${MYSQL_DEFAULT_COLLATION}."
+			ewarn "You MUST file bugs without these variables set."
 
-		mycmakeargs+=(
-			-DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET}
-			-DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION}
-		)
+			mycmakeargs+=(
+				-DDEFAULT_CHARSET=${MYSQL_DEFAULT_CHARSET}
+				-DDEFAULT_COLLATION=${MYSQL_DEFAULT_COLLATION}
+			)
 
-	elif ! use latin1 ; then
-		mycmakeargs+=(
-			-DDEFAULT_CHARSET=utf8
-			-DDEFAULT_COLLATION=utf8_general_ci
-		)
-	else
-		mycmakeargs+=(
-			-DDEFAULT_CHARSET=latin1
-			-DDEFAULT_COLLATION=latin1_swedish_ci
-		)
+		elif ! use latin1 ; then
+			mycmakeargs+=(
+				-DDEFAULT_CHARSET=utf8
+				-DDEFAULT_COLLATION=utf8_general_ci
+			)
+		else
+			mycmakeargs+=(
+				-DDEFAULT_CHARSET=latin1
+				-DDEFAULT_COLLATION=latin1_swedish_ci
+			)
+		fi
 	fi
 }
 
@@ -212,7 +216,6 @@
 				$(mysql-cmake_use_plugin extraengine SPIDER)
 				$(mysql-cmake_use_plugin extraengine CONNECT)
 				-DCONNECT_WITH_MYSQL=1
-				-DPLUGIN_CONNECT_WITH_MYSQL=YES
 				$(cmake-utils_use xml CONNECT_WITH_LIBXML2)
 				$(cmake-utils_use odbc CONNECT_WITH_ODBC)
 			)
@@ -376,7 +379,7 @@
 
 	configure_cmake_locale
 
-	if use minimal ; then
+	if use_if_iuse minimal ; then
 		configure_cmake_minimal
 	else
 		configure_cmake_standard
@@ -425,11 +428,13 @@
 
 	cmake-utils_src_install
 
-	# Convenience links
-	einfo "Making Convenience links for mysqlcheck multi-call binary"
-	dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze"
-	dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair"
-	dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize"
+	if ! in_iuse tools || use_if_iuse tools ; then
+		# Convenience links
+		einfo "Making Convenience links for mysqlcheck multi-call binary"
+		dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlanalyze"
+		dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqlrepair"
+		dosym "/usr/bin/mysqlcheck" "/usr/bin/mysqloptimize"
+	fi
 
 	# Create a mariadb_config symlink
 	[[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && dosym "/usr/bin/mysql_config" "/usr/bin/mariadb_config"
@@ -470,7 +475,9 @@
 	newins "${TMPDIR}/my.cnf.ok" my.cnf
 
 	# Minimal builds don't have the MySQL server
-	if ! use minimal ; then
+	if use_if_iuse minimal ; then
+		:
+	elif ! in_iuse server || use_if_iuse server ; then
 		einfo "Creating initial directories"
 		# Empty directories ...
 		diropts "-m0750"
@@ -489,7 +496,9 @@
 	fi
 
 	# Minimal builds don't have the MySQL server
-	if ! use minimal ; then
+	if use_if_iuse minimal ; then
+		:
+	elif ! in_iuse server || use_if_iuse server; then
 		einfo "Including support files and sample configurations"
 		docinto "support-files"
 		for script in \
@@ -510,6 +519,8 @@
 	[[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && ! use perl \
 	&& rm -f "${ED}/usr/bin/mytop"
 
+	in_iuse client-libs && ! use client-libs && return
+
 	# Percona has decided to rename libmysqlclient to libperconaserverclient
 	# Use a symlink to preserve linkages for those who don't use mysql_config
 	if [[ ${PN} == "percona-server" ]] && mysql_version_is_at_least "5.5.36" ; then



1.22                 eclass/mysql-multilib.eclass

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.22&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?rev=1.22&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/mysql-multilib.eclass?r1=1.21&r2=1.22

Index: mysql-multilib.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- mysql-multilib.eclass	10 Jun 2015 18:08:02 -0000	1.21
+++ mysql-multilib.eclass	28 Jul 2015 01:58:13 -0000	1.22
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.21 2015/06/10 18:08:02 grknight Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/mysql-multilib.eclass,v 1.22 2015/07/28 01:58:13 grknight Exp $
 
 # @ECLASS: mysql-multilib.eclass
 # @MAINTAINER:
@@ -75,7 +75,7 @@
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]]; then
 	case ${PV} in
 		10.0*) MYSQL_PV_MAJOR="5.6" ;;
-		10.1*) MYSQL_PV_MAJOR="5.7" ;;
+		10.1*) MYSQL_PV_MAJOR="5.6" ;;
 	esac
 fi
 
@@ -178,9 +178,9 @@
 	DESCRIPTION="An enhanced, drop-in replacement for MySQL from the Percona team"
 fi
 LICENSE="GPL-2"
-SLOT="0"
+SLOT="0/${SUBSLOT:=0}"
 
-IUSE="+community cluster debug embedded extraengine jemalloc latin1 minimal
+IUSE="+community cluster debug embedded extraengine jemalloc latin1
 	+perl profiling selinux ssl systemtap static static-libs tcmalloc test"
 
 ### Begin readline/libedit
@@ -210,8 +210,11 @@
 	IUSE="${IUSE} oqgraph pam sphinx tokudb"
 	# 5.5.33 and 10.0.5 add TokuDB. Authors strongly recommend jemalloc or perfomance suffers
 	mysql_version_is_at_least "10.0.5" && IUSE="${IUSE} odbc xml"
-	REQUIRED_USE="${REQUIRED_USE} minimal? ( !oqgraph !sphinx ) tokudb? ( jemalloc )"
-
+	if [[ ${HAS_TOOLS_PATCH} ]] ; then
+		REQUIRED_USE="${REQUIRED_USE} !server? ( !oqgraph !sphinx ) tokudb? ( jemalloc )"
+	else
+		REQUIRED_USE="${REQUIRED_USE} minimal? ( !oqgraph !sphinx ) tokudb? ( jemalloc )"
+	fi
 	# MariaDB 10.1 introduces InnoDB/XtraDB compression with external libraries
 	# Choices are bzip2, lz4, lzma, lzo.  bzip2 and lzma enabled by default as they are system libraries
 	mysql_version_is_at_least "10.1.1" && IUSE="${IUSE} innodb-lz4 innodb-lzo"
@@ -233,9 +236,17 @@
 	IUSE="${IUSE} pam"
 fi
 
+if [[ ${HAS_TOOLS_PATCH} ]] ; then
+	IUSE="${IUSE} client-libs +server +tools"
+	REQUIRED_USE="${REQUIRED_USE} !server? ( !extraengine !embedded ) server? ( tools ) || ( client-libs server tools )"
+else
+	IUSE="${IUSE} minimal"
+	REQUIRED_USE="${REQUIRED_USE} minimal? ( !extraengine !embedded )"
+fi
+
 REQUIRED_USE="
 	${REQUIRED_USE} tcmalloc? ( !jemalloc ) jemalloc? ( !tcmalloc )
-	 minimal? ( !extraengine !embedded ) static? ( !ssl )"
+	 static? ( !ssl )"
 
 #
 # DEPENDENCIES:
@@ -250,16 +261,34 @@
 		sys-process/procps:0=
 		dev-libs/libaio:0=
 	)
-	sys-libs/ncurses
 	>=sys-apps/sed-4
 	>=sys-apps/texinfo-4.7-r1
-	>=sys-libs/zlib-1.2.3:0=[${MULTILIB_USEDEP},static-libs?]
 	!dev-db/mariadb-native-client[mysqlcompat]
-	jemalloc? ( dev-libs/jemalloc:0=[${MULTILIB_USEDEP}] )
+	jemalloc? ( dev-libs/jemalloc:0= )
 	tcmalloc? ( dev-util/google-perftools:0= )
 	systemtap? ( >=dev-util/systemtap-1.3:0= )
 "
 
+if [[ ${HAS_TOOLS_PATCH} ]] ; then
+	DEPEND+="
+		client-libs? (
+			ssl? ( >=dev-libs/openssl-1.0.0:0=[${MULTILIB_USEDEP},static-libs?] )
+			>=sys-libs/zlib-1.2.3:0=[${MULTILIB_USEDEP},static-libs?]
+		)
+		!client-libs? (
+			ssl? ( >=dev-libs/openssl-1.0.0:0=[static-libs?] )
+			>=sys-libs/zlib-1.2.3:0=[static-libs?]
+		)
+		tools? ( sys-libs/ncurses ) embedded? ( sys-libs/ncurses )
+	"
+else
+	DEPEND+="
+		ssl? ( >=dev-libs/openssl-1.0.0:0=[${MULTILIB_USEDEP},static-libs?] )
+		>=sys-libs/zlib-1.2.3:0=[${MULTILIB_USEDEP},static-libs?]
+		sys-libs/ncurses[${MULTILIB_USEDEP}]
+	"
+fi
+
 ### Begin readline/libedit
 ### If the world was perfect, we would use external libedit on both to have a similar experience
 ### However libedit does not seem to support UTF-8 keyboard input
@@ -280,7 +309,12 @@
 #fi
 
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
-	DEPEND="${DEPEND} !bindist? ( >=sys-libs/readline-4.1:0=[${MULTILIB_USEDEP}] )"
+	# Readline is only used for the command-line and embedded example
+	if [[ ${HAS_TOOLS_PATCH} ]] ; then
+		DEPEND="${DEPEND} !bindist? ( tools? ( >=sys-libs/readline-4.1:0= ) embedded? ( >=sys-libs/readline-4.1:0= )  )"
+	else
+		DEPEND="${DEPEND} !bindist? ( >=sys-libs/readline-4.1:0=[${MULTILIB_USEDEP}] )"
+	fi
 fi
 
 ### End readline/libedit
@@ -293,9 +327,13 @@
 
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
 	# Bug 441700 MariaDB >=5.3 include custom mytop
+	if [[ ${HAS_TOOLS_PATCH} ]] ; then
+		DEPEND="${DEPEND} server? ( pam? ( virtual/pam:0= ) )"
+	else
+		DEPEND="${DEPEND} !minimal? ( pam? ( virtual/pam:0= ) )"
+	fi
 	DEPEND="${DEPEND}
 		oqgraph? ( >=dev-libs/boost-1.40.0:0= )
-		!minimal? ( pam? ( virtual/pam:0= ) )
 		perl? ( !dev-db/mytop )"
 	if mysql_version_is_at_least "10.0.5" ; then
 		DEPEND="${DEPEND}
@@ -306,7 +344,7 @@
 			"
 	fi
 	mysql_version_is_at_least "10.0.7" && DEPEND="${DEPEND} oqgraph? ( dev-libs/judy:0= )"
-	mysql_version_is_at_least "10.0.9" && DEPEND="${DEPEND} >=dev-libs/libpcre-8.35:3=[${MULTILIB_USEDEP}]"
+	mysql_version_is_at_least "10.0.9" && DEPEND="${DEPEND} >=dev-libs/libpcre-8.35:3="
 
 	mysql_version_is_at_least "10.1.1" && DEPEND="${DEPEND}
 		innodb-lz4? ( app-arch/lz4 )
@@ -316,7 +354,13 @@
 	mysql_version_is_at_least "10.1.2" && DEPEND="${DEPEND} cracklib? ( sys-libs/cracklib:0= )"
 fi
 
-[[ ${PN} == "percona-server" ]] && DEPEND="${DEPEND} !minimal? ( pam? ( virtual/pam:0= ) )"
+if [[ ${PN} == "percona-server" ]] ; then
+	if [[ ${HAS_TOOLS_PATCH} ]] ; then
+		DEPEND="${DEPEND} server? ( pam? ( virtual/pam:0= ) )"
+	else
+		DEPEND="${DEPEND} !minimal? ( pam? ( virtual/pam:0= ) )"
+	fi
+fi
 
 # Having different flavours at the same time is not a good idea
 for i in "mysql" "mariadb" "mariadb-galera" "percona-server" "mysql-cluster" ; do
@@ -334,11 +378,18 @@
 # prefix: first need to implement something for #196294
 # TODO: check emul-linux-x86-db dep when it is multilib enabled
 RDEPEND="${DEPEND}
-	!minimal? ( !prefix? ( dev-db/mysql-init-scripts ) )
 	selinux? ( sec-policy/selinux-mysql )
 	abi_x86_32? ( !app-emulation/emul-linux-x86-db[-abi_x86_32(-)] )
 "
 
+if [[ ${HAS_TOOLS_PATCH} ]] ; then
+	RDEPEND="${RDEPEND}
+		server? ( !prefix? ( dev-db/mysql-init-scripts ) )
+		!client-libs? ( virtual/libmysqlclient )"
+else
+	RDEPEND="${RDEPEND} !minimal? ( !prefix? ( dev-db/mysql-init-scripts ) )"
+fi
+
 if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
 	# Bug 455016 Add dependencies of mytop
 	RDEPEND="${RDEPEND} perl? (
@@ -387,9 +438,13 @@
 	virtual/yacc
 	static? ( sys-libs/ncurses[static-libs] )
 	>=dev-util/cmake-2.8.9
-	sys-libs/ncurses[${MULTILIB_USEDEP}]
 "
 
+# Transition dep until all ebuilds have client-libs patch and USE
+if ! [[ ${HAS_TOOLS_PATCH} ]] ; then
+	DEPEND="${DEPEND} sys-libs/ncurses[${MULTILIB_USEDEP}]"
+fi
+
 # For other stuff to bring us in
 # dev-perl/DBD-mysql is needed by some scripts installed by MySQL
 PDEPEND="${PDEPEND} perl? ( >=dev-perl/DBD-mysql-2.9004 )
@@ -404,9 +459,6 @@
 [[ ${PN} == "mariadb" ]] && mysql_version_is_at_least "10.1.1" && \
 	MULTILIB_WRAPPED_HEADERS+=( /usr/include/mysql/mysql_version.h )
 
-# wrap the config script
-MULTILIB_CHOST_TOOLS=( /usr/bin/mysql_config )
-
 #
 # HELPER FUNCTIONS:
 #
@@ -448,7 +500,9 @@
 mysql-multilib_pkg_setup() {
 
 	if has test ${FEATURES} ; then
-		if ! use minimal ; then
+		if use_if_iuse minimal ; then
+			:
+		elif ! in_iuse server || use_if_iuse server ; then
 			if ! has userpriv ${FEATURES} ; then
 				eerror "Testing with FEATURES=-userpriv is no longer supported by upstream. Tests MUST be run as non-root."
 			fi
@@ -526,6 +580,13 @@
 
 	CMAKE_BUILD_TYPE="RelWithDebInfo"
 
+	if ! multilib_is_native_abi && in_iuse client-libs ; then
+		if ! use client-libs ; then
+			ewarn "Skipping multilib build due to client-libs USE disabled"
+			return 0
+		fi
+	fi
+
 	# debug hack wrt #497532
 	mycmakeargs=(
 		-DCMAKE_C_FLAGS_RELWITHDEBINFO="$(usex debug "" "-DNDEBUG")"
@@ -534,8 +595,8 @@
 		-DMYSQL_DATADIR=${EPREFIX}/var/lib/mysql
 		-DSYSCONFDIR=${EPREFIX}/etc/mysql
 		-DINSTALL_BINDIR=bin
-		-DINSTALL_DOCDIR=share/doc/${P}
-		-DINSTALL_DOCREADMEDIR=share/doc/${P}
+		-DINSTALL_DOCDIR=share/doc/${PF}
+		-DINSTALL_DOCREADMEDIR=share/doc/${PF}
 		-DINSTALL_INCLUDEDIR=include/mysql
 		-DINSTALL_INFODIR=share/info
 		-DINSTALL_LIBDIR=$(get_libdir)
@@ -569,6 +630,18 @@
 		mycmakeargs+=( -DENABLE_DTRACE=0 )
 	fi
 
+	if in_iuse client-libs ; then
+		mycmakeargs+=( -DWITHOUT_CLIENTLIBS=$(usex client-libs 0 1) )
+	fi
+
+	if in_iuse tools ; then
+		if multilib_is_native_abi ; then
+			mycmakeargs+=( -DWITHOUT_TOOLS=$(usex tools 0 1) )
+		else
+			mycmakeargs+=( -DWITHOUT_TOOLS=1 )
+		fi
+	fi
+
 	if in_iuse bindist ; then
 		# bfd.h is only used starting with 10.1 and can be controlled by NOT_FOR_DISTRIBUTION
 		if multilib_is_native_abi; then
@@ -576,7 +649,7 @@
 				-DWITH_READLINE=$(usex bindist 1 0)
 				-DNOT_FOR_DISTRIBUTION=$(usex bindist 0 1)
 			)
-		else
+		elif ! in_iuse client-libs ; then
 			mycmakeargs+=(
 				-DWITH_READLINE=1
 				-DNOT_FOR_DISTRIBUTION=0
@@ -587,7 +660,7 @@
 	### TODO: make this system but issues with UTF-8 prevent it
 	mycmakeargs+=( -DWITH_EDITLINE=bundled )
 
-	if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] ; then
+	if [[ ${PN} == "mariadb" || ${PN} == "mariadb-galera" ]] && multilib_is_native_abi ; then
 		mycmakeargs+=(
 			-DWITH_JEMALLOC=$(usex jemalloc system)
 		)
@@ -597,10 +670,16 @@
 
 	configure_cmake_locale
 
-	if multilib_is_native_abi && ! use minimal ; then
-		configure_cmake_standard
-	else
+	if use_if_iuse minimal ; then
 		configure_cmake_minimal
+	elif in_iuse server ; then
+		if multilib_is_native_abi && use server ; then
+			configure_cmake_standard
+		else
+			configure_cmake_minimal
+		fi
+	else
+		configure_cmake_standard
 	fi
 
 	# Always build NDB with mysql-cluster for libndbclient
@@ -618,6 +697,13 @@
 }
 
 multilib_src_compile() {
+	if ! multilib_is_native_abi && in_iuse client-libs ; then
+		if ! use client-libs ; then
+			ewarn "Skipping multilib build due to client-libs USE disabled"
+			return 0
+		fi
+	fi
+
 	cmake-utils_src_compile "${_cmake_args[@]}"
 }
 
@@ -626,19 +712,39 @@
 # @DESCRIPTION:
 # Install mysql.
 mysql-multilib_src_install() {
-	multilib-minimal_src_install
+	if ! in_iuse client-libs || use_if_iuse client-libs ; then
+		# wrap the config script
+		MULTILIB_CHOST_TOOLS=( /usr/bin/mysql_config )
+	fi
+
+	if in_iuse client-libs && ! use client-libs ; then
+		multilib_foreach_abi multilib_src_install
+	else
+		multilib-minimal_src_install
+	fi
 }
 
 multilib_src_install() {
 	debug-print-function ${FUNCNAME} "$@"
 
+	if ! multilib_is_native_abi && in_iuse client-libs ; then
+		if ! use client-libs ; then
+			ewarn "Skipping multilib build due to client-libs USE disabled"
+			return 0
+		fi
+	fi
+
 	if multilib_is_native_abi; then
 		mysql-cmake_src_install
 	else
 		cmake-utils_src_install
-		if ! use minimal && [[ "${PN}" == "mariadb" || "${PN}" == "mariadb-galera" ]] ; then
-			insinto /usr/include/mysql/private
-			doins "${S}"/sql/*.h
+		if [[ "${PN}" == "mariadb" || "${PN}" == "mariadb-galera" ]] ; then
+			if use_if_iuse minimal ; then
+				:
+			elif  use_if_iuse server || ! in_iuse server ; then
+				insinto /usr/include/mysql/private
+				doins "${S}"/sql/*.h
+			fi
 		fi
 	fi
 }
@@ -677,7 +783,9 @@
 	chmod 0660 "${ROOT}${MY_LOGDIR}"/mysql*
 
 	# Minimal builds don't have the MySQL server
-	if ! use minimal ; then
+	if use_if_iuse minimal ; then
+		:
+	elif ! in_iuse server || use_if_iuse server ; then
 		docinto "support-files"
 		for script in \
 			support-files/my-*.cnf \
@@ -765,7 +873,7 @@
 
 	[[ -z "${MY_DATADIR}" ]] && die "Sorry, unable to find MY_DATADIR"
 
-	if built_with_use ${CATEGORY}/${PN} minimal ; then
+	if built_with_use ${CATEGORY}/${PN} minimal && ! built_with_use ${CATEGORY}/${PN} server ; then
 		die "Minimal builds do NOT include the MySQL server"
 	fi
 





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-07-28  1:58 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-08 17:25 [gentoo-commits] gentoo-x86 commit in eclass: ChangeLog mysql-cmake.eclass mysql-multilib.eclass Brian Evans (grknight)
  -- strict thread matches above, loose matches on Subject: below --
2015-07-28  1:58 Brian Evans (grknight)
2015-01-28 13:48 Brian Evans (grknight)
2014-11-26  0:34 Brian Evans (grknight)
2014-07-31 22:26 Brian Evans (grknight)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox