| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- APPLICATION = wamr-mini
- # If no BOARD is defined in the environment, use this default:
- BOARD ?= native
- # This has to be the absolute path to the RIOT base directory:
- RIOTBASE ?= $(CURDIR)/../../../../RIOT
- USEMODULE += ztimer64_msec
- USEMODULE += ztimer_usec
- USEMODULE += sema
- WPEDANTIC := 0
- WERROR := 0
- # Comment this out to disable code in RIOT that does safety checking
- # which is not needed in a production environment but helps in the
- # development process:
- DEVELHELP ?= 1
- # Change this to 0 show compiler invocation lines by default:
- QUIET ?= 1
- ARCHIVES += $(BINDIR)/libwamr.a
- #Load the usual RIOT make infastructure
- include $(RIOTBASE)/Makefile.include
- WAMR_SOURCE = $(CURDIR)/../../..
- WAMR_BUILD_DIR = $(BINDIR)/wamr
- #less Wall TODO: get things fixed
- CFLAGS := $(filter-out -pedantic, $(CFLAGS))
- CFLAGS += -Wno-format
- CFLAGS += -Wno-strict-prototypes
- CFLAGS += -Wno-old-style-definition
- CFLAGS += -Wno-cast-function-type
- WAMR_CORE = $(WAMR_SOURCE)/core
- IWASM_ROOT = $(WAMR_CORE)/iwasm
- SHARED_LIB_ROOT = $(WAMR_CORE)/shared
- IWASM_INCLUDES += ${IWASM_ROOT}/include \
- ${SHARED_LIB_ROOT}/platform/include \
- ${SHARED_LIB_ROOT}/platform/riot \
- INCLUDES += $(addprefix -I,${IWASM_INCLUDES})
- RIOT_INCLUDES = $(filter-out -%,$(subst -I,,$(INCLUDES)))
- #WAMR_BUILD_TARGET is "X86_32" "AARCH64[sub]", "ARM[sub]",
- # "THUMB[sub]", "MIPS" or "XTENSA"
- #no msp430, no AVR support for now
- #translate (CPU_ARCH) to Build Target
- ifeq ($(CPU),native)
- #$(CPU) is defined for every CPU
- #Riot native is x86_32
- WAMR_BUILD_TARGET = X86_32
- else ifeq ($(findstring arm,$(CPU_ARCH)),arm)
- WAMR_BUILD_TARGET = THUMB
- else ifeq ($(CPU_ARCH),mips32r2)
- WAMR_BUILD_TARGET = MIPS
- else ifeq ($(CPU_ARCH),xtensa)
- WAMR_BUILD_TARGET = XTENSA
- endif
- ifeq ($(QUIET), 0)
- CMAKEMAKEFLAGS += VERBOSE=1
- endif
- $(BINDIR)/libwamr.a: $(WAMR_BUILD_DIR)/libwamr.a
- cp $< $@
- $(WAMR_BUILD_DIR)/libwamr.a: $(WAMR_BUILD_DIR)/Makefile
- $(MAKE) -C $(WAMR_BUILD_DIR) $(CMAKEMAKEFLAGS)
- $(WAMR_BUILD_DIR)/Makefile: CMakeLists.txt
- cmake -B$(WAMR_BUILD_DIR) \
- "-DRIOT_INCLUDES=$(RIOT_INCLUDES)"\
- -DWAMR_ROOT_DIR=$(WAMR_SOURCE)\
- -DWAMR_BUILD_TARGET=$(WAMR_BUILD_TARGET)\
- -DCMAKE_SYSTEM_NAME=Generic \
- -DCMAKE_SYSTEM_PROCESSOR="$(MCPU)" \
- -DCMAKE_C_COMPILER=$(CC) \
- -DCMAKE_C_COMPILER_WORKS=TRUE \
- print_build_target:
- @echo CPU_ARCH: $(CPU_ARCH)
- @echo CPU: $(CPU)
- @echo CFLAGS: $(CFLAGS)
- @echo WAMR_BUILD_TARGET: $(WAMR_BUILD_TARGET)
|