APPLICATION = lua_basic # If no BOARD is found in the environment, use this default: BOARD ?= native # This has to be the absolute path to the RIOT base directory: RIOTBASE ?= $(CURDIR)/../.. BOARD_INSUFFICIENT_MEMORY := blackpill bluepill calliope-mini cc2650-launchpad \ cc2650stk i-nucleo-lrwan1 lobaro-lorabox maple-mini \ microbit nrf51dk nrf51dongle \ nucleo-f030r8 nucleo-f031k6 \ nucleo-f042k6 nucleo-f070rb nucleo-f072rb \ nucleo-f103rb nucleo-f302r8 nucleo-f303k8 \ nucleo-f334r8 nucleo-f410rb nucleo-l031k6 \ nucleo-l053r8 opencm904 saml10-xpro saml11-xpro \ spark-core stm32f0discovery stm32l0538-disco BOARD_BLACKLIST := arduino-duemilanove arduino-leonardo \ arduino-mega2560 arduino-nano \ arduino-uno chronos hifive1 hifive1b jiminy-mega256rfr2 \ mega-xplained msb-430 msb-430h pic32-clicker \ pic32-wifire telosb waspmote-pro wsn430-v1_3b wsn430-v1_4 z1 # 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 ifneq ($(BOARD),native) # This stack size is large enough to run Lua print() functions of # various lengths. Other functions untested. CFLAGS += -DTHREAD_STACKSIZE_MAIN='(THREAD_STACKSIZE_DEFAULT+2048)' endif USEPKG += lua LUA_PATH = $(BINDIR)/lua # add directory of generated *.lua.h files to include path CFLAGS += -I$(LUA_PATH) # generate .lua.h header files of .lua files LUA = $(wildcard *.lua) LUA_H = $(LUA:%.lua=$(LUA_PATH)/%.lua.h) BUILDDEPS += $(LUA_H) $(LUA_PATH)/ include $(RIOTBASE)/Makefile.include # The code below generates a header file from any .lua scripts in the # example directory. The header file contains a byte array of the # ASCII characters in the .lua script. $(LUA_PATH)/: $(Q)mkdir -p $@ # FIXME: This way of embedding lua code is not robust. A proper script will # be included later. $(LUA_H): $(LUA_PATH)/%.lua.h: %.lua | $(LUA_PATH)/ $(Q)xxd -i $< | sed 's/^unsigned/const unsigned/g' > $@