1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
ARGEO_BUILD_BASE := $(abspath $(dir $(lastword $(MAKEFILE_LIST)))..)
CMAKE = cmake
ifeq ($(SDK_SRC_BASE),)
SDK_SRC_BASE=$(abspath $(ARGEO_BUILD_BASE)/../..)
SDK_BUILD_BASE=$(abspath $(SDK_SRC_BASE)/../output)
A2_OUTPUT=$(abspath $(SDK_BUILD_BASE)/a2)
endif
BUILD_BASE=$(abspath $(SDK_BUILD_BASE)/$(notdir $(SDK_SRC_BASE)))
# common Makefile path
include $(dir $(lastword $(MAKEFILE_LIST)))../common.mk
export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8 # Required on Windows
CMAKE_BUILD_TYPE ?= Release
all:
cmake -B $(BUILD_BASE) . \
-DCMAKE_BUILD_TYPE=$(CMAKE_BUILD_TYPE) \
-DA2_INSTALL_MODE=a2 \
-DJAVA_HOME=$(JAVA_HOME)
$(CMAKE) --build $(BUILD_BASE) --config $(CMAKE_BUILD_TYPE) -j $(shell nproc)
clean:
-if [ -d $(BUILD_BASE) ]; then $(CMAKE) --build $(BUILD_BASE) --target clean; fi;
distclean:
$(RM) -r $(BUILD_BASE)
$(RM) sdk.mk
install:
$(CMAKE) --build $(BUILD_BASE) --target install
describe:
echo SDK_SRC_BASE=$(SDK_SRC_BASE)
echo SDK_BUILD_BASE=$(SDK_BUILD_BASE)
echo BUILD_BASE=$(BUILD_BASE)
echo JAVA_HOME=$(JAVA_HOME)
echo A2_OUTPUT=$(A2_OUTPUT)
.PHONY: all clean distclean install describe
|