mirror of
				https://github.com/PurpleI2P/i2pd.git
				synced 2025-11-04 08:30:46 +00:00 
			
		
		
		
	Few cents to get fullly console i2pd under Android
This commit is contained in:
		
							parent
							
								
									f11266972e
								
							
						
					
					
						commit
						6916147dda
					
				
					 4 changed files with 119 additions and 13 deletions
				
			
		
							
								
								
									
										74
									
								
								android/i2pd/Android.mk
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										74
									
								
								android/i2pd/Android.mk
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,74 @@
 | 
			
		|||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := i2pd
 | 
			
		||||
LOCAL_CPP_FEATURES := rtti exceptions
 | 
			
		||||
LOCAL_C_INCLUDES += $(IFADDRS_PATH) $(LIB_SRC_PATH) $(LIB_CLIENT_SRC_PATH) $(DAEMON_SRC_PATH)
 | 
			
		||||
LOCAL_STATIC_LIBRARIES := \
 | 
			
		||||
	boost_system \
 | 
			
		||||
	boost_date_time \
 | 
			
		||||
	boost_filesystem \
 | 
			
		||||
	boost_program_options \
 | 
			
		||||
	crypto ssl \
 | 
			
		||||
	miniupnpc
 | 
			
		||||
LOCAL_LDLIBS := -lz
 | 
			
		||||
 | 
			
		||||
LOCAL_SRC_FILES := $(IFADDRS_PATH)/ifaddrs.c \
 | 
			
		||||
	$(wildcard $(LIB_SRC_PATH)/*.cpp)\
 | 
			
		||||
	$(wildcard $(LIB_CLIENT_SRC_PATH)/*.cpp)\
 | 
			
		||||
	$(DAEMON_SRC_PATH)/UnixDaemon.cpp \
 | 
			
		||||
	$(DAEMON_SRC_PATH)/Daemon.cpp \
 | 
			
		||||
	$(DAEMON_SRC_PATH)/UPnP.cpp \
 | 
			
		||||
	$(DAEMON_SRC_PATH)/HTTPServer.cpp \
 | 
			
		||||
	$(DAEMON_SRC_PATH)/I2PControl.cpp \
 | 
			
		||||
	$(DAEMON_SRC_PATH)/i2pd.cpp
 | 
			
		||||
include $(BUILD_EXECUTABLE)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := boost_system
 | 
			
		||||
LOCAL_SRC_FILES := $(BOOST_PATH)/boost_1_62_0/$(TARGET_ARCH_ABI)/lib/libboost_system.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(BOOST_PATH)/boost_1_62_0/include
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := boost_date_time
 | 
			
		||||
LOCAL_SRC_FILES := $(BOOST_PATH)/boost_1_62_0/$(TARGET_ARCH_ABI)/lib/libboost_date_time.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(BOOST_PATH)/boost_1_62_0/include
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := boost_filesystem
 | 
			
		||||
LOCAL_SRC_FILES := $(BOOST_PATH)/boost_1_62_0/$(TARGET_ARCH_ABI)/lib/libboost_filesystem.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(BOOST_PATH)/boost_1_62_0/include
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := boost_program_options
 | 
			
		||||
LOCAL_SRC_FILES := $(BOOST_PATH)/boost_1_62_0/$(TARGET_ARCH_ABI)/lib/libboost_program_options.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(BOOST_PATH)/boost_1_62_0/include
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := crypto
 | 
			
		||||
LOCAL_SRC_FILES := $(OPENSSL_PATH)/openssl-1.1.0e/$(TARGET_ARCH_ABI)/lib/libcrypto.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(OPENSSL_PATH)/openssl-1.1.0e/include
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := ssl
 | 
			
		||||
LOCAL_SRC_FILES := $(OPENSSL_PATH)/openssl-1.1.0e/$(TARGET_ARCH_ABI)/lib/libssl.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(OPENSSL_PATH)/openssl-1.1.0e/include
 | 
			
		||||
LOCAL_STATIC_LIBRARIES := crypto
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
 | 
			
		||||
LOCAL_PATH := $(call my-dir)
 | 
			
		||||
include $(CLEAR_VARS)
 | 
			
		||||
LOCAL_MODULE := miniupnpc
 | 
			
		||||
LOCAL_SRC_FILES := $(MINIUPNP_PATH)/miniupnp-2.0/$(TARGET_ARCH_ABI)/lib/libminiupnpc.a
 | 
			
		||||
LOCAL_EXPORT_C_INCLUDES := $(MINIUPNP_PATH)/miniupnp-2.0/include
 | 
			
		||||
include $(PREBUILT_STATIC_LIBRARY)
 | 
			
		||||
							
								
								
									
										42
									
								
								android/i2pd/Application.mk
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								android/i2pd/Application.mk
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,42 @@
 | 
			
		|||
#APP_ABI := all
 | 
			
		||||
#APP_ABI := armeabi-v7a x86
 | 
			
		||||
#APP_ABI := x86
 | 
			
		||||
#APP_ABI := x86_64
 | 
			
		||||
APP_ABI := armeabi-v7a
 | 
			
		||||
#can be android-3 but will fail for x86 since arch-x86 is not present at ndkroot/platforms/android-3/ . libz is taken from there.
 | 
			
		||||
APP_PLATFORM := android-14
 | 
			
		||||
 | 
			
		||||
# http://stackoverflow.com/a/21386866/529442 http://stackoverflow.com/a/15616255/529442 to enable c++11 support in Eclipse
 | 
			
		||||
NDK_TOOLCHAIN_VERSION := 4.9
 | 
			
		||||
# APP_STL := stlport_shared  --> does not seem to contain C++11 features
 | 
			
		||||
#APP_STL := gnustl_shared
 | 
			
		||||
APP_STL := gnustl_static
 | 
			
		||||
 | 
			
		||||
# Enable c++11 extensions in source code
 | 
			
		||||
APP_CPPFLAGS += -std=c++11 -fvisibility=default -fPIE
 | 
			
		||||
 | 
			
		||||
APP_CPPFLAGS += -DANDROID -D__ANDROID__ -DUSE_UPNP
 | 
			
		||||
APP_LDFLAGS += -rdynamic -fPIE -pie
 | 
			
		||||
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
 | 
			
		||||
APP_CPPFLAGS += -DANDROID_ARM7A
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
APP_OPTIM  := debug
 | 
			
		||||
 | 
			
		||||
# 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
 | 
			
		||||
I2PD_LIBS_PATH = /home/u/build/i2p/daemon/static.libs
 | 
			
		||||
BOOST_PATH = $(I2PD_LIBS_PATH)/Boost-for-Android-Prebuilt
 | 
			
		||||
OPENSSL_PATH = $(I2PD_LIBS_PATH)/OpenSSL-for-Android-Prebuilt
 | 
			
		||||
MINIUPNP_PATH = $(I2PD_LIBS_PATH)/MiniUPnP-for-Android-Prebuilt
 | 
			
		||||
IFADDRS_PATH = $(I2PD_LIBS_PATH)/android-ifaddrs
 | 
			
		||||
 | 
			
		||||
# don't change me
 | 
			
		||||
I2PD_SRC_PATH = $(PWD)/..
 | 
			
		||||
 | 
			
		||||
LIB_SRC_PATH = $(I2PD_SRC_PATH)/libi2pd
 | 
			
		||||
LIB_CLIENT_SRC_PATH = $(I2PD_SRC_PATH)/libi2pd_client
 | 
			
		||||
DAEMON_SRC_PATH = $(I2PD_SRC_PATH)/daemon
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue