From 18d8c392a984d5532eb6430a70030ba92bc14e8d Mon Sep 17 00:00:00 2001 From: Godefroy Ponsinet Date: Tue, 28 Aug 2018 14:26:48 +0200 Subject: [PATCH] fix(rn): gomobile android openssl build Signed-off-by: Godefroy Ponsinet --- client/react-native/.gitignore | 7 +-- client/react-native/gomobile/Makefile | 49 +++++++++++++----- .../mobile/android/app/libs/core-sources.jar | Bin 6190 -> 0 bytes 3 files changed, 39 insertions(+), 17 deletions(-) delete mode 100644 client/react-native/mobile/android/app/libs/core-sources.jar diff --git a/client/react-native/.gitignore b/client/react-native/.gitignore index 65632eb993..f108cf0441 100644 --- a/client/react-native/.gitignore +++ b/client/react-native/.gitignore @@ -84,13 +84,14 @@ fastlane/Appfile fastlane/Matchfile # Gomobile -!android/app/libs/*.aar +mobile/android/app/libs/*.aar +mobile/android/app/libs/*-sources.jar gomobile/vendor gomobile/bin gomobile/_vendor-* gomobile/tags -android/libs/ -ios/libs/ +mobile/android/libs/ +mobile/ios/libs/ # mobile shim.js diff --git a/client/react-native/gomobile/Makefile b/client/react-native/gomobile/Makefile index 0469da1272..5ffa5519ac 100644 --- a/client/react-native/gomobile/Makefile +++ b/client/react-native/gomobile/Makefile @@ -1,35 +1,56 @@ -PWD := $(shell pwd) +PWD := $(shell pwd) -CORE_PACKAGE := $(PWD)/../../../core +CORE_PACKAGE := $(PWD)/../../../core -IOS_OUTPUT := $(PWD)/../mobile/ios -ANDROID_OUTPUT := $(PWD)/../mobile/android/app/libs +CGO_CPPFLAGS := -I/usr/local/opt/openssl/include -ANDROID_NDK_HOME ?= /usr/local/share/android-ndk/ +LIBS_PATH := $(PWD)/../../../scripts/built -GOTEST_TIMEOUT ?= 30s +IOS_BUILD_PATH := $(PWD)/../mobile/ios +IOS_LDFLAGS := -L $(LIBS_PATH)/ios +ANDROID_NDK_HOME := /usr/local/share/android-ndk/ +ANDROID_ARCHS := aarch64 arm x86_64 x86 +ANDROID_LIBS_PATHS := $(addprefix $(LIBS_PATH)/android/, $(ANDROID_ARCHS)) +ANDROID_LDFLAGS := $(addprefix -L, $(ANDROID_LIBS_PATHS)) +ANDROID_BUILDS_PATH := $(PWD)/../mobile/android/app/libs +ANDROID_BUILDS := $(addprefix $(ANDROID_BUILDS_PATH)/core., $(addsuffix .aar, $(ANDROID_ARCHS))) + +GOTEST_TIMEOUT ?= 30s + +.PHONY: deps-osx deps-osx: brew cask install android-sdk android-ndk +.PHONY: deps deps: go get -v golang.org/x/mobile/cmd/gomobile + cd $(GOPATH)/src/golang.org/x/mobile \ + && (git remote add upstream git@github.com:sfroment/mobile || true) \ + && git fetch upstream \ + && (git cherry-pick 1b1535a2ec50640fac08cd318cf1d557e198e94d || true) + go install golang.org/x/mobile/cmd/gomobile go get -v golang.org/x/mobile/cmd/gobind + gomobile init +.PHONY: init init: deps gomobile init -v -ndk $(ANDROID_NDK_HOME) -core.build.ios: - mkdir -p $(IOS_OUTPUT) - gomobile bind -v -target=ios -o $(IOS_OUTPUT)/core.framework . +.PHONY: ios +ios: + mkdir -p $(IOS_BUILD_PATH) + CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_LDFLAGS="$(IOS_LDFLAGS)" \ + gomobile bind -v -target=ios -o $(IOS_BUILD_PATH)/core.framework . -core.build.android: - mkdir -p $(ANDROID_OUTPUT) - gomobile bind -v -target=android -o $(ANDROID_OUTPUT)/core.aar . +.PHONY: android +android: + mkdir -p $(ANDROID_BUILDS_PATH) + CGO_CPPFLAGS="$(CGO_CPPFLAGS)" CGO_LDFLAGS="$(ANDROID_LDFLAGS)" \ + gomobile bind -v -target=android -o $(ANDROID_BUILDS_PATH)/core.aar . .PHONY: test test: go test -test.timeout $(GOTEST_TIMEOUT) -v ./... -core.build: core.build.ios core.build.android -build: core.build +build: android ios diff --git a/client/react-native/mobile/android/app/libs/core-sources.jar b/client/react-native/mobile/android/app/libs/core-sources.jar deleted file mode 100644 index 878d353a50e5ddcd2cfc051cfad7f7c2deb48d32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6190 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