1
0
Fork 0
mirror of https://github.com/anyproto/anytype-heart.git synced 2025-06-07 21:37:04 +09:00
anytype-heart/makefiles/android.mk
2025-02-07 13:48:41 -03:00

32 lines
1.7 KiB
Makefile

build-android: setup-go setup-gomobile
$(DEPS_PATH)/gomobile init
@echo 'Building library for Android...'
@$(eval FLAGS += $$(shell govvv -flags | sed 's/main/github.com\/anyproto\/anytype-heart\/util\/vcs/g'))
@$(eval TAGS := nogrpcserver gomobile nowatchdog nosigar timetzdata rasterizesvg)
ifdef ANY_SYNC_NETWORK
@$(eval TAGS := $(TAGS) envnetworkcustom)
endif
gomobile bind -tags "$(TAGS)" -ldflags "$(FLAGS)" $(BUILD_FLAGS) -target=android -androidapi 26 -o lib.aar github.com/anyproto/anytype-heart/clientlibrary/service github.com/anyproto/anytype-heart/core
@mkdir -p dist/android/ && mv lib.aar dist/android/
@go mod tidy
install-dev-android: setup-go build-android
@echo 'Installing android lib locally in $(CLIENT_ANDROID_PATH)...'
@rm -f $(CLIENT_ANDROID_PATH)/libs/lib.aar
@cp -r dist/android/lib.aar $(CLIENT_ANDROID_PATH)/libs/lib.aar
@cp -r pb/protos/*.proto $(CLIENT_ANDROID_PATH)/protocol/src/main/proto
@cp -r pkg/lib/pb/model/protos/*.proto $(CLIENT_ANDROID_PATH)/protocol/src/main/proto
# Compute the SHA hash of lib.aar
@$(eval hash := $$(shell shasum -b dist/android/lib.aar | cut -d' ' -f1))
@echo "Version hash: ${hash}"
# Update the gradle file with the new version
@sed -i '' "s/version = '.*'/version = '${hash}'/g" $(CLIENT_ANDROID_PATH)/libs/build.gradle
@cat $(CLIENT_ANDROID_PATH)/libs/build.gradle
@sed -i '' "s/middlewareVersion = \".*\"/middlewareVersion = \"${hash}\"/" $(CLIENT_ANDROID_PATH)/gradle/libs.versions.toml
@cat $(CLIENT_ANDROID_PATH)/gradle/libs.versions.toml
# Print the updated gradle file (for verification)
@cd $(CLIENT_ANDROID_PATH) && make setup_local_mw
@cd $(CLIENT_ANDROID_PATH) && make normalize_mw_imports
@cd $(CLIENT_ANDROID_PATH) && make clean_protos