2015-10-12 14:45:11 -04:00
! include ( "../../retroshare.pri" ) : error ( "Could not include file ../../retroshare.pri" )
TEMPLATE = lib
CONFIG += staticlib bitdht
CONFIG += create_prl
CONFIG -= qt
TARGET = retroshare
TARGET_PRL = libretroshare
DESTDIR = lib
# CONFIG += dsdv
2016-06-21 07:55:23 -04:00
# the dht stunner is used to obtain RS ' external ip addr . when it is natted
# this system is unreliable and rs supports a newer and better one ( asking connected peers )
# CONFIG += useDhtStunner
2015-10-12 14:45:11 -04:00
profiling {
QMAKE_CXXFLAGS -= - fomit - frame - pointer
QMAKE_CXXFLAGS *= - pg - g - fno - omit - frame - pointer
}
# treat warnings as error for better removing
# QMAKE_CFLAGS += - Werror
# QMAKE_CXXFLAGS += - Werror
debug {
# DEFINES *= DEBUG
# DEFINES *= OPENDHT_DEBUG DHT_DEBUG CONN_DEBUG DEBUG_UDP_SORTER P3DISC_DEBUG DEBUG_UDP_LAYER FT_DEBUG EXTADDRSEARCH_DEBUG
# DEFINES *= CONTROL_DEBUG FT_DEBUG DEBUG_FTCHUNK P3TURTLE_DEBUG
# DEFINES *= P3TURTLE_DEBUG
# DEFINES *= NET_DEBUG
# DEFINES *= DISTRIB_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 *= - g - fno - omit - frame - pointer
}
2016-07-20 15:28:55 -04:00
CONFIG += file_lists
file_lists {
HEADERS *= file_sharing / p3filelists . h \
2016-08-20 10:23:11 -04:00
file_sharing / hash_cache . h \
file_sharing / filelist_io . h \
file_sharing / directory_storage . h \
file_sharing / directory_updater . h \
2016-09-01 15:04:48 -04:00
file_sharing / rsfilelistitems . h \
2016-09-03 07:29:23 -04:00
file_sharing / dir_hierarchy . h \
2017-10-17 18:04:04 -04:00
file_sharing / file_tree . h \
2016-09-01 15:04:48 -04:00
file_sharing / file_sharing_defaults . h
2016-07-20 15:28:55 -04:00
SOURCES *= file_sharing / p3filelists . cc \
2016-08-20 10:23:11 -04:00
file_sharing / hash_cache . cc \
file_sharing / filelist_io . cc \
file_sharing / directory_storage . cc \
file_sharing / directory_updater . cc \
2016-09-03 07:29:23 -04:00
file_sharing / dir_hierarchy . cc \
2017-10-17 18:04:04 -04:00
file_sharing / file_tree . cc \
2016-08-22 01:49:45 -04:00
file_sharing / rsfilelistitems . cc
2016-07-20 15:28:55 -04:00
}
2016-09-13 06:05:22 -04:00
2015-10-12 14:45:11 -04:00
dsdv {
DEFINES *= SERVICES_DSDV
2017-04-26 08:31:15 -04:00
HEADERS += unused / p3dsdv . h \
unused / rstlvdsdv . h \
unused / rsdsdvitems . h \
unused / rsdsdv . h
2015-10-12 14:45:11 -04:00
2017-04-26 08:31:15 -04:00
SOURCES *= unused / rstlvdsdv . cc \
unused / rsdsdvitems . cc \
unused / p3dsdv . cc
2015-10-12 14:45:11 -04:00
}
bitdht {
HEADERS += dht / p3bitdht . h \
2016-06-21 07:55:23 -04:00
dht / connectstatebox . h
2015-10-12 14:45:11 -04:00
SOURCES += dht / p3bitdht . cc \
dht / p3bitdht_interface . cc \
dht / p3bitdht_peers . cc \
dht / p3bitdht_peernet . cc \
dht / p3bitdht_relay . cc \
dht / connectstatebox . cc
HEADERS += tcponudp / udppeer . h \
tcponudp / bio_tou . h \
tcponudp / tcppacket . h \
tcponudp / tcpstream . h \
tcponudp / tou . h \
tcponudp / udprelay . h \
SOURCES += tcponudp / udppeer . cc \
tcponudp / tcppacket . cc \
tcponudp / tcpstream . cc \
tcponudp / tou . cc \
tcponudp / bss_tou . c \
tcponudp / udprelay . cc \
2016-06-21 07:55:23 -04:00
useDhtStunner {
HEADERS += dht / stunaddrassist . h \
tcponudp / udpstunner . h
SOURCES += tcponudp / udpstunner . cc
DEFINES += RS_USE_DHT_STUNNER
}
2015-10-12 14:45:11 -04:00
DEFINES *= RS_USE_BITDHT
BITDHT_DIR = . . /../ libbitdht / src
DEPENDPATH += . $ $ { BITDHT_DIR }
INCLUDEPATH += . $ $ { BITDHT_DIR }
PRE_TARGETDEPS *= $ $ { BITDHT_DIR } / lib / libbitdht . a
LIBS *= $ $ { BITDHT_DIR } / lib / libbitdht . a
}
PUBLIC_HEADERS = retroshare / rsdisc . h \
retroshare / rsexpr . h \
retroshare / rsfiles . h \
retroshare / rshistory . h \
retroshare / rsids . h \
retroshare / rsiface . h \
retroshare / rsinit . h \
retroshare / rsplugin . h \
retroshare / rsloginhandler . h \
retroshare / rsmsgs . h \
retroshare / rsnotify . h \
retroshare / rspeers . h \
retroshare / rsrank . h \
retroshare / rsstatus . h \
retroshare / rsturtle . h \
retroshare / rsbanlist . h \
retroshare / rstypes . h \
retroshare / rsdht . h \
retroshare / rsrtt . h \
retroshare / rsconfig . h \
retroshare / rsversion . h \
retroshare / rsservicecontrol . h \
HEADERS += plugins / pluginmanager . h \
plugins / dlfcn_win32 . h \
2017-04-28 10:44:04 -04:00
rsitems / rspluginitems . h \
2015-10-12 14:45:11 -04:00
util / rsinitedptr . h
HEADERS += $ $ PUBLIC_HEADERS
################################# Linux ##########################################
linux -* {
2016-12-03 14:04:25 -05:00
CONFIG += link_pkgconfig
2015-10-12 14:45:11 -04:00
QMAKE_CXXFLAGS *= - Wall - D_FILE_OFFSET_BITS = 64
2016-05-27 12:07:28 -04:00
QMAKE_CC = $ $ { QMAKE_CXX }
2015-10-12 14:45:11 -04:00
2016-08-02 18:48:19 -04:00
no_sqlcipher {
2015-10-12 14:45:11 -04:00
PKGCONFIG *= sqlite3
} else {
SQLCIPHER_OK = $ $ system ( pkg - config -- exists sqlcipher && echo yes )
isEmpty ( SQLCIPHER_OK ) {
# We need a explicit path here , to force using the home version of sqlite3 that really encrypts the database .
exists ( . . /../../ lib / sqlcipher /. libs / libsqlcipher . a ) {
LIBS += . . /../../ lib / sqlcipher /. libs / libsqlcipher . a
DEPENDPATH += . . /../../ lib /
INCLUDEPATH += . . /../../ lib /
} else {
2016-08-02 18:48:19 -04:00
error ( "libsqlcipher is not installed and libsqlcipher.a not found. SQLCIPHER is necessary for encrypted database, to build with unencrypted database, run: qmake CONFIG+=no_sqlcipher" )
2015-10-12 14:45:11 -04:00
}
} else {
# Workaround for broken sqlcipher packages , e . g . Ubuntu 14.04
# https : // bugs . launchpad . net / ubuntu /+ source / sqlcipher /+ bug / 1493928
# PKGCONFIG *= sqlcipher
LIBS *= - lsqlcipher
}
}
# CONFIG += version_detail_bash_script
# linux / bsd can use either - libupnp is more complete and packaged .
# CONFIG += upnp_miniupnpc
2016-08-02 18:48:19 -04:00
CONFIG += upnp_libupnp
2015-10-12 14:45:11 -04:00
# Check if the systems libupnp has been Debian - patched
system ( grep - E 'char[[:space:]]+PublisherUrl' / usr / include / upnp / upnp . h >/ dev / null 2 >& 1 ) {
# Normal libupnp
} else {
# Patched libupnp or new unreleased version
DEFINES *= PATCHED_LIBUPNP
}
PKGCONFIG *= libssl libupnp
PKGCONFIG *= libcrypto zlib
LIBS *= - lpthread - ldl
}
2017-08-04 15:38:44 -04:00
linux -* {
2015-10-12 14:45:11 -04:00
DEFINES *= PLUGIN_DIR =\ " \\\ " $ $ { PLUGIN_DIR } \\\ " \ "
DEFINES *= DATA_DIR =\ " \\\ " $ $ { DATA_DIR } \\\ " \ "
## where to put the librarys interface
# include_rsiface . path = "$${INC_DIR}"
# include_rsiface . files = $ $ PUBLIC_HEADERS
# INSTALLS += include_rsiface
## where to put the shared library itself
# target . path = "$$LIB_DIR"
# INSTALLS *= target
}
linux - g ++ {
OBJECTS_DIR = temp / linux - g ++/ obj
}
linux - g ++- 64 {
OBJECTS_DIR = temp / linux - g ++- 64 / obj
}
version_detail_bash_script {
linux -* {
QMAKE_EXTRA_TARGETS += write_version_detail
PRE_TARGETDEPS = write_version_detail
2016-05-17 13:02:14 -04:00
write_version_detail . commands = $ $ PWD / version_detail . sh
2015-10-12 14:45:11 -04:00
}
win32 {
QMAKE_EXTRA_TARGETS += write_version_detail
PRE_TARGETDEPS = write_version_detail
write_version_detail . commands = $ $ PWD / version_detail . bat
}
}
#################### Cross compilation for windows under Linux ####################
win32 - x - g ++ {
OBJECTS_DIR = temp / win32xgcc / obj
DEFINES *= WINDOWS_SYS WIN32 WIN_CROSS_UBUNTU
QMAKE_CXXFLAGS *= - Wmissing - include - dirs
QMAKE_CC = i586 - mingw32msvc - g ++
QMAKE_LIB = i586 - mingw32msvc - ar
QMAKE_AR = i586 - mingw32msvc - ar
DEFINES *= STATICLIB WIN32
CONFIG += upnp_miniupnpc
SSL_DIR =../../../../ openssl
UPNPC_DIR = . . /../../../ miniupnpc - 1.3
GPG_ERROR_DIR = . . /../../../ libgpg - error - 1.7
GPGME_DIR = . . /../../../ gpgme - 1.1 .8
INCLUDEPATH *= / usr / i586 - mingw32msvc / include $ { HOME } /. wine / drive_c / pthreads / include /
}
################################# Windows ##########################################
win32 {
2016-05-27 12:07:28 -04:00
QMAKE_CC = $ $ { QMAKE_CXX }
2015-10-12 14:45:11 -04:00
OBJECTS_DIR = temp / obj
MOC_DIR = temp / moc
DEFINES *= WINDOWS_SYS WIN32 STATICLIB MINGW WIN32_LEAN_AND_MEAN _ USE_32BIT_TIME_T
# This defines the platform to be WinXP or later and is needed for getaddrinfo ( _ WIN32_WINNT_WINXP )
DEFINES *= WINVER = 0x0501
# Switch on extra warnings
QMAKE_CFLAGS += - Wextra
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
# Switch on optimization for debug version
# QMAKE_CXXFLAGS_DEBUG += - O2
# QMAKE_CFLAGS_DEBUG += - O2
DEFINES += USE_CMD_ARGS
CONFIG += upnp_miniupnpc
2017-03-17 17:14:14 -04:00
no_sqlcipher {
PKGCONFIG *= sqlite3
LIBS += - lsqlite3
} else {
LIBS += - lsqlcipher
}
2015-10-12 14:45:11 -04:00
2015-09-23 12:25:03 -04:00
DEPENDPATH += . $ $ INC_DIR
INCLUDEPATH += . $ $ INC_DIR
2015-10-12 14:45:11 -04:00
}
################################# MacOSX ##########################################
mac {
2016-05-27 12:07:28 -04:00
QMAKE_CC = $ $ { QMAKE_CXX }
2015-10-12 14:45:11 -04:00
OBJECTS_DIR = temp / obj
MOC_DIR = temp / moc
# DEFINES = WINDOWS_SYS WIN32 STATICLIB MINGW
2016-07-16 17:10:00 -04:00
# DEFINES *= MINIUPNPC_VERSION = 13
2015-10-12 14:45:11 -04:00
CONFIG += upnp_miniupnpc
2016-08-31 01:41:22 -04:00
CONFIG += c ++ 11
2015-10-12 14:45:11 -04:00
# zeroconf disabled at the end of libretroshare . pro ( but need the code )
# CONFIG += zeroconf
# CONFIG += zcnatassist
# Beautiful Hack to fix 64 bit file access .
2016-07-16 17:10:00 -04:00
QMAKE_CXXFLAGS *= - Dfseeko64 = fseeko - Dftello64 = ftello - Dfopen64 = fopen - Dvstatfs64 = vstatfs
2015-10-12 14:45:11 -04:00
# GPG_ERROR_DIR = . . /../../../ libgpg - error - 1.7
# GPGME_DIR = . . /../../../ gpgme - 1.1 .8
2015-12-21 11:25:02 -05:00
for ( lib , LIB_DIR ) : LIBS += - L "$$lib"
for ( bin , BIN_DIR ) : LIBS += - L "$$bin"
2015-10-12 14:45:11 -04:00
2015-12-21 11:25:02 -05:00
DEPENDPATH += . $ $ INC_DIR
INCLUDEPATH += . $ $ INC_DIR
2016-07-16 17:10:00 -04:00
INCLUDEPATH += . . /../../.
2015-10-12 14:45:11 -04:00
# We need a explicit path here , to force using the home version of sqlite3 that really encrypts the database .
2015-11-20 11:10:59 -05:00
LIBS += / usr / local / lib / libsqlcipher . a
2015-10-12 14:45:11 -04:00
# LIBS += - lsqlite3
2017-08-12 05:49:33 -04:00
DEFINES *= PLUGIN_DIR =\ " \\\ " $ $ { PLUGIN_DIR } \\\ " \ "
DEFINES *= DATA_DIR =\ " \\\ " $ $ { DATA_DIR } \\\ " \ "
2015-10-12 14:45:11 -04:00
}
################################# FreeBSD ##########################################
freebsd -* {
INCLUDEPATH *= / usr / local / include / gpgme
INCLUDEPATH *= / usr / local / include / glib - 2.0
QMAKE_CXXFLAGS *= - Dfseeko64 = fseeko - Dftello64 = ftello - Dstat64 = stat - Dstatvfs64 = statvfs - Dfopen64 = fopen
# linux / bsd can use either - libupnp is more complete and packaged .
# CONFIG += upnp_miniupnpc
2016-08-02 18:48:19 -04:00
CONFIG += upnp_libupnp
2015-10-12 14:45:11 -04:00
}
################################# OpenBSD ##########################################
openbsd -* {
INCLUDEPATH *= / usr / local / include
INCLUDEPATH += $ $ system ( pkg - config -- cflags glib - 2.0 | sed - e "s/-I//g" )
QMAKE_CXXFLAGS *= - Dfseeko64 = fseeko - Dftello64 = ftello - Dstat64 = stat - Dstatvfs64 = statvfs - Dfopen64 = fopen
CONFIG += upnp_libupnp
}
2015-10-20 12:41:40 -04:00
################################# Haiku ##########################################
haiku -* {
QMAKE_CXXFLAGS *= - Dfseeko64 = fseeko - Dftello64 = ftello - Dstat64 = stat - Dstatvfs64 = statvfs - Dfopen64 = fopen
OPENPGPSDK_DIR = . . /../ openpgpsdk / src
INCLUDEPATH *= $ $ { OPENPGPSDK_DIR } . . / openpgpsdk
DEFINES *= NO_SQLCIPHER
CONFIG += release
CONFIG += upnp_libupnp
DESTDIR = lib
}
2015-10-12 14:45:11 -04:00
################################### COMMON stuff ##################################
# openpgpsdk
OPENPGPSDK_DIR = . . /../ openpgpsdk / src
DEPENDPATH *= $ $ { OPENPGPSDK_DIR }
INCLUDEPATH *= $ $ { OPENPGPSDK_DIR }
PRE_TARGETDEPS *= $ $ { OPENPGPSDK_DIR } / lib / libops . a
LIBS *= $ $ { OPENPGPSDK_DIR } / lib / libops . a - lbz2
HEADERS += ft / ftchunkmap . h \
ft / ftcontroller . h \
ft / ftdata . h \
ft / ftdatamultiplex . h \
ft / ftextralist . h \
ft / ftfilecreator . h \
ft / ftfileprovider . h \
ft / ftfilesearch . h \
ft / ftsearch . h \
ft / ftserver . h \
ft / fttransfermodule . h \
ft / ftturtlefiletransferitem . h
2017-01-05 17:07:59 -05:00
HEADERS += crypto / chacha20 . h \
crypto / hashstream . h
2016-10-13 09:13:56 -04:00
2016-04-14 18:25:12 -04:00
HEADERS += directory_updater . h \
directory_list . h \
p3filelists . h
2015-10-12 14:45:11 -04:00
HEADERS += chat / distantchat . h \
chat / p3chatservice . h \
chat / distributedchat . h \
chat / rschatitems . h
HEADERS += pqi / authssl . h \
pqi / authgpg . h \
pgp / pgphandler . h \
pgp / pgpkeyutil . h \
pgp / rsaes . h \
pgp / rscertificate . h \
pgp / pgpauxutils . h \
pqi / p3cfgmgr . h \
pqi / p3peermgr . h \
pqi / p3linkmgr . h \
pqi / p3netmgr . h \
pqi / p3notify . h \
pqi / p3upnpmgr . h \
pqi / pqiqos . h \
pqi / pqi . h \
pqi / pqi_base . h \
pqi / pqiarchive . h \
pqi / pqiassist . h \
pqi / pqibin . h \
pqi / pqihandler . h \
pqi / pqihash . h \
pqi / p3historymgr . h \
pqi / pqiindic . h \
pqi / pqiipset . h \
pqi / pqilistener . h \
pqi / pqiloopback . h \
pqi / pqimonitor . h \
pqi / pqinetwork . h \
pqi / pqiperson . h \
pqi / pqipersongrp . h \
pqi / pqiservice . h \
pqi / pqissl . h \
pqi / pqissllistener . h \
pqi / pqisslpersongrp . h \
2016-10-09 08:32:52 -04:00
pqi / pqissli2pbob . h \
2015-10-12 14:45:11 -04:00
pqi / pqissludp . h \
pqi / pqisslproxy . h \
pqi / pqistore . h \
pqi / pqistreamer . h \
pqi / pqithreadstreamer . h \
pqi / pqiqosstreamer . h \
pqi / sslfns . h \
pqi / pqinetstatebox . h \
pqi / p3servicecontrol . h \
# pqi / p3dhtmgr . h \
HEADERS += rsserver / p3face . h \
rsserver / p3history . h \
rsserver / p3msgs . h \
rsserver / p3peers . h \
rsserver / p3status . h \
rsserver / rsaccounts . h \
rsserver / p3serverconfig . h
HEADERS += grouter / groutercache . h \
grouter / rsgrouter . h \
grouter / grouteritems . h \
grouter / p3grouter . h \
grouter / rsgroutermatrix . h \
grouter / groutertypes . h \
grouter / rsgrouterclient . h
2017-04-26 05:40:46 -04:00
HEADERS += rsitems / rsitem . h \
rsitems / itempriorities . h \
2015-10-12 14:45:11 -04:00
serialiser / rsbaseserial . h \
2017-04-18 15:11:37 -04:00
rsitems / rsfiletransferitems . h \
2017-04-24 16:47:08 -04:00
rsitems / rsconfigitems . h \
rsitems / rshistoryitems . h \
2017-04-24 05:01:45 -04:00
rsitems / rsmsgitems . h \
2015-10-12 14:45:11 -04:00
serialiser / rsserial . h \
2017-04-18 15:11:37 -04:00
rsitems / rsserviceids . h \
2015-10-12 14:45:11 -04:00
serialiser / rsserviceitems . h \
2017-04-27 15:24:27 -04:00
rsitems / rsstatusitems . h \
2015-10-12 14:45:11 -04:00
serialiser / rstlvaddrs . h \
serialiser / rstlvbase . h \
serialiser / rstlvitem . h \
serialiser / rstlvidset . h \
serialiser / rstlvfileitem . h \
serialiser / rstlvimage . h \
serialiser / rstlvstring . h \
serialiser / rstlvbinary . h \
serialiser / rstlvkeys . h \
serialiser / rstlvkeyvalue . h \
serialiser / rstlvgenericparam . h \
serialiser / rstlvgenericmap . h \
serialiser / rstlvgenericmap . inl \
serialiser / rstlvlist . h \
serialiser / rstlvmaps . h \
serialiser / rstlvbanlist . h \
2017-04-18 15:11:37 -04:00
rsitems / rsbanlistitems . h \
rsitems / rsbwctrlitems . h \
2017-04-23 13:07:26 -04:00
rsitems / rsdiscovery2items . h \
2017-04-27 15:10:22 -04:00
rsitems / rsheartbeatitems . h \
2017-04-24 05:06:51 -04:00
rsitems / rsrttitems . h \
2017-04-28 17:32:47 -04:00
rsitems / rsgxsrecognitems . h \
2017-04-28 10:30:33 -04:00
rsitems / rsgxsupdateitems . h \
2017-04-28 11:47:41 -04:00
rsitems / rsserviceinfoitems . h \
2015-10-12 14:45:11 -04:00
2016-10-09 08:32:52 -04:00
HEADERS += services / autoproxy / p3i2pbob . h \
services / autoproxy / rsautoproxymonitor . h \
services / p3msgservice . h \
2015-10-12 14:45:11 -04:00
services / p3service . h \
services / p3statusservice . h \
services / p3banlist . h \
services / p3bwctrl . h \
services / p3discovery2 . h \
services / p3heartbeat . h \
services / p3rtt . h \
services / p3serviceinfo . cc \
HEADERS += turtle / p3turtle . h \
turtle / rsturtleitem . h \
turtle / turtletypes . h \
turtle / turtleclientservice . h
HEADERS += util / folderiterator . h \
util / rsdebug . h \
2016-01-12 21:10:11 -05:00
util / rsmemory . h \
2015-10-12 14:45:11 -04:00
util / rscompress . h \
util / smallobject . h \
util / rsdir . h \
util / rsdiscspace . h \
util / rsnet . h \
util / extaddrfinder . h \
util / dnsresolver . h \
2016-10-09 08:32:52 -04:00
util / radix32 . h \
util / radix64 . h \
util / rsinitedptr . h \
2015-10-12 14:45:11 -04:00
util / rsprint . h \
util / rsstring . h \
util / rsstd . h \
util / rsthreads . h \
util / rsversioninfo . h \
util / rswin . h \
util / rsrandom . h \
util / pugiconfig . h \
util / rsmemcache . h \
util / rstickevent . h \
util / rsrecogn . h \
2015-12-31 09:42:22 -05:00
util / rsscopetimer . h \
2016-12-07 14:09:14 -05:00
util / stacktrace . h \
2017-05-08 10:57:37 -04:00
util / rsdeprecate . h \
util / cxx11retrocompat . h
2015-10-12 14:45:11 -04:00
SOURCES += ft / ftchunkmap . cc \
ft / ftcontroller . cc \
ft / ftdatamultiplex . cc \
ft / ftextralist . cc \
ft / ftfilecreator . cc \
ft / ftfileprovider . cc \
ft / ftfilesearch . cc \
ft / ftserver . cc \
ft / fttransfermodule . cc \
ft / ftturtlefiletransferitem . cc
2017-01-05 17:07:59 -05:00
SOURCES += crypto / chacha20 . cpp \
crypto / hashstream . cc
2016-10-13 09:13:56 -04:00
2015-10-12 14:45:11 -04:00
SOURCES += chat / distantchat . cc \
chat / p3chatservice . cc \
chat / distributedchat . cc \
chat / rschatitems . cc
SOURCES += pqi / authgpg . cc \
pqi / authssl . cc \
pgp / pgphandler . cc \
pgp / pgpkeyutil . cc \
pgp / rscertificate . cc \
pgp / pgpauxutils . cc \
pqi / p3cfgmgr . cc \
pqi / p3peermgr . cc \
pqi / p3linkmgr . cc \
pqi / p3netmgr . cc \
pqi / p3notify . cc \
pqi / pqiqos . cc \
pqi / pqiarchive . cc \
pqi / pqibin . cc \
pqi / pqihandler . cc \
pqi / p3historymgr . cc \
pqi / pqiipset . cc \
pqi / pqiloopback . cc \
pqi / pqimonitor . cc \
pqi / pqinetwork . cc \
pqi / pqiperson . cc \
pqi / pqipersongrp . cc \
pqi / pqiservice . cc \
pqi / pqissl . cc \
pqi / pqissllistener . cc \
pqi / pqisslpersongrp . cc \
2016-10-09 08:32:52 -04:00
pqi / pqissli2pbob . cpp \
2015-10-12 14:45:11 -04:00
pqi / pqissludp . cc \
pqi / pqisslproxy . cc \
pqi / pqistore . cc \
pqi / pqistreamer . cc \
pqi / pqithreadstreamer . cc \
pqi / pqiqosstreamer . cc \
pqi / sslfns . cc \
pqi / pqinetstatebox . cc \
pqi / p3servicecontrol . cc \
# pqi / p3dhtmgr . cc \
SOURCES += rsserver / p3face - config . cc \
rsserver / p3face - server . cc \
rsserver / p3face - info . cc \
rsserver / p3history . cc \
rsserver / p3msgs . cc \
rsserver / p3peers . cc \
rsserver / p3status . cc \
rsserver / rsinit . cc \
rsserver / rsaccounts . cc \
rsserver / rsloginhandler . cc \
rsserver / rstypes . cc \
rsserver / p3serverconfig . cc
SOURCES += grouter / p3grouter . cc \
grouter / grouteritems . cc \
grouter / groutermatrix . cc
SOURCES += plugins / pluginmanager . cc \
2017-04-28 10:44:04 -04:00
plugins / dlfcn_win32 . cc
2015-10-12 14:45:11 -04:00
SOURCES += serialiser / rsbaseserial . cc \
2017-04-18 15:11:37 -04:00
rsitems / rsfiletransferitems . cc \
2017-04-24 16:47:08 -04:00
rsitems / rsconfigitems . cc \
rsitems / rshistoryitems . cc \
2017-04-24 05:01:45 -04:00
rsitems / rsmsgitems . cc \
2015-10-12 14:45:11 -04:00
serialiser / rsserial . cc \
serialiser / rstlvaddrs . cc \
serialiser / rstlvbase . cc \
serialiser / rstlvitem . cc \
serialiser / rstlvidset . cc \
serialiser / rstlvfileitem . cc \
serialiser / rstlvimage . cc \
serialiser / rstlvstring . cc \
serialiser / rstlvbinary . cc \
serialiser / rstlvkeys . cc \
serialiser / rstlvkeyvalue . cc \
serialiser / rstlvgenericparam . cc \
serialiser / rstlvbanlist . cc \
2017-04-18 15:11:37 -04:00
rsitems / rsbanlistitems . cc \
rsitems / rsbwctrlitems . cc \
2017-04-23 13:07:26 -04:00
rsitems / rsdiscovery2items . cc \
2017-04-24 05:06:51 -04:00
rsitems / rsrttitems . cc \
2017-04-28 17:32:47 -04:00
rsitems / rsgxsrecognitems . cc \
2017-04-28 10:30:33 -04:00
rsitems / rsgxsupdateitems . cc \
2017-04-28 11:47:41 -04:00
rsitems / rsserviceinfoitems . cc \
2015-10-12 14:45:11 -04:00
2016-10-09 08:32:52 -04:00
SOURCES += services / autoproxy / rsautoproxymonitor . cc \
services / autoproxy / p3i2pbob . cc \
services / p3msgservice . cc \
2015-10-12 14:45:11 -04:00
services / p3service . cc \
services / p3statusservice . cc \
services / p3banlist . cc \
services / p3bwctrl . cc \
services / p3discovery2 . cc \
services / p3heartbeat . cc \
services / p3rtt . cc \
services / p3serviceinfo . cc \
SOURCES += turtle / p3turtle . cc \
turtle / rsturtleitem . cc
# turtle / turtlerouting . cc \
# turtle / turtlesearch . cc \
# turtle / turtletunnels . cc
SOURCES += util / folderiterator . cc \
util / rsdebug . cc \
2016-09-13 06:14:16 -04:00
util / rsexpr . cc \
2015-10-12 14:45:11 -04:00
util / rscompress . cc \
util / smallobject . cc \
util / rsdir . cc \
2016-01-12 21:10:11 -05:00
util / rsmemory . cc \
2015-10-12 14:45:11 -04:00
util / rsdiscspace . cc \
util / rsnet . cc \
util / rsnet_ss . cc \
util / extaddrfinder . cc \
util / dnsresolver . cc \
util / rsprint . cc \
util / rsstring . cc \
util / rsthreads . cc \
util / rsversioninfo . cc \
util / rswin . cc \
util / rsaes . cc \
util / rsrandom . cc \
util / rstickevent . cc \
util / rsrecogn . cc \
util / rsscopetimer . cc
upnp_miniupnpc {
HEADERS += upnp / upnputil . h upnp / upnphandler_miniupnp . h
SOURCES += upnp / upnputil . c upnp / upnphandler_miniupnp . cc
}
upnp_libupnp {
HEADERS += upnp / UPnPBase . h upnp / upnphandler_linux . h
SOURCES += upnp / UPnPBase . cpp upnp / upnphandler_linux . cc
DEFINES *= RS_USE_LIBUPNP
}
zeroconf {
HEADERS += zeroconf / p3zeroconf . h \
SOURCES += zeroconf / p3zeroconf . cc \
# Disable Zeroconf ( we still need the code for zcnatassist
# DEFINES *= RS_ENABLE_ZEROCONF
}
# This is seperated from the above for windows / linux platforms .
# It is acceptable to build in zeroconf and have it not work ,
# but unacceptable to rely on Apple 's libraries for Upnp when we have alternatives. '
zcnatassist {
HEADERS += zeroconf / p3zcnatassist . h \
SOURCES += zeroconf / p3zcnatassist . cc \
DEFINES *= RS_ENABLE_ZCNATASSIST
}
# new gxs cache system
# this should be disabled for releases until further notice .
DEFINES *= SQLITE_HAS_CODEC
DEFINES *= GXS_ENABLE_SYNC_MSGS
2017-04-27 08:21:46 -04:00
HEADERS += rsitems / rsnxsitems . h \
2015-10-12 14:45:11 -04:00
gxs / rsgds . h \
gxs / rsgxs . h \
gxs / rsdataservice . h \
gxs / rsgxsnetservice . h \
retroshare / rsgxsflags . h \
retroshare / rsgxsifacetypes . h \
gxs / rsgenexchange . h \
gxs / rsnxsobserver . h \
gxs / rsgxsdata . h \
retroshare / rstokenservice . h \
gxs / rsgxsdataaccess . h \
retroshare / rsgxsservice . h \
2017-04-26 08:28:25 -04:00
rsitems / rsgxsitems . h \
2015-10-12 14:45:11 -04:00
util / retrodb . h \
util / rsdbbind . h \
gxs / rsgxsutil . h \
util / contentvalue . h \
gxs / gxssecurity . h \
gxs / rsgxsifacehelper . h \
gxs / gxstokenqueue . h \
gxs / rsgxsnetutils . h \
gxs / rsgxsiface . h \
gxs / rsgxsrequesttypes . h
2017-04-27 08:21:46 -04:00
SOURCES += rsitems / rsnxsitems . cc \
2015-10-12 14:45:11 -04:00
gxs / rsdataservice . cc \
gxs / rsgenexchange . cc \
gxs / rsgxsnetservice . cc \
gxs / rsgxsdata . cc \
2017-04-26 08:28:25 -04:00
rsitems / rsgxsitems . cc \
2015-10-12 14:45:11 -04:00
gxs / rsgxsdataaccess . cc \
util / retrodb . cc \
util / contentvalue . cc \
util / rsdbbind . cc \
gxs / gxssecurity . cc \
gxs / gxstokenqueue . cc \
gxs / rsgxsnetutils . cc \
gxs / rsgxsutil . cc \
gxs / rsgxsrequesttypes . cc
2015-12-04 21:24:51 -05:00
# gxs tunnels
HEADERS += gxstunnel / p3gxstunnel . h \
gxstunnel / rsgxstunnelitems . h \
retroshare / rsgxstunnel . h
SOURCES += gxstunnel / p3gxstunnel . cc \
gxstunnel / rsgxstunnelitems . cc
2015-10-12 14:45:11 -04:00
2017-04-02 08:48:17 -04:00
# new serialization code
2017-04-30 10:05:37 -04:00
HEADERS += serialiser / rsserializer . h \
serialiser / rstypeserializer . h
2017-04-02 08:48:17 -04:00
2017-04-30 10:05:37 -04:00
SOURCES += serialiser / rsserializer . cc \
serialiser / rstypeserializer . cc
2017-04-02 08:48:17 -04:00
2015-10-12 14:45:11 -04:00
# Identity Service
HEADERS += retroshare / rsidentity . h \
gxs / rsgixs . h \
services / p3idservice . h \
2017-04-26 08:28:25 -04:00
rsitems / rsgxsiditems . h \
2015-10-12 14:45:11 -04:00
services / p3gxsreputation . h \
2017-04-22 15:36:39 -04:00
rsitems / rsgxsreputationitems . h \
2015-10-12 14:45:11 -04:00
SOURCES += services / p3idservice . cc \
2017-04-26 08:28:25 -04:00
rsitems / rsgxsiditems . cc \
2015-10-12 14:45:11 -04:00
services / p3gxsreputation . cc \
2017-04-22 15:36:39 -04:00
rsitems / rsgxsreputationitems . cc \
2015-10-12 14:45:11 -04:00
# GxsCircles Service
HEADERS += services / p3gxscircles . h \
2017-04-26 14:59:59 -04:00
rsitems / rsgxscircleitems . h \
2015-10-12 14:45:11 -04:00
retroshare / rsgxscircles . h \
SOURCES += services / p3gxscircles . cc \
2017-04-26 14:59:59 -04:00
rsitems / rsgxscircleitems . cc \
2015-10-12 14:45:11 -04:00
# GxsForums Service
HEADERS += retroshare / rsgxsforums . h \
services / p3gxsforums . h \
2017-04-27 05:59:18 -04:00
rsitems / rsgxsforumitems . h
2015-10-12 14:45:11 -04:00
SOURCES += services / p3gxsforums . cc \
2017-04-27 05:59:18 -04:00
rsitems / rsgxsforumitems . cc \
2015-10-12 14:45:11 -04:00
# GxsChannels Service
HEADERS += retroshare / rsgxschannels . h \
services / p3gxschannels . h \
services / p3gxscommon . h \
2017-04-26 08:28:25 -04:00
rsitems / rsgxscommentitems . h \
2017-04-26 14:15:54 -04:00
rsitems / rsgxschannelitems . h \
2015-10-12 14:45:11 -04:00
SOURCES += services / p3gxschannels . cc \
services / p3gxscommon . cc \
2017-04-26 08:28:25 -04:00
rsitems / rsgxscommentitems . cc \
2017-04-26 14:15:54 -04:00
rsitems / rsgxschannelitems . cc \
2015-10-12 14:45:11 -04:00
wikipoos {
# Wiki Service
HEADERS += retroshare / rswiki . h \
services / p3wiki . h \
2017-04-29 15:50:55 -04:00
rsitems / rswikiitems . h
2015-10-12 14:45:11 -04:00
SOURCES += services / p3wiki . cc \
2017-04-29 15:50:55 -04:00
rsitems / rswikiitems . cc \
2015-10-12 14:45:11 -04:00
}
gxsthewire {
# Wire Service
HEADERS += retroshare / rswire . h \
services / p3wire . h \
2017-04-29 15:50:55 -04:00
rsitems / rswireitems . h
2015-10-12 14:45:11 -04:00
SOURCES += services / p3wire . cc \
2017-04-29 15:50:55 -04:00
rsitems / rswireitems . cc \
2015-10-12 14:45:11 -04:00
}
# Posted Service
HEADERS += services / p3postbase . h \
services / p3posted . h \
retroshare / rsposted . h \
2017-04-27 08:44:41 -04:00
rsitems / rsposteditems . h
2015-10-12 14:45:11 -04:00
SOURCES += services / p3postbase . cc \
services / p3posted . cc \
2017-04-27 08:44:41 -04:00
rsitems / rsposteditems . cc
2015-10-12 14:45:11 -04:00
gxsphotoshare {
# Photo Service
HEADERS += services / p3photoservice . h \
retroshare / rsphoto . h \
2017-04-28 12:51:35 -04:00
rsitems / rsphotoitems . h \
2015-10-12 14:45:11 -04:00
SOURCES += services / p3photoservice . cc \
2017-04-28 12:51:35 -04:00
rsitems / rsphotoitems . cc \
2015-10-12 14:45:11 -04:00
}
2017-03-01 20:37:53 -05:00
rs_gxs_trans {
HEADERS += gxstrans / p3gxstransitems . h gxstrans / p3gxstrans . h
SOURCES += gxstrans / p3gxstransitems . cc gxstrans / p3gxstrans . cc
2017-01-14 17:20:42 -05:00
}
2015-10-12 14:45:11 -04:00
###########################################################################################################
# OLD CONFIG OPTIONS .
# Not used much - but might be useful one day .
#
testnetwork {
# used in rsserver / rsinit . cc Enabled Port Restrictions , and makes Proxy Port next to Dht Port .
DEFINES *= LOCALNET_TESTING
# used in tcponudp / udprelay . cc Debugging Info for Relays .
DEFINES *= DEBUG_UDP_RELAY
# used in tcponudp / udpstunner . [ h | cc ] enables local stun ( careful - modifies class variables ) .
DEFINES *= UDPSTUN_ALLOW_LOCALNET
# used in pqi / p3linkmgr . cc prints out extra debug .
DEFINES *= LINKMGR_DEBUG_LINKTYPE
# used in dht / connectstatebox to reduce connection times and display debug .
# DEFINES *= TESTING_PERIODS
# DEFINES *= DEBUG_CONNECTBOX
}
test_bitdht {
# DISABLE TCP CONNECTIONS . . .
DEFINES *= P3CONNMGR_NO_TCP_CONNECTIONS
# NO AUTO CONNECTIONS ??? FOR TESTING DHT STATUS .
DEFINES *= P3CONNMGR_NO_AUTO_CONNECTION
# ENABLED UDP NOW .
}
2016-09-04 09:01:44 -04:00
################################# Android #####################################
android - g ++ {
2017-10-16 14:07:52 -04:00
## ifaddrs is missing on Android to add them don ' t use the one from
2016-09-21 06:46:55 -04:00
## https : // github . com / morristech / android - ifaddrs
## because they crash , use QNetworkInterface from Qt instead
CONFIG *= qt
QT *= network
2016-09-04 09:01:44 -04:00
## Add this here and not in retroshare . pri because static library are very
## sensible to order in command line , has to be in the end of file for the
## same reason
2017-03-15 18:11:50 -04:00
LIBS += - L $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / lib / - lssl
INCLUDEPATH += $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / include
DEPENDPATH += $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / include
PRE_TARGETDEPS += $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / lib / libssl . a
LIBS += - L $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / lib / - lcrypto
INCLUDEPATH += $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / include
DEPENDPATH += $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / include
PRE_TARGETDEPS += $ $ NATIVE_LIBS_TOOLCHAIN_PATH / sysroot / usr / lib / libcrypto . a
2016-12-21 18:33:34 -05:00
HEADERS += util / androiddebug . h
2016-09-04 09:01:44 -04:00
}