Retroshare 5.5a broken.
Juergen Lock
nox at jelal.kn-bremen.de
Wed Apr 2 17:36:24 UTC 2014
In article <67936D7A-BB62-400D-BB32-BB7716C8B1DE at netkey.at> you write:
>Hello Richard,
>
>Yes I know, curently the port is broken under 10 without gcc from the ports.
>I have some unfinished patches to compile with clang, which will be
>pushed upstream (probably).
>Please be aware that RetroShare is under heavy delevopment at the moment,
>there is a 0.5.5c out and the new 0.6 branch and the old 0.5.5 branch are being
>merged.
>
>I managed to compile and run RetroShare 0.5.5c under FreeBSD (9.2)
>but unfortunately all the icons and graphics wouldn't be displayed/shown.
>
>So there're a white, iconless stable version, some clang patches for that and
>an upcoming dev version to be released soon
>
>To add to all of that, I wont be able to submit a patch for the next 5 weeks
>due to personal reasons.
>
>Maybe 0.6 will be out than. And QT5 in the ports.
>
>A quick patch would be to add
>USE_GCC=any
>somewhere on the top of the Makefile, which should install gcc as a dependency.
>
Hi!
This just came up on irc (before I saw this thread), and I got the current
port to build on 10.0 and also with clang34 from ports using the patch
below, maybe it helps. :) (I didn't run-test other than starting it once tho.)
Juergen
Index: net-p2p/retroshare/Makefile
===================================================================
--- net-p2p/retroshare/Makefile (revision 349891)
+++ net-p2p/retroshare/Makefile (working copy)
@@ -30,7 +30,7 @@ LIB_DEPENDS= libdbus-1.so:${PORTSDIR}/devel/dbus \
libxslt.so:${PORTSDIR}/textproc/libxslt
RUN_DEPENDS= pinentry-qt4:${PORTSDIR}/security/pinentry-qt4
-USES= qmake zip
+USES= qmake zip compiler:features dos2unix
USE_GNOME= glib20
USE_XORG= ice sm x11 xau xcb xdmcp xext xrender
USE_QT4= corelib gui network xml script designer_build uic_build \
@@ -38,13 +38,22 @@ USE_QT4= corelib gui network xml script designer_b
BINARY= RetroShare
MAKE_JOBS_UNSAFE=yes
USE_LDCONFIG= yes
+MAKE_ARGS+= BIOCC=${CC}
DESKTOP_ENTRIES="${BINARY}" "${COMMENT}" "${DATADIR}/retrosharelogo1.png" \
"${BINARY}" "Network;FileTransfer;" true
-USE_DOS2UNIX= retroshare-gui/src/retroshare-gui.pro
+DOS2UNIX_FILES= retroshare-gui/src/retroshare-gui.pro \
+ retroshare-gui/src/gui/RetroShareLink.h \
+ retroshare-gui/src/gui/common/GroupTreeWidget.cpp
+.include <bsd.port.pre.mk>
+
post-patch:
+.if ${COMPILER_FEATURES:Mlibc++}
+ @${REINPLACE_CMD} -e 's|std::tr1::|std::|' \
+ ${WRKSRC}/libretroshare/src/dbase/findex.[ch]*
+.endif
@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' \
${WRKSRC}/libretroshare/src/libretroshare.pro
@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|' \
@@ -61,6 +70,8 @@ post-patch:
${WRKSRC}/${BINARY}.pro
@${REINPLACE_CMD} -e 's|/usr/lib|${LOCALBASE}/lib|' \
${WRKSRC}/libretroshare/src/rsserver/rsinit.cc
+ @${REINPLACE_CMD} -e 's|gcc|${CC}|' \
+ ${WRKSRC}/supportlibs/pegmarkdown/pegmarkdown.pro
post-install:
${INSTALL_PROGRAM} ${WRKSRC}/retroshare-gui/src/${BINARY} \
@@ -83,4 +94,4 @@ post-install:
${LN} -s libVOIP.so.1 libVOIP.so && \
${LN} -s libFeedReader.so.1 libFeedReader.so
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Index: net-p2p/retroshare/files/patch-clang
===================================================================
--- net-p2p/retroshare/files/patch-clang (revision 0)
+++ net-p2p/retroshare/files/patch-clang (working copy)
@@ -0,0 +1,135 @@
+--- libretroshare/src/retroshare/rsconfig.h.orig
++++ libretroshare/src/retroshare/rsconfig.h
+@@ -31,6 +31,8 @@
+ #include <list>
+ #include <map>
+
++#include <time.h>
++
+ /* The New Config Interface Class */
+ class RsServerConfig;
+ extern RsServerConfig *rsConfig;
+--- libretroshare/src/retroshare/rsflags.h.orig
++++ libretroshare/src/retroshare/rsflags.h
+@@ -1,6 +1,7 @@
+ #pragma once
+
+ #include <stdint.h>
++#include <ostream>
+
+ // This class provides a representation for flags that can be combined with bitwise
+ // operations. However, because the class is templated with an id, it's not possible to
+--- libretroshare/src/retroshare/rsgxsifacetypes.h.orig
++++ libretroshare/src/retroshare/rsgxsifacetypes.h
+@@ -12,6 +12,8 @@
+ #include <vector>
+ #include <string>
+ #include <inttypes.h>
++
++#include <time.h>
+
+
+ typedef std::string RsGxsGroupId;
+--- plugins/FeedReader/interface/rsFeedReader.h.orig
++++ plugins/FeedReader/interface/rsFeedReader.h
+@@ -26,6 +26,8 @@
+ #include <string>
+ #include <list>
+
++#include <time.h>
++
+ class RsFeedReader;
+ extern RsFeedReader *rsFeedReader;
+
+--- plugins/LinksCloud/rsrank.h.orig
++++ plugins/LinksCloud/rsrank.h
+@@ -30,6 +30,8 @@
+ #include <string>
+ #include <list>
+
++#include <time.h>
++
+ /* The Main Interface Class - for information about your Peers */
+ class RsRanks;
+ extern RsRanks *rsRanks;
+--- retroshare-gui/src/gui/CreateMsgLinkDialog.h.orig
++++ retroshare-gui/src/gui/CreateMsgLinkDialog.h
+@@ -23,6 +23,8 @@
+
+ #include "ui_CreateMsgLinkDialog.h"
+
++#include <time.h>
++
+ class FriendSelectionWidget ;
+
+ class CreateMsgLinkDialog : public QDialog, public Ui::CreateMsgLinkDialog
+--- retroshare-gui/src/gui/RetroShareLink.h.orig
++++ retroshare-gui/src/gui/RetroShareLink.h
+@@ -33,6 +33,7 @@
+ // -------------+----------------+--------------------------+------------------+-------------+-------------
+ //
+ #include <stdint.h>
++#include <time.h>
+ #include <QString>
+ #include <QVector>
+ #include <QUrl>
+--- retroshare-gui/src/gui/common/GroupTreeWidget.cpp.orig
++++ retroshare-gui/src/gui/common/GroupTreeWidget.cpp
+@@ -502,7 +502,7 @@ void GroupTreeWidget::calculateScore(QTr
+
+ /* Find out which has given word in it */
+ QTreeWidgetItemIterator itemIterator(ui->treeWidget);
+- QTreeWidgetItem *item;
++ // QTreeWidgetItem *item;
+ while ((item = *itemIterator) != NULL) {
+ itemIterator++;
+
+--- retroshare-gui/src/gui/connect/ConnectProgressDialog.h.orig
++++ retroshare-gui/src/gui/connect/ConnectProgressDialog.h
+@@ -29,6 +29,7 @@
+ #include "ui_ConnectProgressDialog.h"
+
+ #include <stdint.h>
++#include <time.h>
+
+ class ConnectProgressDialog : public QDialog
+ {
+--- retroshare-gui/src/./util/DateTime.h.orig
++++ retroshare-gui/src/./util/DateTime.h
+@@ -24,6 +24,8 @@
+
+ #include <QString>
+
++#include <time.h>
++
+ class QDateTime;
+ class QDate;
+ class QTime;
+--- libretroshare/src/util/argstream.h.orig
++++ libretroshare/src/util/argstream.h
+@@ -141,9 +141,9 @@ namespace
+ inline OptionHolder(char s,
+ const char* l,
+ const char* desc);
+- friend OptionHolder help(char s='h',
+- const char* l="help",
+- const char* desc="Display this help");
++ friend OptionHolder help(char s,
++ const char* l,
++ const char* desc);
+ private:
+ std::string shortName_;
+ std::string longName_;
+@@ -173,9 +173,9 @@ namespace
+ return OptionHolder(l,b,desc);
+ }
+ inline OptionHolder
+- help(char s,
+- const char* l,
+- const char* desc)
++ help(char s='h',
++ const char* l="help",
++ const char* desc="Display this help")
+ {
+ return OptionHolder(s,l,desc);
+ }
Property changes on: net-p2p/retroshare/files/patch-clang
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: fbsd:nokeywords
## -0,0 +1 ##
+yes
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Index: net-p2p/retroshare/files/patch-retroshare-gui-src-retroshare-gui.pro
===================================================================
--- net-p2p/retroshare/files/patch-retroshare-gui-src-retroshare-gui.pro (revision 349891)
+++ net-p2p/retroshare/files/patch-retroshare-gui-src-retroshare-gui.pro (working copy)
@@ -1,6 +1,6 @@
---- retroshare-gui/src/retroshare-gui.pro.orig 2013-10-21 21:31:11.012605427 +0200
-+++ retroshare-gui/src/retroshare-gui.pro 2013-10-21 21:31:53.770609780 +0200
-@@ -209,17 +209,19 @@
+--- retroshare-gui/src/retroshare-gui.pro.orig
++++ retroshare-gui/src/retroshare-gui.pro
+@@ -209,17 +209,20 @@ macx {
freebsd-* {
INCLUDEPATH *= /usr/local/include/gpgme
LIBS *= ../../libretroshare/src/lib/libretroshare.a
@@ -8,6 +8,7 @@
LIBS *= -lssl
LIBS *= -lgpgme
LIBS *= -lupnp
++ LIBS *= -lixml
LIBS *= -lgnome-keyring
PRE_TARGETDEPS *= ../../libretroshare/src/lib/libretroshare.a
+ PRE_TARGETDEPS *= ../../openpgpsdk/src/lib/libops.a
More information about the freebsd-ports
mailing list