@@ -8,6 +8,9 @@ SQLITE3 ?= sqlite3
88# set curl version to download and build
99CURL_VERSION ?= 8.12.1
1010
11+ # set OpenSSL version to download and build
12+ OPENSSL_VERSION ?= openssl-3.6.0
13+
1114# Set default platform if not specified
1215ifeq ($(OS ) ,Windows_NT)
1316 PLATFORM := windows
@@ -107,10 +110,9 @@ else ifeq ($(PLATFORM),android)
107110
108111 OPENSSL := $(BIN)/../sysroot/usr/include/openssl
109112 CC = $(BIN)/$(ARCH)-linux-$(ANDROID_ABI)-clang
110- CURL_CONFIG = --host $(ARCH)-linux-$(ANDROID_ABI) --with-openssl=$(BIN)/../sysroot/usr LIBS="-lssl -lcrypto" AR=$(BIN)/llvm-ar AS=$(BIN)/llvm-as CC=$(CC) CXX=$(BIN)/$(ARCH)-linux-$(ANDROID_ABI)-clang++ LD=$(BIN)/ld RANLIB=$(BIN)/llvm-ranlib STRIP=$(BIN)/llvm-strip CFLAGS="-fPIC"
113+ CURL_CONFIG = --host $(ARCH)-linux-$(ANDROID_ABI) --with-openssl=$(BIN)/../sysroot/usr LIBS="-lssl -lcrypto" AR=$(BIN)/llvm-ar AS=$(BIN)/llvm-as CC=$(CC) CXX=$(BIN)/$(ARCH)-linux-$(ANDROID_ABI)-clang++ LD=$(BIN)/ld RANLIB=$(BIN)/llvm-ranlib STRIP=$(BIN)/llvm-strip
111114 TARGET := $(DIST_DIR)/cloudsync.so
112- CFLAGS += -fPIC
113- LDFLAGS += -shared -fPIC -lssl -lcrypto
115+ LDFLAGS += -shared -lssl -lcrypto
114116 STRIP = $(BIN)/llvm-strip --strip-unneeded $@
115117else ifeq ($(PLATFORM),ios)
116118 TARGET := $(DIST_DIR)/cloudsync.dylib
@@ -205,16 +207,23 @@ ifneq ($(COVERAGE),false)
205207 genhtml $(COV_DIR)/coverage.info --output-directory $(COV_DIR)
206208endif
207209
208- $( OPENSSL ) :
209- git clone https://github.com/openssl/openssl.git $(CURL_DIR ) /src/openssl
210+ OPENSSL_TARBALL = $( CURL_DIR ) /src/ $( OPENSSL_VERSION ) .tar.gz
211+ OPENSSL_SRC = $(CURL_DIR ) /src/$( OPENSSL_VERSION )
210212
211- cd $(CURL_DIR)/src/openssl && \
213+ $(OPENSSL_TARBALL ) :
214+ mkdir -p $(CURL_DIR ) /src
215+ curl -L -o $(OPENSSL_TARBALL ) https://github.com/openssl/openssl/releases/download/$(OPENSSL_VERSION ) /$(OPENSSL_VERSION ) .tar.gz
216+
217+ $(OPENSSL ) : $(OPENSSL_TARBALL )
218+ mkdir -p $(CURL_DIR ) /src
219+ tar -xzf $(OPENSSL_TARBALL ) -C $(CURL_DIR ) /src
220+ cd $(OPENSSL_SRC ) && \
212221 ./Configure android-$(if $(filter aarch64,$(ARCH ) ) ,arm64,$(if $(filter armv7a,$(ARCH ) ) ,arm,$(ARCH ) ) ) \
213222 --prefix=$(BIN ) /../sysroot/usr \
214223 no-shared no-unit-test \
215- -fPIC \
216224 -D__ANDROID_API__=26 && \
217225 $(MAKE ) && $(MAKE ) install_sw
226+ rm -rf $(OPENSSL_SRC )
218227
219228ifeq ($(PLATFORM ) ,android)
220229$(CURL_LIB ) : $(OPENSSL )
0 commit comments