commit:     1cfd854753dc82931f2a28aa2a6b220578ef35f7
Author:     Sergey Popov <pinkbyte <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 27 18:55:59 2016 +0000
Commit:     Sergey Popov <pinkbyte <AT> gentoo <DOT> org>
CommitDate: Wed Jul 27 20:59:59 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1cfd8547

net-p2p/retroshare: backport upstream fixes for building with Qt5 and new C++ 
ABI

Gentoo-Bug: 584832

Package-Manager: portage-2.3.0

 .../files/retroshare-0.6.0-c11-compat.patch        | 145 +++++++++++++++++++++
 net-p2p/retroshare/retroshare-0.6.0.ebuild         |   3 +
 2 files changed, 148 insertions(+)

diff --git a/net-p2p/retroshare/files/retroshare-0.6.0-c11-compat.patch 
b/net-p2p/retroshare/files/retroshare-0.6.0-c11-compat.patch
new file mode 100644
index 0000000..b3d8f3b
--- /dev/null
+++ b/net-p2p/retroshare/files/retroshare-0.6.0-c11-compat.patch
@@ -0,0 +1,145 @@
+commit aca88308eae16ab67627593c0df2fce7beb02e89
+Author: zeners <ze...@sbg.at>
+Date:   Tue Mar 29 21:22:14 2016 +0200
+
+    compatible to g++11 / QT5
+    
+    method suggested by cyril
+
+diff --git a/libretroshare/src/pqi/pqiqosstreamer.cc 
b/libretroshare/src/pqi/pqiqosstreamer.cc
+index 898f2b5..fc0dc20 100644
+--- a/libretroshare/src/pqi/pqiqosstreamer.cc
++++ b/libretroshare/src/pqi/pqiqosstreamer.cc
+@@ -25,6 +25,8 @@
+ 
+ #include "pqiqosstreamer.h"
+ 
++const float    pqiQoSstreamer::PQI_QOS_STREAMER_ALPHA      = 2.0f ;
++
+ pqiQoSstreamer::pqiQoSstreamer(PQInterface *parent, RsSerialiser *rss, const 
RsPeerId& peerid, BinInterface *bio_in, int bio_flagsin)
+       : pqithreadstreamer(parent,rss,peerid,bio_in,bio_flagsin), 
pqiQoS(PQI_QOS_STREAMER_MAX_LEVELS, PQI_QOS_STREAMER_ALPHA)
+ {
+diff --git a/libretroshare/src/pqi/pqiqosstreamer.h 
b/libretroshare/src/pqi/pqiqosstreamer.h
+index b85ac32..574ba94 100644
+--- a/libretroshare/src/pqi/pqiqosstreamer.h
++++ b/libretroshare/src/pqi/pqiqosstreamer.h
+@@ -34,7 +34,7 @@ class pqiQoSstreamer: public pqithreadstreamer, public pqiQoS
+               pqiQoSstreamer(PQInterface *parent, RsSerialiser *rss, const 
RsPeerId& peerid, BinInterface *bio_in, int bio_flagsin);
+ 
+               static const uint32_t PQI_QOS_STREAMER_MAX_LEVELS =  10 ;
+-              static const float    PQI_QOS_STREAMER_ALPHA      = 2.0 ;
++        static const float    PQI_QOS_STREAMER_ALPHA ;
+ 
+               virtual void locked_storeInOutputQueue(void *ptr,int priority) ;
+               virtual int locked_out_queue_size() const { return 
_total_item_count ; }
+diff --git a/libretroshare/src/retroshare/rsreputations.h 
b/libretroshare/src/retroshare/rsreputations.h
+index 484aabb..8db42ee 100644
+--- a/libretroshare/src/retroshare/rsreputations.h
++++ b/libretroshare/src/retroshare/rsreputations.h
+@@ -31,8 +31,8 @@
+ class RsReputations
+ {
+ public:
+-      static const float REPUTATION_THRESHOLD_ANTI_SPAM = 1.4f ;
+-      static const float REPUTATION_THRESHOLD_DEFAULT   = 1.0f ;
++        static const float REPUTATION_THRESHOLD_ANTI_SPAM;
++        static const float REPUTATION_THRESHOLD_DEFAULT;
+         
+       // This is the interface file for the reputation system
+       //
+diff --git a/libretroshare/src/rsserver/p3face-server.cc 
b/libretroshare/src/rsserver/p3face-server.cc
+index 746ebac..b769136 100644
+--- a/libretroshare/src/rsserver/p3face-server.cc
++++ b/libretroshare/src/rsserver/p3face-server.cc
+@@ -69,6 +69,10 @@ static double getCurrentTS()
+         return cts;
+ }
+ 
++const double RsServer::minTimeDelta = 0.1; // 25;
++const double RsServer::maxTimeDelta = 0.5;
++const double RsServer::kickLimit = 0.15;
++
+ 
+ RsServer::RsServer()
+       : coreMutex("RsServer")
+diff --git a/libretroshare/src/rsserver/p3face.h 
b/libretroshare/src/rsserver/p3face.h
+index 23efa58..51f05a5 100644
+--- a/libretroshare/src/rsserver/p3face.h
++++ b/libretroshare/src/rsserver/p3face.h
+@@ -194,9 +194,9 @@ class RsServer: public RsControl, public RsTickingThread
+     double mAvgTickRate ;
+     double mTimeDelta ;
+ 
+-    static const double minTimeDelta = 0.1; // 25;
+-    static const double maxTimeDelta = 0.5;
+-    static const double kickLimit = 0.15;
++    static const double minTimeDelta; // 25;
++    static const double maxTimeDelta;
++    static const double kickLimit;
+ };
+ 
+ /* Helper function to convert windows paths
+diff --git a/libretroshare/src/services/p3gxsreputation.cc 
b/libretroshare/src/services/p3gxsreputation.cc
+index dd7a46d..b78ca1f 100644
+--- a/libretroshare/src/services/p3gxsreputation.cc
++++ b/libretroshare/src/services/p3gxsreputation.cc
+@@ -303,6 +303,10 @@ void p3GxsReputation::updateActiveFriends()
+ 
+ }
+ 
++const float RsReputations::REPUTATION_THRESHOLD_ANTI_SPAM = 1.4f ;
++const float RsReputations::REPUTATION_THRESHOLD_DEFAULT   = 1.0f ;
++
++
+ static RsReputations::Opinion safe_convert_uint32t_to_opinion(uint32_t op)
+ {
+       return RsReputations::Opinion(std::min((uint32_t)op,UPPER_LIMIT)) ;
+diff --git a/retroshare-gui/src/gui/elastic/node.cpp 
b/retroshare-gui/src/gui/elastic/node.cpp
+index 7755172..bc33151 100644
+--- a/retroshare-gui/src/gui/elastic/node.cpp
++++ b/retroshare-gui/src/gui/elastic/node.cpp
+@@ -87,6 +87,12 @@ Node::Node(const std::string& 
node_string,GraphWidget::NodeType type,GraphWidget
+               _auth = GraphWidget::ELASTIC_NODE_AUTH_FULL ;
+ }
+ 
++const float Node::MASS_FACTOR = 10 ;
++const float Node::FRICTION_FACTOR = 10.8f ;
++const float Node::REPULSION_FACTOR = 4;
++const float Node::NODE_DISTANCE = 130.0f ;
++
++
+ void Node::addEdge(Edge *edge)
+ {
+     edgeList << edge;
+diff --git a/retroshare-gui/src/gui/elastic/node.h 
b/retroshare-gui/src/gui/elastic/node.h
+index d7bcd5f..13c717b 100644
+--- a/retroshare-gui/src/gui/elastic/node.h
++++ b/retroshare-gui/src/gui/elastic/node.h
+@@ -118,10 +118,10 @@ private:
+        RsPeerId _ssl_id ;
+        RsPgpId _gpg_id ;
+ 
+-       static const float MASS_FACTOR = 10 ;
+-       static const float FRICTION_FACTOR = 10.8 ;
+-       static const float REPULSION_FACTOR = 4 ;
+-       static const float NODE_DISTANCE = 130.0 ;
++     static const float MASS_FACTOR;
++     static const float FRICTION_FACTOR;
++     static const float REPULSION_FACTOR;
++     static const float NODE_DISTANCE;
+ };
+ 
+ #endif
+diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp 
b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp
+index fe2e1aa..a3381b2 100644
+--- a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp
++++ b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp
+@@ -1565,7 +1565,7 @@ void 
GxsForumThreadWidget::setMsgReadStatus(QList<QTreeWidgetItem*> &rows, bool
+                       // LIKE THIS BELOW...
+                       //std::string grpId = (*Row)->data(COLUMN_THREAD_DATA, 
ROLE_THREAD_GROUPID).toString().toStdString();
+ 
+-                      RsGxsGrpMsgIdPair msgPair = std::make_pair(groupId(), 
msgId);
++            RsGxsGrpMsgIdPair msgPair = std::make_pair(groupId(), 
RsGxsMessageId(msgId));
+ 
+                       uint32_t token;
+                       rsGxsForums->setMessageReadStatus(token, msgPair, read);

diff --git a/net-p2p/retroshare/retroshare-0.6.0.ebuild 
b/net-p2p/retroshare/retroshare-0.6.0.ebuild
index 7088971..bf71893 100644
--- a/net-p2p/retroshare/retroshare-0.6.0.ebuild
+++ b/net-p2p/retroshare/retroshare-0.6.0.ebuild
@@ -78,6 +78,8 @@ DEPEND="${RDEPEND}
 
 S="${WORKDIR}/RetroShare-${PV}"
 
+PATCHES=( "${FILESDIR}/${P}-c11-compat.patch" )
+
 src_prepare() {
        local dir
 
@@ -99,6 +101,7 @@ src_prepare() {
                retroshare-gui/src/retroshare-gui.pro \
                retroshare-nogui/src/retroshare-nogui.pro || die 'sed on 
retroshare-gui/src/retroshare-gui.pro failed'
 
+       epatch ${PATCHES[@]}
        eapply_user
 }
 

Reply via email to