summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2004-05-13 07:55:16 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2004-05-13 07:55:16 +0000
commitfff78585fc3db465ba36eb6b0df8696e134b72e8 (patch)
tree34b9986986609ddc0743a5d0636cc90f296e733c /dev-db/mysql++
parentoops. SSP is broken. (Manifest recommit) (diff)
downloadgentoo-2-fff78585fc3db465ba36eb6b0df8696e134b72e8.tar.gz
gentoo-2-fff78585fc3db465ba36eb6b0df8696e134b72e8.tar.bz2
gentoo-2-fff78585fc3db465ba36eb6b0df8696e134b72e8.zip
fix bug #50442 in -r5
Diffstat (limited to 'dev-db/mysql++')
-rw-r--r--dev-db/mysql++/ChangeLog8
-rw-r--r--dev-db/mysql++/files/digest-mysql++-1.7.9-r56
-rw-r--r--dev-db/mysql++/files/mysql++-1.7.9-r5_gcc333.patch19
-rw-r--r--dev-db/mysql++/mysql++-1.7.9-r5.ebuild105
4 files changed, 137 insertions, 1 deletions
diff --git a/dev-db/mysql++/ChangeLog b/dev-db/mysql++/ChangeLog
index 2a74852e7c75..70399ac7029e 100644
--- a/dev-db/mysql++/ChangeLog
+++ b/dev-db/mysql++/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-db/mysql++
# Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql++/ChangeLog,v 1.17 2004/05/04 22:39:10 kloeri Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql++/ChangeLog,v 1.18 2004/05/13 07:55:16 robbat2 Exp $
+
+*mysql++-1.7.9-r5 (13 May 2004)
+
+ 13 May 2004; Robin H. Johnson <robbat2@gentoo.org> mysql++-1.7.9-r5.ebuild,
+ files/mysql++-1.7.9-r5_gcc333.patch:
+ fix bug #50442 in -r5.
05 May 2004; Bryan Østergaard <kloeri@gentoo.org> mysql++-1.7.9-r4.ebuild:
Stable on alpha.
diff --git a/dev-db/mysql++/files/digest-mysql++-1.7.9-r5 b/dev-db/mysql++/files/digest-mysql++-1.7.9-r5
new file mode 100644
index 000000000000..350f469fb3e5
--- /dev/null
+++ b/dev-db/mysql++/files/digest-mysql++-1.7.9-r5
@@ -0,0 +1,6 @@
+MD5 1312fb4e33dcce07fac5fa9c2ac801f7 mysql++-1.7.9.tar.gz 749476
+MD5 118d30c7ffd7e5ad49b78415acaac0bb mysql++-gcc-3.0.patch.gz 21357
+MD5 f7358e00675fde37caa7a4aa1baa48d1 mysql++-gcc-3.2.patch.gz 2451
+MD5 51ae8cfd340cdf4a2d08d04ee3e01296 mysql++-gcc-3.2.2.patch.gz 416
+MD5 c80d705e300b76ab07e10344eb8f19d3 patch_gcc_3.3.gz 19755
+MD5 de17e2c7f20b5bad69ea677ce614a1ca mysqlplus-gcc-3.4.patch.gz 3888
diff --git a/dev-db/mysql++/files/mysql++-1.7.9-r5_gcc333.patch b/dev-db/mysql++/files/mysql++-1.7.9-r5_gcc333.patch
new file mode 100644
index 000000000000..98780e2e4f5e
--- /dev/null
+++ b/dev-db/mysql++/files/mysql++-1.7.9-r5_gcc333.patch
@@ -0,0 +1,19 @@
+*** mysql++-1.7.9/sqlplusint/type_info1.hh Sat May 19 20:44:48 2001
+--- mysql++-1.7.9-patched/sqlplusint/type_info1.hh Sat May 1 16:08:18 2004
+***************
+*** 28,34 ****
+ const bool _default;
+ mysql_ti_sql_type_info (const mysql_ti_sql_type_info &b); // can't do
+ mysql_ti_sql_type_info& operator=(const mysql_ti_sql_type_info &b); // " "
+! mysql_ti_sql_type_info () {}
+ // OEP - didn't init _base_type and _default mysql_ti_sql_type_info () {}
+ // all private, only mysql_type_info can
+ // create because there *must* be only one copy
+--- 28,34 ----
+ const bool _default;
+ mysql_ti_sql_type_info (const mysql_ti_sql_type_info &b); // can't do
+ mysql_ti_sql_type_info& operator=(const mysql_ti_sql_type_info &b); // " "
+! mysql_ti_sql_type_info () : _base_type(0), _default(false) {}
+ // OEP - didn't init _base_type and _default mysql_ti_sql_type_info () {}
+ // all private, only mysql_type_info can
+ // create because there *must* be only one copy
diff --git a/dev-db/mysql++/mysql++-1.7.9-r5.ebuild b/dev-db/mysql++/mysql++-1.7.9-r5.ebuild
new file mode 100644
index 000000000000..213f33bb6db0
--- /dev/null
+++ b/dev-db/mysql++/mysql++-1.7.9-r5.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2004 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql++/mysql++-1.7.9-r5.ebuild,v 1.1 2004/05/13 07:55:16 robbat2 Exp $
+
+inherit gcc eutils gnuconfig
+
+DESCRIPTION="C++ API interface to the MySQL database"
+# This is the download page but includes links to other places
+HOMEPAGE="http://www.mysql.org/downloads/api-mysql++.html"
+SRC_URI_BASE="mirror://mysql/Downloads/${PN}"
+SRC_URI="
+ ${SRC_URI_BASE}/${P}.tar.gz
+ ${SRC_URI_BASE}/${PN}-gcc-3.0.patch.gz
+ ${SRC_URI_BASE}/${PN}-gcc-3.2.patch.gz
+ ${SRC_URI_BASE}/${PN}-gcc-3.2.2.patch.gz
+ ${SRC_URI_BASE}/patch_gcc_3.3.gz
+ ${SRC_URI_BASE}/mysqlplus-gcc-3.4.patch.gz
+ "
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~alpha ~hppa ~mips ~sparc ~ppc ~amd64"
+
+DEPEND=">=dev-db/mysql-3.23.49"
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ EPATCH_OPTS="-p1 -d ${S}"
+ if [ `gcc-major-version` -eq 3 ] ; then
+ if [ `gcc-minor-version` -ne 3 ] ; then
+ EPATCH_SINGLE_MSG="Patching for gcc 3.0..." \
+ epatch ${DISTDIR}/mysql++-gcc-3.0.patch.gz
+ if [ `gcc-minor-version` -eq 2 ] ; then
+ EPATCH_SINGLE_MSG="Patching for gcc 3.2..." \
+ epatch ${DISTDIR}/mysql++-gcc-3.2.patch.gz
+ if [ `gcc-micro-version` -ge 2 ] ; then
+ EPATCH_SINGLE_MSG="Patching for gcc >=3.2.2..." \
+ epatch ${DISTDIR}/mysql++-gcc-3.2.2.patch.gz
+ fi
+ elif [ `gcc-minor-version` -eq 4 ] ; then
+ EPATCH_SINGLE_MSG="Patching for gcc 3.4 (patch for 3.2 needed first)..." \
+ epatch ${DISTDIR}/mysql++-gcc-3.2.patch.gz
+ EPATCH_SINGLE_MSG="Patching for gcc 3.4..." \
+ epatch ${DISTDIR}/mysqlplus-gcc-3.4.patch.gz
+ fi
+ # Doesn't work for gcc-3.3
+ EPATCH_SINGLE_MSG="Patching to fix some warnings and errors..." \
+ epatch ${FILESDIR}/${P}-gcc_throw.patch
+ # This is included in mysql++-gcc-3.2.2.patch.gz
+ #EPATCH_SINGLE_MSG="Patch for const char* error" \
+ elif [ `gcc-minor-version` -eq 3 ]; then
+ mv ${S}/sqlplusint/Makefile.in ${S}/sqlplusint/Makefile.in.old
+ EPATCH_SINGLE_MSG="Patching for gcc 3.3..." \
+ epatch ${DISTDIR}/patch_gcc_3.3.gz
+ if [ `gcc-micro-version` -eq 3 ]; then
+ EPATCH_SINGLE_MSG="Patching for gcc 3.3.3..." \
+ epatch ${FILESDIR}/${P}-r5_gcc333.patch
+ fi
+ fi
+ #epatch ${FILESDIR}/${P}-mysql4-gcc3.patch
+ else
+ EPATCH_SINGLE_MSG="Patch for const char* error" \
+ epatch ${FILESDIR}/${P}-mysql4-gcc295.patch
+ fi
+ EPATCH_SINGLE_MSG="Fixing examples directory bug..." \
+ epatch ${FILESDIR}/${P}_example.patch
+
+ # add undef_short to list of include files for installation
+ epatch ${FILESDIR}/${P}-missing.patch
+}
+
+src_compile() {
+ use amd64 && gnuconfig_update
+ local myconf
+ # we want C++ exceptions turned on
+ myconf="--enable-exceptions"
+ # We do this because of the large number of header files installed to the include directory
+ # This is a breakage compared to previous versions that installed straight to /usr/include
+ myconf="${myconf} --includedir=/usr/include/mysql++"
+ # not including the directives to where MySQL is because it seems to find it
+ # just fine without
+ # force the cflags into place otherwise they get totally ignored by configure
+ CFLAGS="${CFLAGS}" CXXFLAGS="${CFLAGS} ${CXXFLAGS}" \
+ econf \
+ --enable-exceptions \
+ --includedir=/usr/include/mysql++ || die "econf failed"
+
+ emake || die "unable to make"
+}
+
+src_install() {
+ make DESTDIR=${D} install || die
+ # install the docs and HTML pages
+ dodoc README LGPL
+ dodoc doc/*
+ dohtml doc/man-html/*
+ prepalldocs
+ ewarn "The MySQL++ include directory has changed compared to previous versions"
+ ewarn "It was previously /usr/include, but now it is /usr/include/mysql++"
+}
+
+pkg_postinst() {
+ ewarn "The MySQL++ include directory has changed compared to previous versions"
+ ewarn "It was previously /usr/include, but now it is /usr/include/mysql++"
+}