Skip to content

Commit 347c73d

Browse files
committed
fix(android): use OpenSSL specific version
1 parent 9f74c87 commit 347c73d

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

Makefile

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ SQLITE3 ?= sqlite3
88
# set curl version to download and build
99
CURL_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
1215
ifeq ($(OS),Windows_NT)
1316
PLATFORM := windows
@@ -115,10 +118,9 @@ else ifeq ($(PLATFORM),android)
115118

116119
OPENSSL := $(BIN)/../sysroot/usr/include/openssl
117120
CC = $(BIN)/$(ARCH)-linux-$(ANDROID_ABI)-clang
118-
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"
121+
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
119122
TARGET := $(DIST_DIR)/cloudsync.so
120-
CFLAGS += -fPIC
121-
LDFLAGS += -shared -fPIC -lssl -lcrypto
123+
LDFLAGS += -shared -lssl -lcrypto
122124
STRIP = $(BIN)/llvm-strip --strip-unneeded $@
123125
else ifeq ($(PLATFORM),ios)
124126
TARGET := $(DIST_DIR)/cloudsync.dylib
@@ -220,16 +222,23 @@ endif
220222
unittest: $(TARGET) $(DIST_DIR)/unit$(EXE)
221223
@./$(DIST_DIR)/unit$(EXE)
222224

223-
$(OPENSSL):
224-
git clone https://github.com/openssl/openssl.git $(CURL_DIR)/src/openssl
225+
OPENSSL_TARBALL = $(CURL_DIR)/src/$(OPENSSL_VERSION).tar.gz
226+
OPENSSL_SRC = $(CURL_DIR)/src/$(OPENSSL_VERSION)
225227

226-
cd $(CURL_DIR)/src/openssl && \
228+
$(OPENSSL_TARBALL):
229+
mkdir -p $(CURL_DIR)/src
230+
curl -L -o $(OPENSSL_TARBALL) https://github.com/openssl/openssl/releases/download/$(OPENSSL_VERSION)/$(OPENSSL_VERSION).tar.gz
231+
232+
$(OPENSSL): $(OPENSSL_TARBALL)
233+
mkdir -p $(CURL_DIR)/src
234+
tar -xzf $(OPENSSL_TARBALL) -C $(CURL_DIR)/src
235+
cd $(OPENSSL_SRC) && \
227236
./Configure android-$(if $(filter aarch64,$(ARCH)),arm64,$(if $(filter armv7a,$(ARCH)),arm,$(ARCH))) \
228237
--prefix=$(BIN)/../sysroot/usr \
229238
no-shared no-unit-test \
230-
-fPIC \
231239
-D__ANDROID_API__=26 && \
232240
$(MAKE) && $(MAKE) install_sw
241+
rm -rf $(OPENSSL_SRC)
233242

234243
ifeq ($(PLATFORM),android)
235244
$(CURL_LIB): $(OPENSSL)

0 commit comments

Comments
 (0)