commit:     c088dec53c87470f6eb3e6afd62801f5017fb914
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 16 13:52:10 2017 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Sep 16 13:59:08 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c088dec5

sci-chemistry/dssp: Fix boost TR1 header include

Closes: https://bugs.gentoo.org/630776
Package-Manager: Portage-2.3.8, Repoman-2.3.3

 sci-chemistry/dssp/dssp-2.2.1-r1.ebuild            | 28 ++++----
 .../files/dssp-2.2.1-boost-1.65-tr1-removal.patch  | 82 ++++++++++++++++++++++
 2 files changed, 97 insertions(+), 13 deletions(-)

diff --git a/sci-chemistry/dssp/dssp-2.2.1-r1.ebuild 
b/sci-chemistry/dssp/dssp-2.2.1-r1.ebuild
index a50e602ad32..b660e9ef3c9 100644
--- a/sci-chemistry/dssp/dssp-2.2.1-r1.ebuild
+++ b/sci-chemistry/dssp/dssp-2.2.1-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=5
+EAPI=6
 
-inherit eutils multilib toolchain-funcs
+inherit toolchain-funcs
 
 DESCRIPTION="The protein secondary structure standard"
 HOMEPAGE="http://swift.cmbi.ru.nl/gv/dssp/";
@@ -17,17 +17,19 @@ IUSE=""
 RDEPEND="dev-libs/boost:=[threads]"
 DEPEND="${RDEPEND}"
 
-src_prepare() {
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.1.0-gentoo.patch
+       "${FILESDIR}"/${PN}-2.2.1-boost-1.65-tr1-removal.patch
+)
+
+src_configure() {
        tc-export CXX
 
-       cat >> make.config <<- EOF
-       BOOST_LIB_SUFFIX = -mt
-       BOOST_LIB_DIR = "${EPREFIX}/usr/$(get_libdir)"
-       BOOST_INC_DIR = "${EPREFIX}/usr/include"
+       cat >> make.config <<- EOF || die
+               BOOST_LIB_SUFFIX = -mt
+               BOOST_LIB_DIR = "${EPREFIX}/usr/$(get_libdir)"
+               BOOST_INC_DIR = "${EPREFIX}/usr/include"
        EOF
-
-       epatch \
-               "${FILESDIR}"/${PN}-2.1.0-gentoo.patch
 }
 
 src_install() {
@@ -36,8 +38,8 @@ src_install() {
        doman doc/mkdssp.1
        dodoc README.txt changelog
 
-       cat >> "${T}"/30-${PN} <<- EOF
-       DSSP="${EPREFIX}"/usr/bin/${PN}
+       cat >> "${T}"/30-${PN} <<- EOF || die
+               DSSP="${EPREFIX}"/usr/bin/${PN}
        EOF
        doenvd "${T}"/30-${PN}
 }

diff --git a/sci-chemistry/dssp/files/dssp-2.2.1-boost-1.65-tr1-removal.patch 
b/sci-chemistry/dssp/files/dssp-2.2.1-boost-1.65-tr1-removal.patch
new file mode 100644
index 00000000000..4eee6b56734
--- /dev/null
+++ b/sci-chemistry/dssp/files/dssp-2.2.1-boost-1.65-tr1-removal.patch
@@ -0,0 +1,82 @@
+--- a/src/dssp.cpp
++++ b/src/dssp.cpp
+@@ -73,7 +73,7 @@
+ 
+       double alpha;
+       char chirality;
+-      tr1::tie(alpha,chirality) = residue.Alpha();
++      boost::tie(alpha,chirality) = residue.Alpha();
+       
+       uint32 bp[2] = {};
+       char bridgelabel[2] = { ' ', ' ' };
+--- a/src/primitives-3d.cpp
++++ b/src/primitives-3d.cpp
+@@ -153,7 +153,7 @@
+ 
+ // --------------------------------------------------------------------
+ 
+-tr1::tuple<double,MPoint> QuaternionToAngleAxis(MQuaternion q)
++boost::tuple<double,MPoint> QuaternionToAngleAxis(MQuaternion q)
+ {
+       if (q.R_component_1() > 1)
+               q = Normalize(q);
+@@ -169,7 +169,7 @@
+       
+       MPoint axis(q.R_component_2() / s, q.R_component_3() / s, 
q.R_component_4() / s);
+ 
+-      return tr1::make_tuple(angle, axis);
++      return boost::make_tuple(angle, axis);
+ }
+ 
+ MPoint CenterPoints(vector<MPoint>& points)
+--- a/src/primitives-3d.h
++++ b/src/primitives-3d.h
+@@ -9,7 +9,7 @@
+ 
+ #include <vector>
+ 
+-#include <boost/tr1/tuple.hpp>
++#include <boost/tuple/tuple.hpp>
+ #include <boost/math/quaternion.hpp>
+ 
+ typedef boost::math::quaternion<double> MQuaternion;
+@@ -64,7 +64,7 @@
+ 
+ MQuaternion Normalize(MQuaternion q);
+ 
+-std::tr1::tuple<double,MPoint> QuaternionToAngleAxis(MQuaternion q);
++boost::tuple<double,MPoint> QuaternionToAngleAxis(MQuaternion q);
+ MPoint Centroid(std::vector<MPoint>& points);
+ MPoint CenterPoints(std::vector<MPoint>& points);
+ MQuaternion AlignPoints(const std::vector<MPoint>& a, const 
std::vector<MPoint>& b);
+--- a/src/structure.cpp
++++ b/src/structure.cpp
+@@ -544,7 +544,7 @@
+       return result;
+ }
+ 
+-tr1::tuple<double,char> MResidue::Alpha() const
++boost::tuple<double,char> MResidue::Alpha() const
+ {
+       double alhpa = 360;
+       char chirality = ' ';
+@@ -558,7 +558,7 @@
+               else
+                       chirality = '+';
+       }
+-      return tr1::make_tuple(alhpa, chirality);
++      return boost::make_tuple(alhpa, chirality);
+ }
+ 
+ double MResidue::Kappa() const
+--- a/src/structure.h
++++ b/src/structure.h
+@@ -168,7 +168,7 @@
+ 
+       double                          Phi() const;
+       double                          Psi() const;
+-      std::tr1::tuple<double,char>
++      boost::tuple<double,char>
+                                               Alpha() const;
+       double                          Kappa() const;
+       double                          TCO() const;

Reply via email to