mirror of
https://github.com/alibaba/higress.git
synced 2026-02-23 12:10:53 +08:00
51 lines
1.4 KiB
Makefile
51 lines
1.4 KiB
Makefile
SHELL := /bin/bash
|
|
|
|
# allow optional per-repo overrides
|
|
-include Makefile.overrides.mk
|
|
|
|
# Set the environment variable BUILD_WITH_CONTAINER to use a container
|
|
# to build the repo. The only dependencies in this mode are to have make and
|
|
# docker. If you'd rather build with a local tool chain instead, you'll need to
|
|
# figure out all the tools you need in your environment to make that work.
|
|
export BUILD_WITH_CONTAINER ?= 0
|
|
|
|
ifeq ($(BUILD_WITH_CONTAINER),1)
|
|
|
|
# An export free of arugments in a Makefile places all variables in the Makefile into the
|
|
# environment. This is needed to allow overrides from Makefile.overrides.mk.
|
|
export
|
|
|
|
$(shell $(shell pwd)/script/setup_env.sh)
|
|
|
|
RUN = ./script/run.sh
|
|
|
|
MAKE_DOCKER = $(RUN) make --no-print-directory -e -f Makefile.core.mk
|
|
|
|
%:
|
|
@$(MAKE_DOCKER) $@
|
|
|
|
default:
|
|
@$(MAKE_DOCKER)
|
|
|
|
shell:
|
|
@$(RUN) /bin/bash
|
|
|
|
.PHONY: default shell
|
|
|
|
else
|
|
|
|
# If we are not in build container, we need a workaround to get environment properly set
|
|
# Write to file, then include
|
|
$(shell mkdir -p out)
|
|
$(shell $(shell pwd)/script/setup_env.sh envfile > out/.env)
|
|
include out/.env
|
|
# An export free of arugments in a Makefile places all variables in the Makefile into the
|
|
# environment. This behavior may be surprising to many that use shell often, which simply
|
|
# displays the existing environment
|
|
export
|
|
|
|
export GOBIN ?= $(GOPATH)/bin
|
|
include Makefile.core.mk
|
|
|
|
endif
|