|
|
|
#-------------------------------------------------
|
|
|
|
#
|
|
|
|
# Project created by QtCreator 2016-06-14T04:53:04
|
|
|
|
#
|
|
|
|
#-------------------------------------------------
|
|
|
|
|
|
|
|
QT += core gui
|
|
|
|
|
|
|
|
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
|
|
|
|
|
|
|
TARGET = i2pd_qt
|
|
|
|
TEMPLATE = app
|
|
|
|
QMAKE_CXXFLAGS *= -std=c++11
|
|
|
|
DEFINES += USE_UPNP
|
|
|
|
|
|
|
|
# git clone https://github.com/PurpleI2P/Boost-for-Android-Prebuilt.git
|
|
|
|
# git clone https://github.com/PurpleI2P/OpenSSL-for-Android-Prebuilt.git
|
|
|
|
# git clone https://github.com/PurpleI2P/MiniUPnP-for-Android-Prebuilt.git
|
|
|
|
# git clone https://github.com/PurpleI2P/android-ifaddrs.git
|
|
|
|
# change to your own
|
|
|
|
BOOST_PATH = /mnt/media/android/Boost-for-Android-Prebuilt
|
|
|
|
OPENSSL_PATH = /mnt/media/android/OpenSSL-for-Android-Prebuilt
|
|
|
|
MINIUPNP_PATH = /mnt/media/android/MiniUPnP-for-Android-Prebuilt
|
|
|
|
IFADDRS_PATH = /mnt/media/android/android-ifaddrs
|
|
|
|
|
|
|
|
# Steps in Android SDK manager:
|
|
|
|
# 1) Check Extras/Google Support Library https://developer.android.com/topic/libraries/support-library/setup.html
|
|
|
|
# 2) Check API 11
|
|
|
|
# Finally, click Install.
|
|
|
|
|
|
|
|
SOURCES += DaemonQT.cpp\
|
|
|
|
mainwindow.cpp \
|
|
|
|
../../HTTPServer.cpp ../../I2PControl.cpp ../../Daemon.cpp ../../Config.cpp \
|
|
|
|
../../AddressBook.cpp \
|
|
|
|
../../api.cpp \
|
|
|
|
../../Base.cpp \
|
|
|
|
../../BOB.cpp \
|
|
|
|
../../ClientContext.cpp \
|
|
|
|
../../Crypto.cpp \
|
|
|
|
../../Datagram.cpp \
|
|
|
|
../../Destination.cpp \
|
|
|
|
../../Family.cpp \
|
|
|
|
../../FS.cpp \
|
|
|
|
../../Garlic.cpp \
|
|
|
|
../../HTTP.cpp \
|
|
|
|
../../HTTPProxy.cpp \
|
|
|
|
../../I2CP.cpp \
|
|
|
|
../../I2NPProtocol.cpp \
|
|
|
|
../../I2PEndian.cpp \
|
|
|
|
../../I2PService.cpp \
|
|
|
|
../../I2PTunnel.cpp \
|
|
|
|
../../Identity.cpp \
|
|
|
|
../../LeaseSet.cpp \
|
|
|
|
../../Log.cpp \
|
|
|
|
../../NetDb.cpp \
|
|
|
|
../../NetDbRequests.cpp \
|
|
|
|
../../NTCPSession.cpp \
|
|
|
|
../../Profiling.cpp \
|
|
|
|
../../Reseed.cpp \
|
|
|
|
../../RouterContext.cpp \
|
|
|
|
../../RouterInfo.cpp \
|
|
|
|
../../SAM.cpp \
|
|
|
|
../../Signature.cpp \
|
|
|
|
../../SOCKS.cpp \
|
|
|
|
../../SSU.cpp \
|
|
|
|
../../SSUData.cpp \
|
|
|
|
../../SSUSession.cpp \
|
|
|
|
../../Streaming.cpp \
|
|
|
|
../../TransitTunnel.cpp \
|
|
|
|
../../Transports.cpp \
|
|
|
|
../../Tunnel.cpp \
|
|
|
|
../../TunnelEndpoint.cpp \
|
|
|
|
../../TunnelGateway.cpp \
|
|
|
|
../../TunnelPool.cpp \
|
|
|
|
../../UPnP.cpp \
|
|
|
|
../../util.cpp \
|
|
|
|
../../i2pd.cpp
|
|
|
|
|
|
|
|
HEADERS += DaemonQT.h mainwindow.h \
|
|
|
|
../../HTTPServer.h ../../I2PControl.h ../../UPnP.h ../../Daemon.h ../../Config.h \
|
|
|
|
../../AddressBook.h \
|
|
|
|
../../api.h \
|
|
|
|
../../Base.h \
|
|
|
|
../../BOB.h \
|
|
|
|
../../ClientContext.h \
|
|
|
|
../../Crypto.h \
|
|
|
|
../../Datagram.h \
|
|
|
|
../../Destination.h \
|
|
|
|
../../Family.h \
|
|
|
|
../../FS.h \
|
|
|
|
../../Garlic.h \
|
|
|
|
../../HTTP.h \
|
|
|
|
../../HTTPProxy.h \
|
|
|
|
../../I2CP.h \
|
|
|
|
../../I2NPProtocol.h \
|
|
|
|
../../I2PEndian.h \
|
|
|
|
../../I2PService.h \
|
|
|
|
../../I2PTunnel.h \
|
|
|
|
../../Identity.h \
|
|
|
|
../../LeaseSet.h \
|
|
|
|
../../LittleBigEndian.h \
|
|
|
|
../../Log.h \
|
|
|
|
../../NetDb.h \
|
|
|
|
../../NetDbRequests.h \
|
|
|
|
../../NTCPSession.h \
|
|
|
|
../../Profiling.h \
|
|
|
|
../../Queue.h \
|
|
|
|
../../Reseed.h \
|
|
|
|
../../RouterContext.h \
|
|
|
|
../../RouterInfo.h \
|
|
|
|
../../SAM.h \
|
|
|
|
../../Signature.h \
|
|
|
|
../../SOCKS.h \
|
|
|
|
../../SSU.h \
|
|
|
|
../../SSUData.h \
|
|
|
|
../../SSUSession.h \
|
|
|
|
../../Streaming.h \
|
|
|
|
../../Timestamp.h \
|
|
|
|
../../TransitTunnel.h \
|
|
|
|
../../Transports.h \
|
|
|
|
../../TransportSession.h \
|
|
|
|
../../Tunnel.h \
|
|
|
|
../../TunnelBase.h \
|
|
|
|
../../TunnelConfig.h \
|
|
|
|
../../TunnelEndpoint.h \
|
|
|
|
../../TunnelGateway.h \
|
|
|
|
../../TunnelPool.h \
|
|
|
|
../../UPnP.h \
|
|
|
|
../../util.h \
|
|
|
|
../../version.h
|
|
|
|
|
|
|
|
FORMS += mainwindow.ui
|
|
|
|
|
|
|
|
CONFIG += mobility
|
|
|
|
|
|
|
|
MOBILITY =
|
|
|
|
|
|
|
|
LIBS += -lz
|
|
|
|
|
|
|
|
android {
|
|
|
|
message("Using Android settings")
|
|
|
|
DEFINES += ANDROID=1
|
|
|
|
DEFINES += __ANDROID__
|
|
|
|
|
|
|
|
INCLUDEPATH += $$BOOST_PATH/boost_1_53_0/include \
|
|
|
|
$$OPENSSL_PATH/openssl-1.0.2/include \
|
|
|
|
$$MINIUPNP_PATH/miniupnp-2.0/include \
|
|
|
|
$$IFADDRS_PATH
|
|
|
|
DISTFILES += \
|
|
|
|
android/AndroidManifest.xml
|
|
|
|
|
|
|
|
ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android
|
|
|
|
|
|
|
|
SOURCES += $$IFADDRS_PATH/ifaddrs.c ../../UPnP.cpp
|
|
|
|
HEADERS += $$IFADDRS_PATH/ifaddrs.h
|
|
|
|
|
|
|
|
equals(ANDROID_TARGET_ARCH, armeabi-v7a){
|
|
|
|
|
|
|
|
DEFINES += ANDROID_ARM7A
|
|
|
|
|
|
|
|
# http://stackoverflow.com/a/30235934/529442
|
|
|
|
LIBS += -L$$BOOST_PATH/boost_1_53_0/armeabi-v7a/lib \
|
|
|
|
-lboost_system-gcc-mt-1_53 \
|
|
|
|
-lboost_date_time-gcc-mt-1_53 \
|
|
|
|
-lboost_filesystem-gcc-mt-1_53 \
|
|
|
|
-lboost_program_options-gcc-mt-1_53 \
|
|
|
|
-L$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/ -lcrypto -lssl \
|
|
|
|
-L$$MINIUPNP_PATH/miniupnp-2.0/armeabi-v7a/lib/ -lminiupnpc
|
|
|
|
|
|
|
|
PRE_TARGETDEPS += $$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libcrypto.a \
|
|
|
|
$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libssl.a
|
|
|
|
|
|
|
|
DEPENDPATH += $$OPENSSL_PATH/openssl-1.0.2/include
|
|
|
|
|
|
|
|
ANDROID_EXTRA_LIBS += $$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libcrypto_1_0_0.so \
|
|
|
|
$$OPENSSL_PATH/openssl-1.0.2/armeabi-v7a/lib/libssl_1_0_0.so \
|
|
|
|
$$MINIUPNP_PATH/miniupnp-2.0/armeabi-v7a/lib/libminiupnpc.so
|
|
|
|
}
|
|
|
|
equals(ANDROID_TARGET_ARCH, x86){
|
|
|
|
# http://stackoverflow.com/a/30235934/529442
|
|
|
|
LIBS += -L$$BOOST_PATH/boost_1_53_0/x86/lib \
|
|
|
|
-lboost_system-gcc-mt-1_53 \
|
|
|
|
-lboost_date_time-gcc-mt-1_53 \
|
|
|
|
-lboost_filesystem-gcc-mt-1_53 \
|
|
|
|
-lboost_program_options-gcc-mt-1_53 \
|
|
|
|
-L$$OPENSSL_PATH/openssl-1.0.2/x86/lib/ -lcrypto -lssl \
|
|
|
|
-L$$MINIUPNP_PATH/miniupnp-2.0/x86/lib/ -lminiupnpc
|
|
|
|
|
|
|
|
PRE_TARGETDEPS += $$OPENSSL_PATH/openssl-1.0.2/x86/lib/libcrypto.a \
|
|
|
|
$$OPENSSL_PATH/openssl-1.0.2/x86/lib/libssl.a
|
|
|
|
|
|
|
|
DEPENDPATH += $$OPENSSL_PATH/openssl-1.0.2/include
|
|
|
|
|
|
|
|
ANDROID_EXTRA_LIBS += $$OPENSSL_PATH/openssl-1.0.2/x86/lib/libcrypto_1_0_0.so \
|
|
|
|
$$OPENSSL_PATH/openssl-1.0.2/x86/lib/libssl_1_0_0.so \
|
|
|
|
$$MINIUPNP_PATH/miniupnp-2.0/x86/lib/libminiupnpc.so
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
linux:!android {
|
|
|
|
message("Using Linux settings")
|
|
|
|
LIBS += -lcrypto -lssl -lboost_system -lboost_date_time -lboost_filesystem -lboost_program_options -lpthread -lminiupnpc
|
|
|
|
}
|
|
|
|
|