2009-02-03 14:42:07 -05:00
|
|
|
TEMPLATE = app
|
|
|
|
TARGET = retroshare-nogui
|
2012-12-18 14:48:31 -05:00
|
|
|
CONFIG += bitdht
|
2012-02-07 12:01:07 -05:00
|
|
|
#CONFIG += introserver
|
2012-12-16 20:24:16 -05:00
|
|
|
CONFIG += sshserver
|
2013-02-25 12:34:12 -05:00
|
|
|
CONFIG -= qt xml gui
|
2012-12-16 14:17:11 -05:00
|
|
|
|
|
|
|
# if you are linking against the libretroshare with gxs.
|
|
|
|
# this option links against the required sqlite library.
|
2013-01-30 04:21:57 -05:00
|
|
|
#CONFIG += gxs
|
2009-02-03 14:42:07 -05:00
|
|
|
|
2012-12-18 16:26:01 -05:00
|
|
|
#CONFIG += debug
|
2012-08-07 19:55:43 -04:00
|
|
|
debug {
|
|
|
|
QMAKE_CFLAGS -= -O2
|
|
|
|
QMAKE_CFLAGS += -O0
|
|
|
|
QMAKE_CFLAGS += -g
|
|
|
|
|
|
|
|
QMAKE_CXXFLAGS -= -O2
|
|
|
|
QMAKE_CXXFLAGS += -O0
|
|
|
|
QMAKE_CXXFLAGS += -g
|
|
|
|
}
|
2009-02-03 14:42:07 -05:00
|
|
|
|
|
|
|
################################# Linux ##########################################
|
2010-06-27 12:28:44 -04:00
|
|
|
linux-* {
|
|
|
|
#CONFIG += version_detail_bash_script
|
|
|
|
QMAKE_CXXFLAGS *= -D_FILE_OFFSET_BITS=64
|
|
|
|
|
|
|
|
LIBS += ../../libretroshare/src/lib/libretroshare.a
|
2012-07-01 09:21:05 -04:00
|
|
|
LIBS += ../../openpgpsdk/src/lib/libops.a -lbz2
|
2012-07-15 12:17:56 -04:00
|
|
|
LIBS += -lssl -lupnp -lixml -lgnome-keyring
|
2012-09-17 14:42:31 -04:00
|
|
|
LIBS *= -lcrypto -ldl -lz
|
2014-01-07 17:51:22 -05:00
|
|
|
LIBS *= -rdynamic
|
2012-12-16 14:17:11 -05:00
|
|
|
|
|
|
|
gxs {
|
2013-06-25 15:48:51 -04:00
|
|
|
# We need a explicit path here, to force using the home version of sqlite3 that really encrypts the database.
|
2013-07-05 14:57:56 -04:00
|
|
|
LIBS += ../../../lib/sqlcipher/.libs/libsqlcipher.a
|
2012-12-16 14:17:11 -05:00
|
|
|
}
|
2010-06-27 12:28:44 -04:00
|
|
|
}
|
2009-02-03 14:42:07 -05:00
|
|
|
|
|
|
|
linux-g++ {
|
|
|
|
OBJECTS_DIR = temp/linux-g++/obj
|
|
|
|
}
|
2010-06-27 12:28:44 -04:00
|
|
|
|
2009-02-03 14:42:07 -05:00
|
|
|
linux-g++-64 {
|
|
|
|
OBJECTS_DIR = temp/linux-g++-64/obj
|
|
|
|
}
|
|
|
|
|
|
|
|
#################### Cross compilation for windows under Linux ###################
|
|
|
|
|
|
|
|
win32-x-g++ {
|
|
|
|
OBJECTS_DIR = temp/win32-x-g++/obj
|
|
|
|
|
|
|
|
LIBS += ../../../../lib/win32-x-g++/libretroshare.a
|
|
|
|
LIBS += ../../../../lib/win32-x-g++/libssl.a
|
|
|
|
LIBS += ../../../../lib/win32-x-g++/libcrypto.a
|
|
|
|
LIBS += ../../../../lib/win32-x-g++/libminiupnpc.a
|
|
|
|
LIBS += ../../../../lib/win32-x-g++/libz.a
|
|
|
|
LIBS += -L${HOME}/.wine/drive_c/pthreads/lib -lpthreadGCE2
|
|
|
|
LIBS += -lws2_32 -luuid -lole32 -liphlpapi -lcrypt32 -gdi32
|
|
|
|
LIBS += -lole32 -lwinmm
|
2009-02-08 09:30:28 -05:00
|
|
|
|
2009-02-03 14:42:07 -05:00
|
|
|
RC_FILE = gui/images/retroshare_win.rc
|
2009-02-08 09:30:28 -05:00
|
|
|
|
|
|
|
DEFINES *= WIN32
|
2009-02-03 14:42:07 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
#################################### Windows #####################################
|
|
|
|
|
|
|
|
win32 {
|
2012-10-21 07:51:38 -04:00
|
|
|
CONFIG += console
|
|
|
|
OBJECTS_DIR = temp/obj
|
|
|
|
RCC_DIR = temp/qrc
|
2009-02-03 14:42:07 -05:00
|
|
|
UI_DIR = temp/ui
|
|
|
|
MOC_DIR = temp/moc
|
|
|
|
|
2012-10-21 07:51:38 -04:00
|
|
|
PRE_TARGETDEPS *= ../../libretroshare/src/lib/libretroshare.a
|
|
|
|
PRE_TARGETDEPS *= ../../openpgpsdk/src/lib/libops.a
|
|
|
|
|
|
|
|
LIBS += ../../libretroshare/src/lib/libretroshare.a
|
2012-07-01 09:21:05 -04:00
|
|
|
LIBS += ../../openpgpsdk/src/lib/libops.a -lbz2
|
2013-10-03 12:23:02 -04:00
|
|
|
LIBS += -L"$$PWD/../../../lib"
|
|
|
|
LIBS += -lssl -lcrypto -lminiupnpc -lz
|
2010-08-03 08:15:20 -04:00
|
|
|
# added after bitdht
|
2013-10-07 19:11:10 -04:00
|
|
|
# LIBS += -lcrypto -lws2_32 -lgdi32
|
|
|
|
LIBS += -luuid -lole32 -liphlpapi -lcrypt32-cygwin
|
2012-10-21 07:51:38 -04:00
|
|
|
LIBS += -lole32 -lwinmm
|
|
|
|
|
2013-03-02 08:50:07 -05:00
|
|
|
PROTOCPATH=$$PWD/../../../lib/bin/
|
|
|
|
|
2012-10-21 07:51:38 -04:00
|
|
|
RC_FILE = resources/retroshare_win.rc
|
|
|
|
|
2013-10-07 19:11:10 -04:00
|
|
|
DEFINES *= WINDOWS_SYS _USE_32BIT_TIME_T
|
2012-10-08 11:59:22 -04:00
|
|
|
|
2012-12-16 17:39:58 -05:00
|
|
|
SSL_DIR = ../../../openssl-1.0.1c
|
|
|
|
|
|
|
|
INCLUDEPATH += . $${SSL_DIR}/include
|
|
|
|
|
|
|
|
gxs {
|
|
|
|
LIBS += ../../supportlibs/pegmarkdown/lib/libpegmarkdown.a
|
2013-07-05 20:58:17 -04:00
|
|
|
LIBS += -lsqlcipher
|
2012-12-16 17:39:58 -05:00
|
|
|
}
|
2009-02-03 14:42:07 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
##################################### MacOS ######################################
|
|
|
|
|
|
|
|
macx {
|
|
|
|
# ENABLE THIS OPTION FOR Univeral Binary BUILD.
|
|
|
|
# CONFIG += ppc x86
|
|
|
|
|
|
|
|
LIBS += -Wl,-search_paths_first
|
|
|
|
}
|
|
|
|
|
2012-01-29 09:27:14 -05:00
|
|
|
##################################### FreeBSD ######################################
|
|
|
|
|
|
|
|
freebsd-* {
|
|
|
|
INCLUDEPATH *= /usr/local/include/gpgme
|
|
|
|
LIBS *= ../../libretroshare/src/lib/libretroshare.a
|
|
|
|
LIBS *= -lssl
|
|
|
|
LIBS *= -lgpgme
|
|
|
|
LIBS *= -lupnp
|
|
|
|
LIBS *= -lgnome-keyring
|
|
|
|
PRE_TARGETDEPS *= ../../libretroshare/src/lib/libretroshare.a
|
|
|
|
}
|
|
|
|
|
2013-08-26 13:38:51 -04:00
|
|
|
##################################### OpenBSD ######################################
|
|
|
|
|
|
|
|
openbsd-* {
|
|
|
|
INCLUDEPATH *= /usr/local/include
|
|
|
|
QMAKE_CXXFLAGS *= -Dfseeko64=fseeko -Dftello64=ftello -Dstat64=stat -Dstatvfs64=statvfs -Dfopen64=fopen
|
|
|
|
LIBS *= ../../libretroshare/src/lib/libretroshare.a
|
|
|
|
LIBS *= ../../openpgpsdk/src/lib/libops.a -lbz2
|
|
|
|
LIBS *= -lssl -lcrypto
|
|
|
|
LIBS *= -lgpgme
|
|
|
|
LIBS *= -lupnp
|
|
|
|
LIBS *= -lgnome-keyring
|
|
|
|
PRE_TARGETDEPS *= ../../libretroshare/src/lib/libretroshare.a
|
|
|
|
PRE_TARGETDEPS *= ../../openpgpsdk/src/lib/libops.a
|
|
|
|
LIBS *= -rdynamic
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2009-02-03 14:42:07 -05:00
|
|
|
############################## Common stuff ######################################
|
|
|
|
|
2010-08-02 06:00:29 -04:00
|
|
|
# bitdht config
|
|
|
|
bitdht {
|
|
|
|
LIBS += ../../libbitdht/src/lib/libbitdht.a
|
|
|
|
}
|
2010-08-03 08:15:20 -04:00
|
|
|
|
2009-02-03 14:42:07 -05:00
|
|
|
DEPENDPATH += ../../libretroshare/src
|
|
|
|
|
|
|
|
INCLUDEPATH += . ../../libretroshare/src
|
|
|
|
|
|
|
|
# Input
|
|
|
|
HEADERS += notifytxt.h
|
|
|
|
SOURCES += notifytxt.cc \
|
|
|
|
retroshare.cc
|
|
|
|
|
2012-02-07 12:01:07 -05:00
|
|
|
introserver {
|
|
|
|
HEADERS += introserver.h
|
|
|
|
SOURCES += introserver.cc
|
|
|
|
DEFINES *= RS_INTRO_SERVER
|
|
|
|
}
|
2009-02-03 14:42:07 -05:00
|
|
|
|
|
|
|
|
2012-08-05 13:08:29 -04:00
|
|
|
sshserver {
|
2012-10-21 15:59:53 -04:00
|
|
|
|
2012-08-05 13:08:29 -04:00
|
|
|
# This Requires libssh-0.5.* to compile.
|
2013-04-23 17:10:34 -04:00
|
|
|
# Please use this path below.
|
|
|
|
# (You can modify it locally if required - but dont commit it!)
|
|
|
|
|
|
|
|
LIBSSH_DIR = ../../../lib/libssh-0.5.4
|
|
|
|
|
2012-08-05 13:08:29 -04:00
|
|
|
#
|
|
|
|
# Use the following commend to generate a Server RSA Key.
|
|
|
|
# Key should be in current directory - when run/
|
|
|
|
# ssh-keygen -t rsa -f rs_ssh_host_rsa_key
|
|
|
|
#
|
|
|
|
# You can connect from a standard ssh, eg: ssh -p 7022 127.0.0.1
|
|
|
|
#
|
2012-08-09 09:45:05 -04:00
|
|
|
# The Menu system is available from the command-line (-T) and SSH (-S)
|
2012-08-07 19:55:43 -04:00
|
|
|
# if it get covered by debug gunk, just press <return> to refresh.
|
|
|
|
#
|
2012-08-09 09:45:05 -04:00
|
|
|
# ./retroshare-nogui -h provides some more instructions.
|
|
|
|
#
|
|
|
|
|
2012-12-18 14:48:31 -05:00
|
|
|
win32 {
|
|
|
|
DEFINES *= LIBSSH_STATIC
|
|
|
|
}
|
|
|
|
|
2012-10-21 15:59:53 -04:00
|
|
|
INCLUDEPATH += $$LIBSSH_DIR/include/
|
2013-02-02 13:30:43 -05:00
|
|
|
|
|
|
|
win32 {
|
|
|
|
LIBS += -lssh
|
|
|
|
LIBS += -lssh_threads
|
|
|
|
} else {
|
2013-03-04 17:09:10 -05:00
|
|
|
SSH_OK = $$system(pkg-config --atleast-version 0.5.4 libssh && echo yes)
|
2013-02-28 17:48:28 -05:00
|
|
|
isEmpty(SSH_OK) {
|
|
|
|
exists($$LIBSSH_DIR/build/src/libssh.a):exists($$LIBSSH_DIR/build/src/threads/libssh_threads.a) {
|
|
|
|
LIBS += $$LIBSSH_DIR/build/src/libssh.a
|
|
|
|
LIBS += $$LIBSSH_DIR/build/src/threads/libssh_threads.a
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
! exists($$LIBSSH_DIR/build/src/libssh.a):message($$LIBSSH_DIR/build/src/libssh.a does not exist)
|
|
|
|
! exists($$LIBSSH_DIR/build/src/threads/libssh_threads.a):message($$LIBSSH_DIR/build/src/threads/libssh_threads.a does not exist)
|
|
|
|
message(You need to download and compile libssh)
|
|
|
|
message(See http://sourceforge.net/p/retroshare/code/6163/tree/trunk/)
|
|
|
|
error(Please fix this and try again. Will stop now.)
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
LIBS += -lssh
|
|
|
|
LIBS += -lssh_threads
|
|
|
|
}
|
|
|
|
}
|
2012-12-18 14:48:31 -05:00
|
|
|
|
2012-08-05 13:08:29 -04:00
|
|
|
HEADERS += ssh/rssshd.h
|
|
|
|
SOURCES += ssh/rssshd.cc
|
2012-08-07 19:55:43 -04:00
|
|
|
|
2012-08-20 10:59:41 -04:00
|
|
|
# For the Menu System
|
2012-08-07 19:55:43 -04:00
|
|
|
HEADERS += menu/menu.h \
|
|
|
|
menu/menus.h \
|
2012-08-20 10:59:41 -04:00
|
|
|
menu/stdiocomms.h \
|
2012-08-07 19:55:43 -04:00
|
|
|
|
|
|
|
SOURCES += menu/menu.cc \
|
|
|
|
menu/menus.cc \
|
2012-08-20 10:59:41 -04:00
|
|
|
menu/stdiocomms.cc \
|
|
|
|
|
|
|
|
# For the RPC System
|
|
|
|
HEADERS += rpc/rpc.h \
|
|
|
|
rpc/rpcserver.h \
|
|
|
|
rpc/rpcsetup.h \
|
|
|
|
rpc/rpcecho.h \
|
|
|
|
rpcsystem.h \
|
|
|
|
|
|
|
|
SOURCES += rpc/rpc.cc \
|
|
|
|
rpc/rpcserver.cc \
|
|
|
|
rpc/rpcsetup.cc \
|
|
|
|
rpc/rpcecho.cc \
|
|
|
|
|
|
|
|
# Actual protocol files to go here...
|
|
|
|
#HEADERS += rpc/proto/rpcecho.h \
|
|
|
|
|
|
|
|
#SOURCES += rpc/proto/rpcecho.cc \
|
2012-08-07 19:55:43 -04:00
|
|
|
|
2012-08-05 13:08:29 -04:00
|
|
|
DEFINES *= RS_SSH_SERVER
|
2012-08-23 10:04:01 -04:00
|
|
|
|
|
|
|
# Include Protobuf classes.
|
2012-08-23 11:20:43 -04:00
|
|
|
CONFIG += protorpc
|
2012-08-05 13:08:29 -04:00
|
|
|
}
|
|
|
|
|
2012-08-23 10:04:01 -04:00
|
|
|
protorpc {
|
|
|
|
# Proto Services
|
2013-04-23 17:43:24 -04:00
|
|
|
PROTOS = core.proto peers.proto system.proto chat.proto search.proto files.proto stream.proto
|
2013-03-02 08:50:07 -05:00
|
|
|
DESTPATH = $$PWD/rpc/proto/gencc
|
|
|
|
PROTOPATH = $$PWD/../../rsctrl/src/definition
|
|
|
|
CMD = echo Building protobuf files
|
|
|
|
for(pf, PROTOS):CMD += && $${PROTOCPATH}protoc --cpp_out=$${DESTPATH} --proto_path=$${PROTOPATH} $${PROTOPATH}/$${pf}
|
2013-02-28 17:32:13 -05:00
|
|
|
protobuf_gen.commands = $${CMD}
|
|
|
|
QMAKE_EXTRA_TARGETS += protobuf_gen
|
|
|
|
PRE_TARGETDEPS += protobuf_gen
|
|
|
|
|
2012-08-23 10:04:01 -04:00
|
|
|
HEADERS += rpc/proto/rpcprotopeers.h \
|
2012-08-25 07:47:20 -04:00
|
|
|
rpc/proto/rpcprotosystem.h \
|
2012-09-03 15:18:59 -04:00
|
|
|
rpc/proto/rpcprotochat.h \
|
2012-09-09 07:48:25 -04:00
|
|
|
rpc/proto/rpcprotosearch.h \
|
|
|
|
rpc/proto/rpcprotofiles.h \
|
2013-03-25 15:05:31 -04:00
|
|
|
rpc/proto/rpcprotostream.h \
|
|
|
|
rpc/proto/rpcprotoutils.h \
|
2012-08-23 10:04:01 -04:00
|
|
|
|
|
|
|
SOURCES += rpc/proto/rpcprotopeers.cc \
|
2012-08-25 07:47:20 -04:00
|
|
|
rpc/proto/rpcprotosystem.cc \
|
2012-09-03 15:18:59 -04:00
|
|
|
rpc/proto/rpcprotochat.cc \
|
2012-09-09 07:48:25 -04:00
|
|
|
rpc/proto/rpcprotosearch.cc \
|
|
|
|
rpc/proto/rpcprotofiles.cc \
|
2013-03-25 15:05:31 -04:00
|
|
|
rpc/proto/rpcprotostream.cc \
|
|
|
|
rpc/proto/rpcprotoutils.cc \
|
2012-08-23 10:04:01 -04:00
|
|
|
|
2012-10-22 14:42:54 -04:00
|
|
|
# Offical Generated Code (protobuf 2.4.1)
|
|
|
|
HEADERS += rpc/proto/gencc/core.pb.h \
|
|
|
|
rpc/proto/gencc/peers.pb.h \
|
|
|
|
rpc/proto/gencc/system.pb.h \
|
|
|
|
rpc/proto/gencc/chat.pb.h \
|
|
|
|
rpc/proto/gencc/search.pb.h \
|
|
|
|
rpc/proto/gencc/files.pb.h \
|
2013-03-25 15:05:31 -04:00
|
|
|
rpc/proto/gencc/stream.pb.h \
|
2012-10-22 14:42:54 -04:00
|
|
|
|
|
|
|
SOURCES += rpc/proto/gencc/core.pb.cc \
|
|
|
|
rpc/proto/gencc/peers.pb.cc \
|
|
|
|
rpc/proto/gencc/system.pb.cc \
|
|
|
|
rpc/proto/gencc/chat.pb.cc \
|
|
|
|
rpc/proto/gencc/search.pb.cc \
|
|
|
|
rpc/proto/gencc/files.pb.cc \
|
2013-03-25 15:05:31 -04:00
|
|
|
rpc/proto/gencc/stream.pb.cc \
|
2012-10-22 14:42:54 -04:00
|
|
|
|
2012-08-23 10:04:01 -04:00
|
|
|
# Generated ProtoBuf Code the RPC System
|
2012-10-22 14:42:54 -04:00
|
|
|
# If you are developing, or have a different version of protobuf
|
|
|
|
# you can use these ones (run make inside rsctrl/src/ to generate)
|
|
|
|
#HEADERS += ../../rsctrl/src/gencc/core.pb.h \
|
|
|
|
# ../../rsctrl/src/gencc/peers.pb.h \
|
|
|
|
# ../../rsctrl/src/gencc/system.pb.h \
|
|
|
|
# ../../rsctrl/src/gencc/chat.pb.h \
|
|
|
|
# ../../rsctrl/src/gencc/search.pb.h \
|
|
|
|
# ../../rsctrl/src/gencc/files.pb.h \
|
2013-03-25 15:05:31 -04:00
|
|
|
# ../../rsctrl/src/gencc/stream.pb.h \
|
2012-10-22 14:42:54 -04:00
|
|
|
|
|
|
|
#SOURCES += ../../rsctrl/src/gencc/core.pb.cc \
|
|
|
|
# ../../rsctrl/src/gencc/peers.pb.cc \
|
|
|
|
# ../../rsctrl/src/gencc/system.pb.cc \
|
|
|
|
# ../../rsctrl/src/gencc/chat.pb.cc \
|
|
|
|
# ../../rsctrl/src/gencc/search.pb.cc \
|
|
|
|
# ../../rsctrl/src/gencc/files.pb.cc \
|
2013-03-25 15:05:31 -04:00
|
|
|
# ../../rsctrl/src/gencc/stream.pb.cc \
|
2012-08-23 10:04:01 -04:00
|
|
|
|
2013-02-17 12:01:22 -05:00
|
|
|
INCLUDEPATH *= rpc/proto/gencc
|
|
|
|
|
2012-12-18 14:48:31 -05:00
|
|
|
!win32 {
|
|
|
|
# unrecognized option
|
|
|
|
QMAKE_CFLAGS += -pthread
|
|
|
|
QMAKE_CXXFLAGS += -pthread
|
|
|
|
}
|
2013-03-08 07:57:27 -05:00
|
|
|
LIBS += -lprotobuf -lpthread
|
2012-12-18 05:52:34 -05:00
|
|
|
|
|
|
|
win32 {
|
|
|
|
PROTOPATH = ../../../protobuf-2.4.1
|
|
|
|
INCLUDEPATH += . $${PROTOPATH}/src
|
|
|
|
}
|
|
|
|
}
|
|
|
|
win32 {
|
|
|
|
# must be added after ssh
|
2013-10-07 19:11:10 -04:00
|
|
|
LIBS += -lcrypto -lws2_32 -lgdi32
|
2012-08-23 10:04:01 -04:00
|
|
|
}
|