diff options
8 files changed, 845 insertions, 0 deletions
diff --git a/packages/net-p2p/retroshare/files/cflags.patch b/packages/net-p2p/retroshare/files/cflags.patch new file mode 100644 index 0000000..ef76ad7 --- /dev/null +++ b/packages/net-p2p/retroshare/files/cflags.patch @@ -0,0 +1,367 @@ +diff --git a/libbitdht/src/libbitdht.pro b/libbitdht/src/libbitdht.pro +index d9e5816c4..916bc6ca5 100644 +--- a/libbitdht/src/libbitdht.pro ++++ b/libbitdht/src/libbitdht.pro +@@ -69,14 +69,14 @@ win32 { + 		QMAKE_CXXFLAGS += -Wextra +  + 		# Switch off optimization for release version +-		QMAKE_CXXFLAGS_RELEASE -= -O2 +-		QMAKE_CXXFLAGS_RELEASE += -O0 +-		QMAKE_CFLAGS_RELEASE -= -O2 +-		QMAKE_CFLAGS_RELEASE += -O0 ++		QMAKE_CXXFLAGS_RELEASE -= ++		QMAKE_CXXFLAGS_RELEASE += ++		QMAKE_CFLAGS_RELEASE -= ++		QMAKE_CFLAGS_RELEASE += +  + 		# Switch on optimization for debug version +-		#QMAKE_CXXFLAGS_DEBUG += -O2 +-		#QMAKE_CFLAGS_DEBUG += -O2 ++		#QMAKE_CXXFLAGS_DEBUG += ++		#QMAKE_CFLAGS_DEBUG += + } +  + ################################# MacOSX ########################################## +diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro +index fa9491c63..9063efd43 100644 +--- a/libretroshare/src/libretroshare.pro ++++ b/libretroshare/src/libretroshare.pro +@@ -27,7 +27,7 @@ debug { + #	DEFINES *= P3TURTLE_DEBUG FT_DEBUG DEBUG_FTCHUNK MPLEX_DEBUG + #	DEFINES *= STATUS_DEBUG SERV_DEBUG RSSERIAL_DEBUG #CONN_DEBUG  +  +-        QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer ++        QMAKE_CXXFLAGS -= -fomit-frame-pointer +         QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer + } +  +@@ -251,14 +251,14 @@ win32-g++ { + 	QMAKE_CXXFLAGS += -Wextra +  + 	# Switch off optimization for release version +-	QMAKE_CXXFLAGS_RELEASE -= -O2 +-	QMAKE_CXXFLAGS_RELEASE += -O0 +-	QMAKE_CFLAGS_RELEASE -= -O2 +-	QMAKE_CFLAGS_RELEASE += -O0 ++	QMAKE_CXXFLAGS_RELEASE -= ++	QMAKE_CXXFLAGS_RELEASE += ++	QMAKE_CFLAGS_RELEASE -= ++	QMAKE_CFLAGS_RELEASE += +  + 	# Switch on optimization for debug version +-	#QMAKE_CXXFLAGS_DEBUG += -O2 +-	#QMAKE_CFLAGS_DEBUG += -O2 ++	#QMAKE_CXXFLAGS_DEBUG += ++	#QMAKE_CFLAGS_DEBUG += +  + 	DEFINES += USE_CMD_ARGS +  +diff --git a/libretroshare/src/tests/gxs/data_service/nxs_tests.pro b/libretroshare/src/tests/gxs/data_service/nxs_tests.pro +index 8fa292c61..cfa6a7d83 100644 +--- a/libretroshare/src/tests/gxs/data_service/nxs_tests.pro ++++ b/libretroshare/src/tests/gxs/data_service/nxs_tests.pro +@@ -53,7 +53,7 @@ debug { + #	DEFINES *= P3TURTLE_DEBUG FT_DEBUG DEBUG_FTCHUNK MPLEX_DEBUG
 + #	DEFINES *= STATUS_DEBUG SERV_DEBUG RSSERIAL_DEBUG #CONN_DEBUG 
 + 
 +-        QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer
 ++        QMAKE_CXXFLAGS -= -fomit-frame-pointer
 +         QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer
 + }
 + ################################# Linux ##########################################
 +@@ -100,14 +100,14 @@ win32 { +         QMAKE_CXXFLAGS += -Wextra
 + 
 +         # Switch off optimization for release version
 +-        QMAKE_CXXFLAGS_RELEASE -= -O2
 +-        QMAKE_CXXFLAGS_RELEASE += -O0
 +-        QMAKE_CFLAGS_RELEASE -= -O2
 +-        QMAKE_CFLAGS_RELEASE += -O0
 ++        QMAKE_CXXFLAGS_RELEASE -=
 ++        QMAKE_CXXFLAGS_RELEASE +=
 ++        QMAKE_CFLAGS_RELEASE -=
 ++        QMAKE_CFLAGS_RELEASE +=
 + 
 +         # Switch on optimization for debug version
 +-        #QMAKE_CXXFLAGS_DEBUG += -O2
 +-        #QMAKE_CFLAGS_DEBUG += -O2
 ++        #QMAKE_CXXFLAGS_DEBUG +=
 ++        #QMAKE_CFLAGS_DEBUG +=
 + 
 + #    PRE_TARGETDEPS += ../../libretroshare/src/lib/libretroshare.a
 +     PRE_TARGETDEPS += ../../../../libretroshare/libretroshare-build-desktop/lib/libretroshare.a
 +diff --git a/libretroshare/src/tests/gxs/gen_exchange/genexchange_test.pro b/libretroshare/src/tests/gxs/gen_exchange/genexchange_test.pro +index d95c4bcd4..82f921fc8 100644 +--- a/libretroshare/src/tests/gxs/gen_exchange/genexchange_test.pro ++++ b/libretroshare/src/tests/gxs/gen_exchange/genexchange_test.pro +@@ -36,7 +36,7 @@ debug { + #	DEFINES *= P3TURTLE_DEBUG FT_DEBUG DEBUG_FTCHUNK MPLEX_DEBUG
 + #	DEFINES *= STATUS_DEBUG SERV_DEBUG RSSERIAL_DEBUG #CONN_DEBUG 
 + 
 +-        QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer
 ++        QMAKE_CXXFLAGS -= -fomit-frame-pointer
 +         QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer
 + }
 + ################################# Linux ##########################################
 +@@ -85,14 +85,14 @@ win32 { +         QMAKE_CXXFLAGS += -Wextra
 + 
 +         # Switch off optimization for release version
 +-        QMAKE_CXXFLAGS_RELEASE -= -O2
 +-        QMAKE_CXXFLAGS_RELEASE += -O0
 +-        QMAKE_CFLAGS_RELEASE -= -O2
 +-        QMAKE_CFLAGS_RELEASE += -O0
 ++        QMAKE_CXXFLAGS_RELEASE -=
 ++        QMAKE_CXXFLAGS_RELEASE +=
 ++        QMAKE_CFLAGS_RELEASE -=
 ++        QMAKE_CFLAGS_RELEASE +=
 + 
 +         # Switch on optimization for debug version
 +-        #QMAKE_CXXFLAGS_DEBUG += -O2
 +-        #QMAKE_CFLAGS_DEBUG += -O2
 ++        #QMAKE_CXXFLAGS_DEBUG +=
 ++        #QMAKE_CFLAGS_DEBUG +=
 + 
 + #    PRE_TARGETDEPS += ../../libretroshare/src/lib/libretroshare.a
 +     PRE_TARGETDEPS += ../../../../../libretroshare/libretroshare-build-desktop/lib/libretroshare.a
 +diff --git a/libretroshare/src/tests/gxs/nxs_test/nxs_tests.pro b/libretroshare/src/tests/gxs/nxs_test/nxs_tests.pro +index 8fa292c61..cfa6a7d83 100644 +--- a/libretroshare/src/tests/gxs/nxs_test/nxs_tests.pro ++++ b/libretroshare/src/tests/gxs/nxs_test/nxs_tests.pro +@@ -53,7 +53,7 @@ debug { + #	DEFINES *= P3TURTLE_DEBUG FT_DEBUG DEBUG_FTCHUNK MPLEX_DEBUG
 + #	DEFINES *= STATUS_DEBUG SERV_DEBUG RSSERIAL_DEBUG #CONN_DEBUG 
 + 
 +-        QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer
 ++        QMAKE_CXXFLAGS -= -fomit-frame-pointer
 +         QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer
 + }
 + ################################# Linux ##########################################
 +@@ -100,14 +100,14 @@ win32 { +         QMAKE_CXXFLAGS += -Wextra
 + 
 +         # Switch off optimization for release version
 +-        QMAKE_CXXFLAGS_RELEASE -= -O2
 +-        QMAKE_CXXFLAGS_RELEASE += -O0
 +-        QMAKE_CFLAGS_RELEASE -= -O2
 +-        QMAKE_CFLAGS_RELEASE += -O0
 ++        QMAKE_CXXFLAGS_RELEASE -=
 ++        QMAKE_CXXFLAGS_RELEASE +=
 ++        QMAKE_CFLAGS_RELEASE -=
 ++        QMAKE_CFLAGS_RELEASE +=
 + 
 +         # Switch on optimization for debug version
 +-        #QMAKE_CXXFLAGS_DEBUG += -O2
 +-        #QMAKE_CFLAGS_DEBUG += -O2
 ++        #QMAKE_CXXFLAGS_DEBUG +=
 ++        #QMAKE_CFLAGS_DEBUG +=
 + 
 + #    PRE_TARGETDEPS += ../../libretroshare/src/lib/libretroshare.a
 +     PRE_TARGETDEPS += ../../../../libretroshare/libretroshare-build-desktop/lib/libretroshare.a
 +diff --git a/openpgpsdk/src/openpgpsdk.pro b/openpgpsdk/src/openpgpsdk.pro +index f667a0d23..5975a7bfb 100644 +--- a/openpgpsdk/src/openpgpsdk.pro ++++ b/openpgpsdk/src/openpgpsdk.pro +@@ -26,10 +26,10 @@ win32-g++ { + 	DEFINES *= WIN32_LEAN_AND_MEAN _USE_32BIT_TIME_T +  + 	# Switch off optimization for release version +-	QMAKE_CXXFLAGS_RELEASE -= -O2 +-	QMAKE_CXXFLAGS_RELEASE += -O0 +-	QMAKE_CFLAGS_RELEASE -= -O2 +-	QMAKE_CFLAGS_RELEASE += -O0 ++	QMAKE_CXXFLAGS_RELEASE -= ++	QMAKE_CXXFLAGS_RELEASE += ++	QMAKE_CFLAGS_RELEASE -= ++	QMAKE_CFLAGS_RELEASE += +  +     mLibs = bz2 z ssl crypto +     static { +diff --git a/plugins/Common/retroshare_plugin.pri b/plugins/Common/retroshare_plugin.pri +index c6124862c..8a322aae4 100644 +--- a/plugins/Common/retroshare_plugin.pri ++++ b/plugins/Common/retroshare_plugin.pri +@@ -49,14 +49,14 @@ win32 { + #	DESTDIR = lib +  + 	# Switch off optimization for release version +-	QMAKE_CXXFLAGS_RELEASE -= -O2 +-	QMAKE_CXXFLAGS_RELEASE += -O0 +-	QMAKE_CFLAGS_RELEASE -= -O2 +-	QMAKE_CFLAGS_RELEASE += -O0 ++	QMAKE_CXXFLAGS_RELEASE -= ++	QMAKE_CXXFLAGS_RELEASE += ++	QMAKE_CFLAGS_RELEASE -= ++	QMAKE_CFLAGS_RELEASE += +  + 	# Switch on optimization for debug version +-	#QMAKE_CXXFLAGS_DEBUG += -O2 +-	#QMAKE_CFLAGS_DEBUG += -O2 ++	#QMAKE_CXXFLAGS_DEBUG += ++	#QMAKE_CFLAGS_DEBUG += +  + 	DEFINES += USE_CMD_ARGS +  +diff --git a/retroshare-gui/src/retroshare-gui.pro b/retroshare-gui/src/retroshare-gui.pro +index 30b2af946..1a721643e 100644 +--- a/retroshare-gui/src/retroshare-gui.pro ++++ b/retroshare-gui/src/retroshare-gui.pro +@@ -170,14 +170,14 @@ win32-g++ { +     QMAKE_LFLAGS+=-Wl,--exclude-libs,ALL +  + 	# Switch off optimization for release version +-	QMAKE_CXXFLAGS_RELEASE -= -O2 +-	QMAKE_CXXFLAGS_RELEASE += -O0 +-	QMAKE_CFLAGS_RELEASE -= -O2 +-	QMAKE_CFLAGS_RELEASE += -O0 ++	QMAKE_CXXFLAGS_RELEASE -= ++	QMAKE_CXXFLAGS_RELEASE += ++	QMAKE_CFLAGS_RELEASE -= ++	QMAKE_CFLAGS_RELEASE += +  + 	# Switch on optimization for debug version +-	#QMAKE_CXXFLAGS_DEBUG += -O2 +-	#QMAKE_CFLAGS_DEBUG += -O2 ++	#QMAKE_CXXFLAGS_DEBUG += ++	#QMAKE_CFLAGS_DEBUG += +  + 	OBJECTS_DIR = temp/obj +  +diff --git a/retroshare.pri b/retroshare.pri +index c4f47aedf..6b1f0961f 100644 +--- a/retroshare.pri ++++ b/retroshare.pri +@@ -308,11 +308,11 @@ rs_chatserver { + } +  + debug { +-    QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer +-    QMAKE_CFLAGS -= -O2 -fomit-frame-pointer ++    QMAKE_CXXFLAGS -= -fomit-frame-pointer ++    QMAKE_CFLAGS -= -fomit-frame-pointer +  +-    QMAKE_CXXFLAGS *= -O0 -g -fno-omit-frame-pointer +-    QMAKE_CFLAGS *= -O0 -g -fno-omit-frame-pointer ++    QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer ++    QMAKE_CFLAGS *= -g -fno-omit-frame-pointer + } +  + profiling { +diff --git a/supportlibs/pegmarkdown/pegmarkdown.pro b/supportlibs/pegmarkdown/pegmarkdown.pro +index cc21ccaf3..9fc25562c 100644 +--- a/supportlibs/pegmarkdown/pegmarkdown.pro ++++ b/supportlibs/pegmarkdown/pegmarkdown.pro +@@ -10,7 +10,7 @@ QMAKE_CC = gcc +  + #CONFIG += debug + debug { +-        QMAKE_CFLAGS -= -O2  ++        QMAKE_CFLAGS -=  +         QMAKE_CFLAGS *= -g  + } +  +@@ -39,8 +39,8 @@ win32 { + 		QMAKE_CFLAGS += -Wextra +  + 		# Switch off optimization for release version +-		QMAKE_CFLAGS_RELEASE -= -O2 +-		QMAKE_CFLAGS_RELEASE += -O0 ++		QMAKE_CFLAGS_RELEASE -= ++		QMAKE_CFLAGS_RELEASE += +  + 		CONFIG += dummy_glib  +  +diff --git a/tests/librssimulator/librssimulator.pro b/tests/librssimulator/librssimulator.pro +index 94c942f53..e7432ca38 100644 +--- a/tests/librssimulator/librssimulator.pro ++++ b/tests/librssimulator/librssimulator.pro +@@ -14,7 +14,7 @@ profiling { +  +  + debug { +-        QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer ++        QMAKE_CXXFLAGS -= -fomit-frame-pointer +         QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer + } +  +@@ -159,14 +159,14 @@ win32 { + 	QMAKE_CXXFLAGS += -Wextra +  + 	# Switch off optimization for release version +-	QMAKE_CXXFLAGS_RELEASE -= -O2 +-	QMAKE_CXXFLAGS_RELEASE += -O0 +-	QMAKE_CFLAGS_RELEASE -= -O2 +-	QMAKE_CFLAGS_RELEASE += -O0 ++	QMAKE_CXXFLAGS_RELEASE -= ++	QMAKE_CXXFLAGS_RELEASE += ++	QMAKE_CFLAGS_RELEASE -= ++	QMAKE_CFLAGS_RELEASE += +  + 	# Switch on optimization for debug version +-	#QMAKE_CXXFLAGS_DEBUG += -O2 +-	#QMAKE_CFLAGS_DEBUG += -O2 ++	#QMAKE_CXXFLAGS_DEBUG += ++	#QMAKE_CFLAGS_DEBUG += +  + 	DEFINES += USE_CMD_ARGS +  +diff --git a/tests/unittests/libretroshare/gxs/gen_exchange/genexchange_test.pro b/tests/unittests/libretroshare/gxs/gen_exchange/genexchange_test.pro +index d95c4bcd4..82f921fc8 100644 +--- a/tests/unittests/libretroshare/gxs/gen_exchange/genexchange_test.pro ++++ b/tests/unittests/libretroshare/gxs/gen_exchange/genexchange_test.pro +@@ -36,7 +36,7 @@ debug { + #	DEFINES *= P3TURTLE_DEBUG FT_DEBUG DEBUG_FTCHUNK MPLEX_DEBUG
 + #	DEFINES *= STATUS_DEBUG SERV_DEBUG RSSERIAL_DEBUG #CONN_DEBUG 
 + 
 +-        QMAKE_CXXFLAGS -= -O2 -fomit-frame-pointer
 ++        QMAKE_CXXFLAGS -= -fomit-frame-pointer
 +         QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer
 + }
 + ################################# Linux ##########################################
 +@@ -85,14 +85,14 @@ win32 { +         QMAKE_CXXFLAGS += -Wextra
 + 
 +         # Switch off optimization for release version
 +-        QMAKE_CXXFLAGS_RELEASE -= -O2
 +-        QMAKE_CXXFLAGS_RELEASE += -O0
 +-        QMAKE_CFLAGS_RELEASE -= -O2
 +-        QMAKE_CFLAGS_RELEASE += -O0
 ++        QMAKE_CXXFLAGS_RELEASE -=
 ++        QMAKE_CXXFLAGS_RELEASE +=
 ++        QMAKE_CFLAGS_RELEASE -=
 ++        QMAKE_CFLAGS_RELEASE +=
 + 
 +         # Switch on optimization for debug version
 +-        #QMAKE_CXXFLAGS_DEBUG += -O2
 +-        #QMAKE_CFLAGS_DEBUG += -O2
 ++        #QMAKE_CXXFLAGS_DEBUG +=
 ++        #QMAKE_CFLAGS_DEBUG +=
 + 
 + #    PRE_TARGETDEPS += ../../libretroshare/src/lib/libretroshare.a
 +     PRE_TARGETDEPS += ../../../../../libretroshare/libretroshare-build-desktop/lib/libretroshare.a
 +diff --git a/tests/unittests/unittests.pro b/tests/unittests/unittests.pro +index c17be5b77..6721f39d7 100644 +--- a/tests/unittests/unittests.pro ++++ b/tests/unittests/unittests.pro +@@ -120,14 +120,14 @@ win32 { + 	QMAKE_LFLAGS += -Wl,--start-group +  + 	# Switch off optimization for release version +-	QMAKE_CXXFLAGS_RELEASE -= -O2 +-	QMAKE_CXXFLAGS_RELEASE += -O0 +-	QMAKE_CFLAGS_RELEASE -= -O2 +-	QMAKE_CFLAGS_RELEASE += -O0 ++	QMAKE_CXXFLAGS_RELEASE -= ++	QMAKE_CXXFLAGS_RELEASE += ++	QMAKE_CFLAGS_RELEASE -= ++	QMAKE_CFLAGS_RELEASE += +  + 	# Switch on optimization for debug version +-	#QMAKE_CXXFLAGS_DEBUG += -O2 +-	#QMAKE_CFLAGS_DEBUG += -O2 ++	#QMAKE_CXXFLAGS_DEBUG += ++	#QMAKE_CFLAGS_DEBUG += +  + 	OBJECTS_DIR = temp/obj + 	#LIBS += -L"D/Qt/2009.03/qt/plugins/imageformats" diff --git a/packages/net-p2p/retroshare/files/clang.patch b/packages/net-p2p/retroshare/files/clang.patch new file mode 100644 index 0000000..56663c5 --- /dev/null +++ b/packages/net-p2p/retroshare/files/clang.patch @@ -0,0 +1,25 @@ +diff --git a/libretroshare/src/util/cxx11retrocompat.h b/libretroshare/src/util/cxx11retrocompat.h +index 587b1374d..2acf87995 100644 +--- a/libretroshare/src/util/cxx11retrocompat.h ++++ b/libretroshare/src/util/cxx11retrocompat.h +@@ -19,11 +19,13 @@ +  + #ifdef __GNUC__ + #	define GCC_VERSION (__GNUC__*10000+__GNUC_MINOR__*100+__GNUC_PATCHLEVEL__) +-#	if GCC_VERSION < 40700 +-#		define override +-#		define final +-#	endif // GCC version < 40700 +-#	if GCC_VERSION < 40600 +-#		define nullptr NULL +-#	endif // GCC_VERSION < 40600 ++#	ifndef __clang__ ++#		if GCC_VERSION < 40700 ++#			define override ++#			define final ++#		endif // GCC version < 40700 ++#		if GCC_VERSION < 40600 ++#			define nullptr NULL ++#		endif // GCC_VERSION < 40600 ++#	endif //__clang__ + #endif //defined GNUC diff --git a/packages/net-p2p/retroshare/files/copy_lobby_name_to_clipboard.patch b/packages/net-p2p/retroshare/files/copy_lobby_name_to_clipboard.patch new file mode 100644 index 0000000..a1efe6b --- /dev/null +++ b/packages/net-p2p/retroshare/files/copy_lobby_name_to_clipboard.patch @@ -0,0 +1,64 @@ +diff --git a/retroshare-gui/src/gui/ChatLobbyWidget.cpp b/retroshare-gui/src/gui/ChatLobbyWidget.cpp +index 1ec3d39f0..37c630e1e 100644 +--- a/retroshare-gui/src/gui/ChatLobbyWidget.cpp ++++ b/retroshare-gui/src/gui/ChatLobbyWidget.cpp +@@ -25,6 +25,7 @@ + #include <QTextBrowser> + #include <QTimer> + #include <QTreeWidget> ++#include <QClipboard> +  + #include <algorithm> + #include <time.h> +@@ -325,6 +326,9 @@ void ChatLobbyWidget::lobbyTreeWidgetCustomPopupMenu(QPoint) +             contextMnu.addAction(QIcon(IMAGE_SUBSCRIBE), tr("Add Auto Subscribe"), this, SLOT(autoSubscribeItem())); +  +         contextMnu.addAction(QIcon(IMAGE_COPYRSLINK), tr("Copy RetroShare Link"), this, SLOT(copyItemLink())); ++ ++        if(!item->text(COLUMN_NAME).isEmpty()) ++            contextMnu.addAction(QIcon(IMAGE_COPYRSLINK), tr("Copy name to clipboard"), this, SLOT(copyLobbyNameToClipboard())); +     } +  +         contextMnu.addSeparator();//------------------------------------------------------------------- +@@ -898,9 +902,8 @@ void ChatLobbyWidget::autoSubscribeItem() + void ChatLobbyWidget::copyItemLink() + { + 	QTreeWidgetItem *item = ui.lobbyTreeWidget->currentItem(); +-	if (item == NULL || item->type() != TYPE_LOBBY) { ++    if (item == NULL) //this is always lobby, do not need to check twice + 		return; +-	} +  + 	ChatLobbyId id = item->data(COLUMN_DATA, ROLE_ID).toULongLong(); + 	QString name = item->text(COLUMN_NAME); +@@ -913,6 +916,18 @@ void ChatLobbyWidget::copyItemLink() + 	} + } +  ++ ++void ChatLobbyWidget::copyLobbyNameToClipboard() ++{ ++    QTreeWidgetItem *item = ui.lobbyTreeWidget->currentItem(); ++    if (item == NULL) ++        return; ++ ++    QClipboard *clipboard = QGuiApplication::clipboard(); ++    clipboard->setText(item->text(COLUMN_NAME)); ++} ++ ++ + QTreeWidgetItem *ChatLobbyWidget::getTreeWidgetItem(ChatLobbyId id) + { +     for(int p=0;p<4;++p) +diff --git a/retroshare-gui/src/gui/ChatLobbyWidget.h b/retroshare-gui/src/gui/ChatLobbyWidget.h +index cc3c26af3..86dadb7f0 100644 +--- a/retroshare-gui/src/gui/ChatLobbyWidget.h ++++ b/retroshare-gui/src/gui/ChatLobbyWidget.h +@@ -79,6 +79,7 @@ protected slots: + 	void updatePeerLeaving(ChatLobbyId); + 	void autoSubscribeItem(); + 	void copyItemLink(); ++    void copyLobbyNameToClipboard(); +  + private slots: + 	void filterColumnChanged(int); diff --git a/packages/net-p2p/retroshare/files/disable_key_array_redraw.patch b/packages/net-p2p/retroshare/files/disable_key_array_redraw.patch new file mode 100644 index 0000000..8bca5fa --- /dev/null +++ b/packages/net-p2p/retroshare/files/disable_key_array_redraw.patch @@ -0,0 +1,25 @@ +diff --git a/retroshare-gui/src/gui/NetworkView.cpp b/retroshare-gui/src/gui/NetworkView.cpp +index 44c99736d..a4d452ec0 100644 +--- a/retroshare-gui/src/gui/NetworkView.cpp ++++ b/retroshare-gui/src/gui/NetworkView.cpp +@@ -36,7 +36,7 @@ +  + /** Constructor */ + NetworkView::NetworkView(QWidget *parent) +-: RsAutoUpdatePage(60000,parent) ++/*: RsAutoUpdatePage(60000,parent) */ + { +   /* Invoke the Qt Designer generated object setup routine */ +   ui.setupUi(this); +@@ -90,9 +90,9 @@ void NetworkView::changedFoFCheckBox( ) + } + void NetworkView::redraw() + { +-	ui.graphicsView->clearNodesPositions() ; ++/*	ui.graphicsView->clearNodesPositions() ; + 	clear() ; +-	updateDisplay() ; ++    updateDisplay() ; */ + } +  + void  NetworkView::clear() diff --git a/packages/net-p2p/retroshare/files/hidden_service.patch b/packages/net-p2p/retroshare/files/hidden_service.patch new file mode 100644 index 0000000..8efb5b1 --- /dev/null +++ b/packages/net-p2p/retroshare/files/hidden_service.patch @@ -0,0 +1,111 @@ +diff --git a/libretroshare/src/pqi/p3netmgr.cc b/libretroshare/src/pqi/p3netmgr.cc +index 3381705cd..70c6e81cd 100644 +--- a/libretroshare/src/pqi/p3netmgr.cc ++++ b/libretroshare/src/pqi/p3netmgr.cc +@@ -996,7 +996,7 @@ bool p3NetMgrIMPL::checkNetAddress() +         std::cerr << "p3NetMgrIMPL::checkNetAddress() LOOPBACK ... forcing to 127.0.0.1"; +         std::cerr << std::endl; + #endif +-		sockaddr_storage_ipv4_aton(prefAddr, "127.0.0.1"); ++		sockaddr_storage_ipv4_aton(prefAddr, "0.0.0.0"); + 		validAddr = true; + 	} + 	else +diff --git a/libretroshare/src/pqi/p3peermgr.cc b/libretroshare/src/pqi/p3peermgr.cc +index d1e9e4e97..377d14ce5 100644 +--- a/libretroshare/src/pqi/p3peermgr.cc ++++ b/libretroshare/src/pqi/p3peermgr.cc +@@ -80,7 +80,7 @@ static struct RsLog::logInfo p3peermgrzoneInfo = {RsLog::Default, "p3peermgr"}; + #define MAX_AVAIL_PERIOD 230 //times a peer stay in available state when not connected + #define MIN_RETRY_PERIOD 140 +  +-static const std::string kConfigDefaultProxyServerIpAddr = "127.0.0.1"; ++static const std::string kConfigDefaultProxyServerIpAddr = "0.0.0.0"; + static const uint16_t    kConfigDefaultProxyServerPortTor = 9050; // standard port. + static const uint16_t    kConfigDefaultProxyServerPortI2P = 4447; // I2Pd's standard port +  +diff --git a/libretroshare/src/rsserver/p3peers.cc b/libretroshare/src/rsserver/p3peers.cc +index c6d686469..0f3323eba 100644 +--- a/libretroshare/src/rsserver/p3peers.cc ++++ b/libretroshare/src/rsserver/p3peers.cc +@@ -314,7 +314,7 @@ bool p3Peers::getPeerDetails(const RsPeerId& id, RsPeerDetails &d) +  + 		if(sockaddr_storage_isnull(ps.localaddr))	// that happens if the address is not initialised. + 		{ +-			d.localAddr	= "INVALID_IP"; ++			d.localAddr	= "0.0.0.0"; + 			d.localPort	= 0 ; + 		} + 		else +diff --git a/libretroshare/src/rsserver/rsinit.cc b/libretroshare/src/rsserver/rsinit.cc +index 095dbaeaf..0be569c14 100644 +--- a/libretroshare/src/rsserver/rsinit.cc ++++ b/libretroshare/src/rsserver/rsinit.cc +@@ -127,7 +127,7 @@ class RsInitConfig +  + 		/* Listening Port */ + 		bool forceExtPort; +-		bool forceLocalAddr; ++//		bool forceLocalAddr; + 		unsigned short port; + 		std::string inet ; +  +@@ -188,7 +188,7 @@ void RsInit::InitRsConfig() +  + 	rsInitConfig->load_trustedpeer = false; + 	rsInitConfig->port = 0 ; +-	rsInitConfig->forceLocalAddr = false; ++//	rsInitConfig->forceLocalAddr = false; + 	rsInitConfig->haveLogFile    = false; + 	rsInitConfig->outStderr      = false; + 	rsInitConfig->forceExtPort   = false; +@@ -359,7 +359,7 @@ int RsInit::InitRetroShare(int argc, char **argv, bool /* strictCheck */) + 		if(rsInitConfig->autoLogin)         rsInitConfig->startMinimised = true ; + 		if(rsInitConfig->outStderr)         rsInitConfig->haveLogFile    = false ; + 		if(!rsInitConfig->logfname.empty()) rsInitConfig->haveLogFile    = true; +-		if(rsInitConfig->inet != "127.0.0.1") rsInitConfig->forceLocalAddr = true; ++//		if(rsInitConfig->inet != "127.0.0.1") rsInitConfig->forceLocalAddr = true; + #ifdef LOCALNET_TESTING + 		if(!portRestrictions.empty())       doPortRestrictions           = true; + #endif +@@ -1684,23 +1684,23 @@ int RsServer::StartupRetroShare() + 	/**************************************************************************/ + 	std::cerr << "Force Any Configuration before Startup (After Load)" << std::endl; +  +-	if (rsInitConfig->forceLocalAddr) +-	{ +-		struct sockaddr_storage laddr; +- +-		/* clean sockaddr before setting values (MaxOSX) */ +-		sockaddr_storage_clear(laddr); +- +-		struct sockaddr_in *lap = (struct sockaddr_in *) &laddr; +-		 +-		lap->sin_family = AF_INET; +-		lap->sin_port = htons(rsInitConfig->port); +- +-		// universal +-		lap->sin_addr.s_addr = inet_addr(rsInitConfig->inet.c_str()); +- +-		mPeerMgr->setLocalAddress(ownId, laddr); +-	} ++//	if (rsInitConfig->forceLocalAddr) ++//	{ ++//		struct sockaddr_storage laddr; ++// ++//		/* clean sockaddr before setting values (MaxOSX) */ ++//		sockaddr_storage_clear(laddr); ++// ++//		struct sockaddr_in *lap = (struct sockaddr_in *) &laddr; ++//		 ++//		lap->sin_family = AF_INET; ++//		lap->sin_port = htons(rsInitConfig->port); ++// ++//		// universal ++//		lap->sin_addr.s_addr = inet_addr(rsInitConfig->inet.c_str()); ++// ++//		mPeerMgr->setLocalAddress(ownId, laddr); ++//	} +  + 	if (rsInitConfig->forceExtPort) + 	{ diff --git a/packages/net-p2p/retroshare/files/retroshare-0.6.0-fix-build.patch b/packages/net-p2p/retroshare/files/retroshare-0.6.0-fix-build.patch new file mode 100644 index 0000000..aa220cb --- /dev/null +++ b/packages/net-p2p/retroshare/files/retroshare-0.6.0-fix-build.patch @@ -0,0 +1,115 @@ +From ed867c52bd0497d0017eadc24d0c2cf678efa9e0 Mon Sep 17 00:00:00 2001 +From: Julian Ospald <hasufell@posteo.de> +Date: Fri, 27 May 2016 18:07:28 +0200 +Subject: [PATCH] Don't hardcode g++ in the toolchain settings +Upstream: merged, https://github.com/RetroShare/RetroShare/pull/395 + +Although it's already quite ugly that we overwrite QMAKE_CC like this, +hardcoding 'g++' can break the build where prefixed versions of +the toolchain are expected and where QMAKE_CXX is already properly +defined. So we just use QMAKE_CXX variable here. + +This fixes build failures on some distributions, e.g. +https://galileo.mailstation.de/jenkins/job/lipidity/36/console +--- + libbitdht/src/libbitdht.pro             | 6 +++--- + libretroshare/src/libretroshare.pro     | 6 +++--- + tests/librssimulator/librssimulator.pro | 6 +++--- + 3 files changed, 9 insertions(+), 9 deletions(-) + +diff --git a/libbitdht/src/libbitdht.pro b/libbitdht/src/libbitdht.pro +index a525159..738deea 100644 +--- a/libbitdht/src/libbitdht.pro ++++ b/libbitdht/src/libbitdht.pro +@@ -29,7 +29,7 @@ debug { +  + ################################# Linux ########################################## + linux-* { +-	QMAKE_CC = g++ ++	QMAKE_CC = $${QMAKE_CXX} + } +  + linux-g++ { +@@ -64,7 +64,7 @@ win32-x-g++ { + ################################# Windows ########################################## +  + win32 { +-		QMAKE_CC = g++ ++		QMAKE_CC = $${QMAKE_CXX} + 		OBJECTS_DIR = temp/obj + 		MOC_DIR = temp/moc + 		DEFINES *= STATICLIB WIN32_LEAN_AND_MEAN _USE_32BIT_TIME_T +@@ -89,7 +89,7 @@ win32 { + ################################# MacOSX ########################################## +  + mac { +-		QMAKE_CC = g++ ++		QMAKE_CC = $${QMAKE_CXX} + 		OBJECTS_DIR = temp/obj + 		MOC_DIR = temp/moc + } +diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro +index d01d4c9..d9e64d3 100644 +--- a/libretroshare/src/libretroshare.pro ++++ b/libretroshare/src/libretroshare.pro +@@ -122,7 +122,7 @@ linux-* { + 	CONFIG += link_pkgconfig +  + 	QMAKE_CXXFLAGS *= -Wall -D_FILE_OFFSET_BITS=64 +-	QMAKE_CC = g++ ++	QMAKE_CC = $${QMAKE_CXX} +  + 	contains(CONFIG, NO_SQLCIPHER) { + 		DEFINES *= NO_SQLCIPHER +@@ -225,7 +225,7 @@ win32-x-g++ { + ################################# Windows ########################################## +  + win32 { +-	QMAKE_CC = g++ ++	QMAKE_CC = $${QMAKE_CXX} + 	OBJECTS_DIR = temp/obj + 	MOC_DIR = temp/moc + 	DEFINES *= WINDOWS_SYS WIN32 STATICLIB MINGW WIN32_LEAN_AND_MEAN _USE_32BIT_TIME_T +@@ -259,7 +259,7 @@ win32 { + ################################# MacOSX ########################################## +  + mac { +-		QMAKE_CC = g++ ++		QMAKE_CC = $${QMAKE_CXX} + 		OBJECTS_DIR = temp/obj + 		MOC_DIR = temp/moc + 		#DEFINES = WINDOWS_SYS WIN32 STATICLIB MINGW +diff --git a/tests/librssimulator/librssimulator.pro b/tests/librssimulator/librssimulator.pro +index 14f1d5c..5211e7e 100644 +--- a/tests/librssimulator/librssimulator.pro ++++ b/tests/librssimulator/librssimulator.pro +@@ -70,7 +70,7 @@ linux-* { +  + 	DESTDIR = lib + 	QMAKE_CXXFLAGS *= -Wall -D_FILE_OFFSET_BITS=64 +-	QMAKE_CC = g++ ++	QMAKE_CC = $${QMAKE_CXX} +  + 	SSL_DIR = /usr/include/openssl + 	UPNP_DIR = /usr/include/upnp +@@ -143,7 +143,7 @@ win32-x-g++ { + ################################# Windows ########################################## +  + win32 { +-	QMAKE_CC = g++ ++	QMAKE_CC = $${QMAKE_CXX} + 	OBJECTS_DIR = temp/obj + 	MOC_DIR = temp/moc + 	DEFINES *= WINDOWS_SYS WIN32 STATICLIB MINGW WIN32_LEAN_AND_MEAN _USE_32BIT_TIME_T +@@ -188,7 +188,7 @@ win32 { + ################################# MacOSX ########################################## +  + mac { +-		QMAKE_CC = g++ ++		QMAKE_CC = $${QMAKE_CXX} + 		OBJECTS_DIR = temp/obj + 		MOC_DIR = temp/moc + 		#DEFINES = WINDOWS_SYS WIN32 STATICLIB MINGW +--  +2.8.3 + diff --git a/packages/net-p2p/retroshare/retroshare-scm.exheres-0 b/packages/net-p2p/retroshare/retroshare-scm.exheres-0 new file mode 100644 index 0000000..410d531 --- /dev/null +++ b/packages/net-p2p/retroshare/retroshare-scm.exheres-0 @@ -0,0 +1,7 @@ +# Copyright 2013 Ankur Kothari +# Distributed under the terms of the GNU General Public License v2 + +require retroshare + +PLATFORMS="~amd64" + diff --git a/packages/net-p2p/retroshare/retroshare.exlib b/packages/net-p2p/retroshare/retroshare.exlib new file mode 100644 index 0000000..3c2d115 --- /dev/null +++ b/packages/net-p2p/retroshare/retroshare.exlib @@ -0,0 +1,131 @@ +# Copyright 2013 Ankur Kothari +# Distributed under the terms of the GNU General Public License v2 + +require flag-o-matic +require github [ user=RetroShare project=RetroShare tag=v${PV} ] +require qmake [ slot=5 ] +require gtk-icon-cache freedesktop-desktop + +export_exlib_phases src_configure src_install pkg_postinst pkg_postrm + +SUMMARY="A decentralized, private and secure commmunication and sharing platform" +DESCRIPTION=" +RetroShare is basically a platform that establishes encrypted connections +between authenticated friends. This connection is used for various +communication services and filesharing. It is independent of any corporate +system or central servers, all data is only sent to friends and in some cases +relayed by them to their friends, making RetroShare a decentralised Social +Sharing Network designed For the People. Encrypted communication ensures that +all shared information is only known to you and your friends. + +Communication services in RetroShare: +    * Private chat with friends +    * Private or public chat lobbies, that allow chatting with friends +      and friends of friends +    * Messages to friends +    * Forums +    * Voice over IP +" +HOMEPAGE="https://retroshare.github.io/" + +LICENCES="GPL-2" +SLOT="0" +MYOPTIONS=" +    ( providers: libressl openssl ) [[ number-selected = exactly-one ]] +    ( providers: ffmpeg libav ) [[ number-selected = exactly-one ]] +    sqlcipher +    plugins +" + +DEPENDENCIES=" +    build: +        virtual/pkg-config +    build+run: +        sqlcipher? ( app-crypt/sqlcipher ) +        dev-libs/libxml2:2.0 +        dev-libs/libxslt +        dev-libs/protobuf +        gnome-desktop/libgnome-keyring:1 +        plugins? ( media-libs/opencv +            media-libs/speex +            media-libs/speexdsp +            providers:ffmpeg? ( media/ffmpeg ) +            providers:libav? ( media/libav ) +        ) +        net-libs/libmicrohttpd +        net-libs/libssh +        net-libs/libupnp +        net-misc/curl +        x11-libs/libX11 +        x11-libs/libXScrnSaver +        x11-libs/qtbase:5 +        x11-libs/qtmultimedia:5 +        x11-libs/qttools:5 +        x11-libs/qtx11extras:5 +        providers:libressl? ( dev-libs/libressl:= ) +        providers:openssl? ( dev-libs/openssl ) +" + +EQMAKE_PARAMS=( +    "CONFIG-=debug" +    "CONFIG+=release" +    "CONFIG-=c++11" +) + +DEFAULT_SRC_PREPARE_PATCHES+=( +    "${FILES}"/cflags.patch +    "${FILES}"/clang.patch +    "${FILES}"/disable_key_array_redraw.patch +    "${FILES}"/hidden_service.patch +) + +retroshare_src_configure(){ +    # weird speex failures, also see +    # https://github.com/RetroShare/RetroShare/issues/393 +    append-flags -DHAVE_STDINT_H + +    # fix hardcoded extension directory +    edo sed -i \ +        -e "s|/usr/lib/retroshare/extensions6/|/usr/$(exhost --target)/lib/${PN}/extensions6/|" \ +        libretroshare/src/rsserver/rsinit.cc +    option sqlcipher || EQMAKE_PARAMS+=( "CONFIG+=no_sqlcipher" ) +    option plugins || EQMAKE_PARAMS+=( "CONFIG+=no_retroshare_plugins" ) + +    eqmake \ +        BIN_DIR="/usr/$(exhost --target)/bin" \ +        LIB_DIR="/usr/$(exhost --target)/lib" \ +        PLUGIN_DIR="/usr/$(exhost --target)/lib/${PN}/extensions6/" \ +        INC_DIR="/usr/$(exhost --target)/include" \ +        RetroShare.pro +} + +retroshare_src_install() { +    emake INSTALL_ROOT="${IMAGE}" install + +    # overwrite desktop file +    insinto /usr/share/applications +    hereins ${PN}06.desktop <<EOF +[Desktop Entry] +Version=1.0 +Name=RetroShare06 +Comment=Securely share files with your friends +Exec=RetroShare06 +Icon=retroshare06 +Terminal=false +Type=Application +Categories=Network; +EOF +} + +retroshare_pkg_postinst() { +    freedesktop-mime_pkg_postinst +    freedesktop-desktop_pkg_postinst +    gtk-icon-cache_pkg_postinst +} + +retroshare_pkg_postrm() { +    freedesktop-mime_pkg_postrm +    freedesktop-desktop_pkg_postrm +    gtk-icon-cache_pkg_postrm +} +  | 
