RetroShare/libretroshare/src/libretroshare.pro
leander-256 c85fa705ba Two different improvements:
- since libretroshare doesn't use Qt at all, we remove it from the CONFIG
directive,
- adding files in HEADERS doesn't include them for compilation but only for
installation. Instead we must use gpg-error-config and gpgme-config to fill
correctly INCLUDEPATH.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@2856 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2010-05-06 11:06:14 +00:00

428 lines
12 KiB
Prolog

TEMPLATE = lib
CONFIG += staticlib release
CONFIG -= qt
TARGET = retroshare
profiling {
QMAKE_CXXFLAGS -= -fomit-frame-pointer
QMAKE_CXXFLAGS *= -pg -g -fno-omit-frame-pointer
}
#CONFIG += debug
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 -= -fomit-frame-pointer
QMAKE_CXXFLAGS *= -g -fno-omit-frame-pointer
}
################################# Linux ##########################################
linux-* {
DESTDIR = lib
QMAKE_CXXFLAGS *= -Wall -D_FILE_OFFSET_BITS=64
QMAKE_CC = g++
SSL_DIR = /usr/include/openssl
UPNP_DIR = /usr/include/upnp
INCLUDEPATH += . $${SSL_DIR} $${UPNP_DIR}
#gpg files
system(which gpg-error-config >/dev/null 2>&1) {
INCLUDEPATH += $$system(gpg-error-config --cflags | sed -e "s/-I//g")
} else {
message(Could not find gpg-error-config on your system, assuming gpg-error.h is in /usr/include)
}
system(which gpgme-config >/dev/null 2>&1) {
INCLUDEPATH += $$system(gpgme-config --cflags | sed -e "s/-I//g")
} else {
message(Could not find gpgme-config on your system, assuming gpgme.h is in /usr/include)
}
#libupnp implementation files
HEADERS += upnp/UPnPBase.h
SOURCES += upnp/UPnPBase.cpp
#CONFIG += version_detail_bash_script
}
linux-g++ {
OBJECTS_DIR = temp/linux-g++/obj
}
linux-g++-64 {
OBJECTS_DIR = temp/linux-g++-64/obj
}
version_detail_bash_script {
QMAKE_EXTRA_TARGETS += write_version_detail
PRE_TARGETDEPS = write_version_detail
write_version_detail.commands = ./version_detail.sh
}
#################### Cross compilation for windows under Linux ####################
win32-x-g++ {
OBJECTS_DIR = temp/win32xgcc/obj
DESTDIR = lib.win32xgcc
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
#miniupnp implementation files
HEADERS += upnp/upnputil.h
SOURCES += upnp/upnputil.c
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 {
QMAKE_CC = g++
OBJECTS_DIR = temp/obj
MOC_DIR = temp/moc
DEFINES = WINDOWS_SYS WIN32 STATICLIB MINGW
DEFINES *= MINIUPNPC_VERSION=13
DESTDIR = lib
#miniupnp implementation files
HEADERS += upnp/upnputil.h
SOURCES += upnp/upnputil.c
UPNPC_DIR = ../../../../miniupnpc-1.3
GPG_ERROR_DIR = ../../../../libgpg-error-1.7
GPGME_DIR = ../../../../gpgme-1.1.8
PTHREADS_DIR = ../../../../pthreads-w32-2-8-0-release
ZLIB_DIR = ../../../../zlib-1.2.3
SSL_DIR = ../../../../OpenSSL
INCLUDEPATH += . $${SSL_DIR}/include $${UPNPC_DIR} $${PTHREADS_DIR} $${ZLIB_DIR} $${GPGME_DIR}/src $${GPG_ERROR_DIR}/src
}
################################# MacOSX ##########################################
mac {
QMAKE_CC = g++
OBJECTS_DIR = temp/obj
MOC_DIR = temp/moc
#DEFINES = WINDOWS_SYS WIN32 STATICLIB MINGW
#DEFINES *= MINIUPNPC_VERSION=13
DESTDIR = lib
#miniupnp implementation files
HEADERS += upnp/upnputil.h
SOURCES += upnp/upnputil.c
# Beautiful Hack to fix 64bit file access.
QMAKE_CXXFLAGS *= -Dfseeko64=fseeko -Dftello64=ftello -Dfopen64=fopen
UPNPC_DIR = ../../../miniupnpc-1.0
GPG_ERROR_DIR = ../../../../libgpg-error-1.7
GPGME_DIR = ../../../../gpgme-1.1.8
INCLUDEPATH += . $${UPNPC_DIR}
#INCLUDEPATH += . $${UPNPC_DIR} $${GPGME_DIR}/src $${GPG_ERROR_DIR}/src
}
################################### COMMON stuff ##################################
################################### COMMON stuff ##################################
#DEPENDPATH += . \
# util \
# tcponudp \
# serialiser \
# pqi \
# dbase \
# services \
# dht \
# upnp \
# ft \
# rsserver
#INCLUDEPATH += . \
# util \
# tcponudp \
# serialiser \
# pqi \
# dbase \
# services \
# dht \
# upnp \
# ft \
# rsserver
# Input
HEADERS += dbase/cachestrapper.h \
dbase/fimonitor.h \
dbase/findex.h \
dbase/fistore.h \
dht/b64.h \
dht/dhtclient.h \
dht/opendht.h \
dht/opendhtmgr.h \
dht/opendhtstr.h \
ft/ftcontroller.h \
ft/ftdata.h \
ft/ftdatamultiplex.h \
ft/ftdbase.h \
ft/ftextralist.h \
ft/ftfilecreator.h \
ft/ftfileprovider.h \
ft/ftfilesearch.h \
ft/ftsearch.h \
ft/ftchunkmap.h \
ft/ftserver.h \
ft/fttransfermodule.h \
# ft/ftdwlqueue.h \
pqi/authssl.h \
pqi/authgpg.h \
pqi/cleanupxpgp.h \
# pqi/p3authmgr.h \
pqi/p3cfgmgr.h \
pqi/p3connmgr.h \
pqi/p3dhtmgr.h \
pqi/p3notify.h \
pqi/p3upnpmgr.h \
pqi/pqi.h \
pqi/pqi_base.h \
pqi/pqiarchive.h \
pqi/pqiassist.h \
pqi/pqibin.h \
pqi/pqihandler.h \
pqi/pqihash.h \
pqi/pqiindic.h \
pqi/pqilistener.h \
pqi/pqiloopback.h \
pqi/pqimonitor.h \
pqi/pqinetwork.h \
pqi/pqinotify.h \
pqi/pqiperson.h \
pqi/pqipersongrp.h \
pqi/pqisecurity.h \
pqi/pqiservice.h \
pqi/pqistore.h \
pqi/pqissl.h \
pqi/pqissltunnel.h \
pqi/pqissllistener.h \
pqi/pqisslpersongrp.h \
pqi/pqissludp.h \
pqi/pqistreamer.h \
pqi/sslcert.h \
pqi/xpgpcert.h \
rsiface/rschannels.h \
rsiface/rsdisc.h \
rsiface/rsdistrib.h \
rsiface/rsexpr.h \
rsiface/rsfiles.h \
rsiface/rsforums.h \
rsiface/rsgame.h \
rsiface/rsiface.h \
rsiface/rsmsgs.h \
rsiface/rsnotify.h \
rsiface/rspeers.h \
rsiface/rsphoto.h \
rsiface/rsQblog.h \
rsiface/rsblogs.h \
rsiface/rsrank.h \
rsiface/rsstatus.h \
rsiface/rstypes.h \
rsserver/p3blog.h \
rsserver/p3discovery.h \
rsserver/p3face.h \
rsserver/p3msgs.h \
rsserver/p3peers.h \
rsserver/p3photo.h \
rsserver/p3rank.h \
rsserver/p3status.h \
serialiser/rsbaseitems.h \
serialiser/rsbaseserial.h \
serialiser/rschannelitems.h \
serialiser/rstunnelitems.h \
serialiser/rsconfigitems.h \
serialiser/rsdiscitems.h \
serialiser/rsdistribitems.h \
serialiser/rsforumitems.h \
serialiser/rsgameitems.h \
serialiser/rsmsgitems.h \
serialiser/rsphotoitems.h \
serialiser/rsqblogitems.h \
serialiser/rsblogitems.h \
serialiser/rsrankitems.h \
serialiser/rsserial.h \
serialiser/rsserviceids.h \
serialiser/rsserviceitems.h \
serialiser/rsstatusitems.h \
serialiser/rstlvbase.h \
serialiser/rstlvkeys.h \
serialiser/rstlvkvwide.h \
serialiser/rstlvtypes.h \
serialiser/rstlvutil.h \
services/p3channels.h \
services/p3chatservice.h \
services/p3disc.h \
services/p3tunnel.h \
services/p3distrib.h \
services/p3forums.h \
services/p3gamelauncher.h \
services/p3gameservice.h \
services/p3msgservice.h \
services/p3photoservice.h \
services/p3Qblog.h \
services/p3blogs.h \
services/p3ranking.h \
services/p3service.h \
services/p3statusservice.h \
turtle/p3turtle.h \
turtle/turtletypes.h \
turtle/rsturtleitem.h \
tcponudp/extaddrfinder.h \
tcponudp/bio_tou.h \
tcponudp/tcppacket.h \
tcponudp/tcpstream.h \
tcponudp/tou.h \
tcponudp/tou_errno.h \
tcponudp/tou_net.h \
tcponudp/udplayer.h \
tcponudp/udpsorter.h \
upnp/upnphandler.h \
util/rsdebug.h \
util/rsdir.h \
util/rsnet.h \
util/rsprint.h \
util/rsthreads.h \
util/rswin.h \
util/rsversion.h
SOURCES += \
dht/dht_check_peers.cc \
dht/dht_bootstrap.cc \
rsserver/p3face-msgs.cc \
rsserver/rsiface.cc \
rsserver/rstypes.cc \
rsserver/rsinit.cc \
rsserver/p3face-config.cc \
rsserver/p3face-server.cc \
rsserver/p3blog.cc \
rsserver/p3discovery.cc \
rsserver/p3msgs.cc \
rsserver/p3photo.cc \
rsserver/p3rank.cc \
rsserver/p3peers.cc \
rsserver/p3status.cc \
ft/ftcontroller.cc \
ft/ftserver.cc \
ft/ftdbase.cc \
ft/fttransfermodule.cc \
ft/ftdatamultiplex.cc \
ft/ftfilesearch.cc \
ft/ftextralist.cc \
ft/ftfilecreator.cc \
ft/ftdata.cc \
ft/ftchunkmap.cc \
ft/ftfileprovider.cc \
# ft/ftdwlqueue.cc \
dht/opendhtmgr.cc \
upnp/upnphandler.cc \
dht/opendht.cc \
dht/opendhtstr.cc \
dht/b64.cc \
services/p3channels.cc \
services/p3forums.cc \
services/p3blogs.cc \
services/p3Qblog.cc \
services/p3statusservice.cc \
services/p3distrib.cc \
services/p3photoservice.cc \
services/p3disc.cc \
services/p3tunnel.cc \
services/p3ranking.cc \
services/p3gamelauncher.cc \
services/p3msgservice.cc \
services/p3chatservice.cc \
services/p3service.cc \
turtle/p3turtle.cc \
turtle/rsturtleitem.cc \
dbase/rsexpr.cc \
dbase/cachestrapper.cc \
dbase/fistore.cc \
dbase/fimonitor.cc \
dbase/findex.cc \
pqi/authssl.cc \
pqi/authgpg.cc \
pqi/cleanupxpgp.cc \
pqi/p3notify.cc \
pqi/pqipersongrp.cc \
pqi/pqihandler.cc \
pqi/pqiservice.cc \
pqi/pqiperson.cc \
pqi/pqissludp.cc \
pqi/pqisslpersongrp.cc \
pqi/pqissllistener.cc \
pqi/pqissl.cc \
pqi/pqissltunnel.cc \
pqi/pqistore.cc \
# pqi/p3authmgr.cc \
pqi/p3cfgmgr.cc \
pqi/p3connmgr.cc \
pqi/p3dhtmgr.cc \
pqi/pqiarchive.cc \
pqi/pqibin.cc \
pqi/pqimonitor.cc \
pqi/pqistreamer.cc \
pqi/pqiloopback.cc \
pqi/pqinetwork.cc \
pqi/pqisecurity.cc \
serialiser/rsblogitems.cc \
serialiser/rsqblogitems.cc \
serialiser/rsstatusitems.cc \
serialiser/rschannelitems.cc \
serialiser/rstunnelitems.cc \
serialiser/rsforumitems.cc \
serialiser/rsdistribitems.cc \
serialiser/rsgameitems.cc \
serialiser/rsphotoitems.cc \
serialiser/rsrankitems.cc \
serialiser/rsconfigitems.cc \
serialiser/rsdiscitems.cc \
serialiser/rsmsgitems.cc \
serialiser/rsbaseitems.cc \
serialiser/rstlvkvwide.cc \
serialiser/rstlvimage.cc \
serialiser/rstlvutil.cc \
serialiser/rstlvfileitem.cc \
serialiser/rstlvkeys.cc \
serialiser/rsbaseserial.cc \
serialiser/rstlvbase.cc \
serialiser/rstlvtypes.cc \
serialiser/rsserial.cc \
tcponudp/extaddrfinder.cc \
tcponudp/bss_tou.c \
tcponudp/tcpstream.cc \
tcponudp/tou.cc \
tcponudp/tcppacket.cc \
tcponudp/udpsorter.cc \
tcponudp/tou_net.cc \
tcponudp/udplayer.cc \
util/rsdebug.cc \
util/rsdir.cc \
util/rsnet.cc \
util/rsprint.cc \
util/rsthreads.cc \
util/rsversion.cc