diff options
author | Sergey Popov <pinkbyte@gentoo.org> | 2014-09-06 11:06:53 +0000 |
---|---|---|
committer | Sergey Popov <pinkbyte@gentoo.org> | 2014-09-06 11:06:53 +0000 |
commit | 4d6860c7f383ff91263cfe19133ec9ccadd47dd1 (patch) | |
tree | 71e723ce5a0a8a7f6fec6d6c0afb805a90d4eee1 /dev-libs | |
parent | Bump, add docs. (diff) | |
download | gentoo-2-4d6860c7f383ff91263cfe19133ec9ccadd47dd1.tar.gz gentoo-2-4d6860c7f383ff91263cfe19133ec9ccadd47dd1.tar.bz2 gentoo-2-4d6860c7f383ff91263cfe19133ec9ccadd47dd1.zip |
Make dependency on dev-libs/db more strict, forbid linking to incompatible versions of it, wrt bug #519248. Thanks to Jonathan Vasquez <jvasquez1011 AT gmail.com> for discovering this issue and Stefan Talpalaru <stefantalpalaru AT yahoo.com> for draft of proposed solution
(Portage version: 2.2.12/cvs/Linux x86_64, signed Manifest commit with key 0x1F357D42)
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/Ice/ChangeLog | 8 | ||||
-rw-r--r-- | dev-libs/Ice/Ice-3.5.1.ebuild | 26 |
2 files changed, 28 insertions, 6 deletions
diff --git a/dev-libs/Ice/ChangeLog b/dev-libs/Ice/ChangeLog index 6173665f4754..f5a98e374833 100644 --- a/dev-libs/Ice/ChangeLog +++ b/dev-libs/Ice/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-libs/Ice # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/Ice/ChangeLog,v 1.34 2014/03/31 20:38:16 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/Ice/ChangeLog,v 1.35 2014/09/06 11:06:53 pinkbyte Exp $ + + 06 Sep 2014; Sergey Popov <pinkbyte@gentoo.org> Ice-3.5.1.ebuild: + Make dependency on dev-libs/db more strict, forbid linking to incompatible + versions of it, wrt bug #519248. Thanks to Jonathan Vasquez <jvasquez1011 AT + gmail.com> for discovering this issue and Stefan Talpalaru <stefantalpalaru + AT yahoo.com> for draft of proposed solution 31 Mar 2014; Michał Górny <mgorny@gentoo.org> Ice-3.5.1.ebuild: Add support for the new PyPy slotting. diff --git a/dev-libs/Ice/Ice-3.5.1.ebuild b/dev-libs/Ice/Ice-3.5.1.ebuild index d0dd78f3b30c..d0fb96f7d1c8 100644 --- a/dev-libs/Ice/Ice-3.5.1.ebuild +++ b/dev-libs/Ice/Ice-3.5.1.ebuild @@ -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/dev-libs/Ice/Ice-3.5.1.ebuild,v 1.8 2014/03/31 20:38:16 mgorny Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/Ice/Ice-3.5.1.ebuild,v 1.9 2014/09/06 11:06:53 pinkbyte Exp $ EAPI=5 @@ -16,13 +16,17 @@ SRC_URI="http://www.zeroc.com/download/Ice/$(get_version_component_range 1-2)/${ doc? ( http://www.zeroc.com/download/Ice/$(get_version_component_range 1-2)/${P}.pdf )" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 ~arm ~ia64 x86 ~x86-linux ~x64-macos" +KEYWORDS="~amd64 ~arm ~ia64 ~x86 ~x86-linux ~x64-macos" IUSE="doc examples +ncurses mono python ruby test debug" RDEPEND=">=dev-libs/expat-2.0.1 >=app-arch/bzip2-1.0.5 >=dev-libs/openssl-0.9.8o:0 - <sys-libs/db-6.0[cxx] + || ( + sys-libs/db:5.3[cxx] + sys-libs/db:5.1[cxx] + sys-libs/db:4.8[cxx] + ) ~dev-cpp/libmcpp-2.7.2 python? ( ${PYTHON_DEPS} ) ruby? ( $(ruby_implementation_depend ruby19) ) @@ -92,6 +96,17 @@ src_prepare() { fi } +suitable_db_version() { + local tested_slots="5.3 5.1 4.8" + for ver in ${tested_slots}; do + if [[ -n $(db_findver sys-libs/db:${ver}) ]]; then + echo ${ver} + return 0 + fi + done + die "No suitable BerkDB versions found, aborting" +} + src_configure() { MAKE_RULES="prefix=\"${ED}/usr\" install_docdir=\"${ED}/usr/share/doc/${PF}\" @@ -103,13 +118,14 @@ src_configure() { use ncurses && OPTIONS="${MAKE_RULES} USE_READLINE=yes" || MAKE_RULES="${MAKE_RULES} USE_READLINE=no" use debug && OPTIONS"${MAKE_RULES} OPTIMIZE=no" || MAKE_RULES="${MAKE_RULES} OPTIMIZE=yes" - MAKE_RULES="${MAKE_RULES} DB_FLAGS=-I$(db_includedir)" + local BERKDB_VERSION="$(suitable_db_version)" + MAKE_RULES="${MAKE_RULES} DB_FLAGS=-I$(db_includedir ${BERKDB_VERSION})" sed -i \ -e "s|g++|$(tc-getCXX)|" \ -e "s|\(CFLAGS[[:space:]]*=\)|\1 ${CFLAGS}|" \ -e "s|\(CXXFLAGS[[:space:]]*=\)|\1 ${CXXFLAGS}|" \ -e "s|\(LDFLAGS[[:space:]]*=\)|\1 ${LDFLAGS}|" \ - -e "s|\(DB_LIBS[[:space:]]*=\) \-ldb_cxx|\1 -ldb_cxx-$(db_findver sys-libs/db)|" \ + -e "s|\(DB_LIBS[[:space:]]*=\) \-ldb_cxx|\1 -ldb_cxx-$(db_findver sys-libs/db:${BERKDB_VERSION})|" \ cpp/config/Make.rules{,.Linux} py/config/Make.rules || die "sed failed" if use python ; then |