feat: highly customized rpc compilation is supported

Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
pull/437/head
Xinwei Xiong(cubxxw-openim) 2 years ago
parent fdd3c83b80
commit 36ee662d21

@ -60,7 +60,7 @@ export USAGE_OPTIONS
build:
@$(MAKE) go.build
## multiarch: Build binaries for multiple platforms. See option PLATFORMS.
## build-multiarch: Build binaries for multiple platforms. See option PLATFORMS.
.PHONY: build-multiarch
build-multiarch:
@$(MAKE) go.build.multiarch

@ -111,8 +111,12 @@ go.build.%:
@echo "=====> BIN_DIR=$(BIN_DIR)"
@echo "===========> Building binary $(COMMAND) $(VERSION) for $(OS)_$(ARCH)"
@mkdir -p $(BIN_DIR)/platforms/$(OS)/$(ARCH)
@if [ "$(COMMAND)" == "rpc" ] || [ "$(COMMAND)" == "Open-IM-SDK-Core" ]; then \
@if [ "$(COMMAND)" == "openim-sdk-core" ]; then \
echo "===========> Compilation is not yet supported $(COMMAND)"; \
elif [ "$(COMMAND)" == "rpc" ]; then \
for d in $(wildcard $(ROOT_DIR)/cmd/rpc/*/); do \
cd $$d && CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) $(GO) build $(GO_BUILD_FLAGS) -o $(BIN_DIR)/platforms/$(OS)/$(ARCH)/$$(basename $$d)$(GO_OUT_EXT) .; \
done; \
else \
CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) $(GO) build $(GO_BUILD_FLAGS) -o $(BIN_DIR)/platforms/$(OS)/$(ARCH)/$(COMMAND)$(GO_OUT_EXT) $(ROOT_DIR)/cmd/$(COMMAND)/main.go; \
fi

Loading…
Cancel
Save