commit:     dcae41198838982fd27ad3e8496f5906495e73c1
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 17 02:36:55 2015 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Thu Sep 17 02:36:55 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dcae4119

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

 .../mysql-connector-c-6.1.6-r2.ebuild              | 80 ++++++++++++++++++++++
 1 file changed, 80 insertions(+)

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 0000000..f77fcf5
--- /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
+}

Reply via email to