summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <grknight@gentoo.org>2015-09-16 22:36:55 -0400
committerBrian Evans <grknight@gentoo.org>2015-09-16 22:36:55 -0400
commitdcae41198838982fd27ad3e8496f5906495e73c1 (patch)
tree7534a19145cb4b38b8e5b1d53088929c83984889
parentmysql-multilib.eclass: Add ABI warning when switching between providers of cl... (diff)
downloadgentoo-dcae41198838982fd27ad3e8496f5906495e73c1.tar.gz
gentoo-dcae41198838982fd27ad3e8496f5906495e73c1.tar.bz2
gentoo-dcae41198838982fd27ad3e8496f5906495e73c1.zip
dev-db/mysql-connector-c: Revbump to add an ABI rebuild message for the user
This message should be displayed when swapping libmysqlclient providers as the ABI may change, but the API should be the same Package-Manager: portage-2.2.20.1
-rw-r--r--dev-db/mysql-connector-c/mysql-connector-c-6.1.6-r2.ebuild80
1 files changed, 80 insertions, 0 deletions
diff --git a/dev-db/mysql-connector-c/mysql-connector-c-6.1.6-r2.ebuild b/dev-db/mysql-connector-c/mysql-connector-c-6.1.6-r2.ebuild
new file mode 100644
index 000000000000..f77fcf5e3f8c
--- /dev/null
+++ b/dev-db/mysql-connector-c/mysql-connector-c-6.1.6-r2.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+CMAKE_MIN_VERSION="2.8.12"
+
+inherit cmake-multilib eutils multilib
+
+MULTILIB_WRAPPED_HEADERS+=(
+ /usr/include/mysql/my_config.h
+)
+
+# wrap the config script
+MULTILIB_CHOST_TOOLS=( /usr/bin/mysql_config )
+
+DESCRIPTION="C client library for MariaDB/MySQL"
+HOMEPAGE="https://dev.mysql.com/downloads/connector/c/"
+LICENSE="GPL-2"
+
+SRC_URI="mirror://mysql/Downloads/Connector-C/${P}-src.tar.gz"
+S="${WORKDIR}/${P}-src"
+KEYWORDS="~amd64 ~ia64 ~ppc64 ~x86"
+
+SUBSLOT="18"
+SLOT="0/${SUBSLOT}"
+IUSE="+ssl static-libs"
+
+CDEPEND="
+ sys-libs/zlib:=[${MULTILIB_USEDEP}]
+ ssl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
+ "
+RDEPEND="${CDEPEND}
+ !dev-db/mysql[client-libs(+)]
+ !dev-db/mysql-cluster[client-libs(+)]
+ !dev-db/mariadb[client-libs(+)]
+ !dev-db/mariadb-connector-c[mysqlcompat]
+ !dev-db/mariadb-galera[client-libs(+)]
+ !dev-db/percona-server[client-libs(+)]
+ "
+DEPEND="${CDEPEND}"
+
+DOCS=( README Docs/ChangeLog )
+
+src_prepare() {
+ epatch "${FILESDIR}/openssl-cmake-detection.patch" \
+ "${FILESDIR}/conn-c-includes.patch" \
+ "${FILESDIR}/mysql_com.patch"
+ epatch_user
+}
+
+multilib_src_configure() {
+ mycmakeargs+=(
+ -DINSTALL_LAYOUT=RPM
+ -DINSTALL_LIBDIR=$(get_libdir)
+ -DWITH_DEFAULT_COMPILER_OPTIONS=OFF
+ -DWITH_DEFAULT_FEATURE_SET=OFF
+ -DENABLED_LOCAL_INFILE=ON
+ -DMYSQL_UNIX_ADDR="${EPREFIX}/var/run/mysqld/mysqld.sock"
+ -DWITH_ZLIB=system
+ -DENABLE_DTRACE=OFF
+ -DWITH_SSL=$(usex ssl system bundled)
+ )
+ cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+ if ! use static-libs ; then
+ find "${ED}" -name "*.a" -delete || die
+ fi
+}
+
+pkg_preinst() {
+ if [[ -z ${REPLACING_VERSIONS} && -e "${EROOT}usr/$(get_libdir)/libmysqlclient.so" ]] ; then
+ elog "Due to ABI changes when switching between different client libraries,"
+ elog "revdep-rebuild must find and rebuild all packages linking to libmysqlclient."
+ elog "Please run: revdep-rebuild --library libmysqlclient.so.${SUBSLOT}"
+ ewarn "Failure to run revdep-rebuild may cause issues with other programs or libraries"
+ fi
+}