public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/mysql:split-client commit in: dev-db/myodbc/
@ 2015-07-17  2:51 Brian Evans
  0 siblings, 0 replies; 2+ messages in thread
From: Brian Evans @ 2015-07-17  2:51 UTC (permalink / raw
  To: gentoo-commits

commit:     6a0ed90e3734aba30c7adc2957cfa5b9b31436d8
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 17 02:51:02 2015 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Fri Jul 17 02:51:02 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mysql.git/commit/?id=6a0ed90e

Revision bump with new dependencies.  Unfortunately, it is not obvious what to set when client-libs are not set on an installed server instance

 dev-db/myodbc/myodbc-5.2.7-r2.ebuild | 121 +++++++++++++++++++++++++++++++++++
 1 file changed, 121 insertions(+)

diff --git a/dev-db/myodbc/myodbc-5.2.7-r2.ebuild b/dev-db/myodbc/myodbc-5.2.7-r2.ebuild
new file mode 100644
index 0000000..74d5f59
--- /dev/null
+++ b/dev-db/myodbc/myodbc-5.2.7-r2.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/myodbc/myodbc-5.2.7-r1.ebuild,v 1.4 2015/04/19 07:02:28 pacho Exp $
+
+EAPI=5
+inherit cmake-multilib eutils flag-o-matic versionator
+
+MAJOR="$(get_version_component_range 1-2 $PV)"
+MY_PN="mysql-connector-odbc"
+MY_P="${MY_PN}-${PV/_p/r}-src"
+
+DESCRIPTION="ODBC driver for MySQL"
+HOMEPAGE="http://www.mysql.com/products/myodbc/"
+SRC_URI="mirror://mysql/Downloads/Connector-ODBC/${MAJOR}/${MY_P}.tar.gz"
+RESTRICT="primaryuri"
+
+LICENSE="GPL-2"
+SLOT="${MAJOR}"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+# Does not build with mysql-connector-c
+RDEPEND="
+	dev-db/unixODBC[${MULTILIB_USEDEP}]
+	=virtual/libmysqlclient-18[${MULTILIB_USEDEP}]
+	abi_x86_32? (
+		!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
+	)
+	!dev-db/mysql-connector-c
+"
+DEPEND="${RDEPEND}"
+S=${WORKDIR}/${MY_P}
+
+# Careful!
+DRIVER_NAME="${PN}-${SLOT}"
+
+src_prepare() {
+	# Remove Tests
+	sed -i -e "s/ADD_SUBDIRECTORY(test)//" \
+		"${S}/CMakeLists.txt"
+
+	# Fix as-needed on the installer binary
+	echo "TARGET_LINK_LIBRARIES(myodbc-installer odbc)" >> "${S}/installer/CMakeLists.txt"
+
+	# Patch document path so it doesn't install files to /usr
+	epatch "${FILESDIR}/cmake-doc-path.patch" \
+		"${FILESDIR}/${PVR}-cxxlinkage.patch" \
+		"${FILESDIR}/${PV}-mariadb-dynamic-array.patch"
+}
+
+multilib_src_configure() {
+	# The RPM_BUILD flag does nothing except install to /usr/lib64 when "x86_64"
+	# MYSQL_CXX_LINKAGE expects "mysql_config --cxxflags" which doesn't exist on MariaDB
+	mycmakeargs+=(
+		-DMYSQL_CXX_LINKAGE=0
+		-DWITH_UNIXODBC=1
+		-DMYSQLCLIENT_LIB_NAME="libmysqlclient_r.so"
+		-DWITH_DOCUMENTATION_INSTALL_PATH=/usr/share/doc/${PF}
+		-DMYSQL_LIB_DIR="${ROOT}/usr/$(get_libdir)"
+		-DLIB_SUBDIR="$(get_libdir)"
+	)
+	cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+	debug-print-function ${FUNCNAME} "$@"
+
+	dodir /usr/share/${PN}-${SLOT}
+	for i in odbc.ini odbcinst.ini; do
+		einfo "Building $i"
+			sed \
+			-e "s,__PN__,${DRIVER_NAME},g" \
+			-e "s,__PF__,${MAJOR},g" \
+			-e "s,libmyodbc3.so,libmyodbc${SLOT:0:1}a.so,g" \
+			>"${D}"/usr/share/${PN}-${SLOT}/${i} \
+			<"${FILESDIR}"/${i}.m4 \
+			|| die "Failed to build $i"
+	done;
+	mv "${D}/usr/bin/myodbc-installer" \
+		"${D}/usr/bin/myodbc-installer-${MAJOR}" || die "failed to move slotted binary"
+}
+
+pkg_config() {
+
+	[ "${ROOT}" != "/" ] && \
+		die 'Sorry, non-standard ROOT setting is not supported :-('
+
+	local msg='MySQL ODBC driver'
+	local drivers=$(/usr/bin/odbcinst -q -d)
+
+	if echo $drivers | grep -vq "^\[${DRIVER_NAME}\]$" ; then
+		ebegin "Installing ${msg}"
+		/usr/bin/odbcinst -i -d -f /usr/share/${PN}-${SLOT}/odbcinst.ini
+		rc=$?
+		eend $rc
+		[ $rc -ne 0 ] && die
+	else
+		einfo "Skipping already installed ${msg}"
+	fi
+
+	local sources=$(/usr/bin/odbcinst -q -s)
+	msg='sample MySQL ODBC DSN'
+	if echo $sources | grep -vq "^\[${DRIVER_NAME}-test\]$"; then
+		ebegin "Installing ${msg}"
+		/usr/bin/odbcinst -i -s -l -f /usr/share/${PN}-${SLOT}/odbc.ini
+		rc=$?
+		eend $rc
+		[ $rc -ne 0 ] && die
+	else
+		einfo "Skipping already installed ${msg}"
+	fi
+}
+
+pkg_postinst() {
+
+	elog "If this is a new install, please run the following command"
+	elog "to configure the MySQL ODBC drivers and sources:"
+	elog "emerge --config =${CATEGORY}/${PF}"
+	elog "Please note that the driver name used to form the DSN now includes the SLOT."
+	elog "The myodbc-install utility is installed as myodbc-install-${MAJOR}"
+}


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

* [gentoo-commits] proj/mysql:split-client commit in: dev-db/myodbc/
@ 2015-07-17  3:00 Brian Evans
  0 siblings, 0 replies; 2+ messages in thread
From: Brian Evans @ 2015-07-17  3:00 UTC (permalink / raw
  To: gentoo-commits

commit:     1f559641ebd9a9d47cb45dcbf5443709ab10d33e
Author:     Brian Evans <grknight <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 17 03:00:47 2015 +0000
Commit:     Brian Evans <grknight <AT> gentoo <DOT> org>
CommitDate: Fri Jul 17 03:00:47 2015 +0000
URL:        https://gitweb.gentoo.org/proj/mysql.git/commit/?id=1f559641

Include all revisions for virtual/libmysqlclient-18

 dev-db/myodbc/myodbc-5.2.7-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dev-db/myodbc/myodbc-5.2.7-r2.ebuild b/dev-db/myodbc/myodbc-5.2.7-r2.ebuild
index 74d5f59..66728a9 100644
--- a/dev-db/myodbc/myodbc-5.2.7-r2.ebuild
+++ b/dev-db/myodbc/myodbc-5.2.7-r2.ebuild
@@ -22,7 +22,7 @@ IUSE=""
 # Does not build with mysql-connector-c
 RDEPEND="
 	dev-db/unixODBC[${MULTILIB_USEDEP}]
-	=virtual/libmysqlclient-18[${MULTILIB_USEDEP}]
+	~virtual/libmysqlclient-18[${MULTILIB_USEDEP}]
 	abi_x86_32? (
 		!app-emulation/emul-linux-x86-db[-abi_x86_32(-)]
 	)


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

end of thread, other threads:[~2015-07-17  3:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-17  2:51 [gentoo-commits] proj/mysql:split-client commit in: dev-db/myodbc/ Brian Evans
  -- strict thread matches above, loose matches on Subject: below --
2015-07-17  3:00 Brian Evans

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