Build into the BINDIR directory instead of the source repository. This makes 'clean' work as expected without other intervention. Also it goes in the direction of having the package source repository board independent.
35 lines
912 B
Makefile
35 lines
912 B
Makefile
BUILD_DIR ?= $(BINDIR)/jerryscript
|
|
|
|
JERRYHEAP ?= 16
|
|
|
|
EXT_CFLAGS :=-D__TARGET_RIOT
|
|
|
|
ifeq ($(TOOLCHAIN)_$(BOARD),llvm_native)
|
|
EXT_CFLAGS :=-D__TARGET_RIOT -Wno-conversion
|
|
endif
|
|
|
|
.PHONY: all libjerry
|
|
|
|
all: libjerry
|
|
|
|
libjerry:
|
|
cmake -B$(BUILD_DIR) -H./ \
|
|
-DCMAKE_SYSTEM_NAME=RIOT \
|
|
-DCMAKE_SYSTEM_PROCESSOR="$(MCPU)" \
|
|
-DCMAKE_C_COMPILER=$(CC) \
|
|
-DCMAKE_C_COMPILER_WORKS=TRUE \
|
|
-DENABLE_LTO=OFF \
|
|
-DFEATURE_VALGRIND=OFF \
|
|
-DENABLE_ALL_IN_ONE=OFF \
|
|
-DJERRY_LIBC=OFF \
|
|
-DJERRY_LIBM=OFF \
|
|
-DJERRY_CMDLINE=OFF \
|
|
-DHAVE_TIME_H=0 \
|
|
-DEXTERNAL_COMPILE_FLAGS="$(EXT_CFLAGS)" \
|
|
-DMEM_HEAP_SIZE_KB=$(JERRYHEAP)
|
|
|
|
"$(MAKE)" -C $(BUILD_DIR) jerry-core jerry-ext jerry-port-default-minimal
|
|
cp $(BUILD_DIR)/lib/libjerry-core.a $(BINDIR)/jerryscript.a
|
|
cp $(BUILD_DIR)/lib/libjerry-ext.a $(BINDIR)/jerryscript-ext.a
|
|
cp $(BUILD_DIR)/lib/libjerry-port-default-minimal.a $(BINDIR)/jerryport-minimal.a
|