From 1cfd854753dc82931f2a28aa2a6b220578ef35f7 Mon Sep 17 00:00:00 2001 From: Sergey Popov Date: Wed, 27 Jul 2016 21:55:59 +0300 Subject: 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(+) create mode 100644 net-p2p/retroshare/files/retroshare-0.6.0-c11-compat.patch (limited to 'net-p2p') 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 000000000000..b3d8f3b9f97a --- /dev/null +++ b/net-p2p/retroshare/files/retroshare-0.6.0-c11-compat.patch @@ -0,0 +1,145 @@ +commit aca88308eae16ab67627593c0df2fce7beb02e89 +Author: zeners +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 &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 708897151623..bf71893612b1 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 } -- cgit v1.2.3-65-gdbad