mirror of
https://github.com/espruino/Espruino.git
synced 2025-12-08 19:06:15 +00:00
first stab at having all intermediate + binary files in a different folders - hopefully allow more than one build at the same time eventually
This commit is contained in:
parent
5da94d2513
commit
3f62edcfc4
43
Makefile
43
Makefile
@ -37,8 +37,9 @@
|
|||||||
# CC3000=1 # If compiling for a non-linux target that has internet support, use CC3000 support
|
# CC3000=1 # If compiling for a non-linux target that has internet support, use CC3000 support
|
||||||
# USB_PRODUCT_ID=0x1234 # force a specific USB Product ID (default 0x5740)
|
# USB_PRODUCT_ID=0x1234 # force a specific USB Product ID (default 0x5740)
|
||||||
#
|
#
|
||||||
# GENDIR=MyGenDir # sets directory for files generated during make
|
# GENDIR=MyGenDir # sets directory for intermediate files generated during make
|
||||||
# # GENDIR=/home/mydir/mygendir
|
# OBJDIR=MyObjDir # sets directory for object files generated during make
|
||||||
|
# BINDIR=MyBinDir # sets directory for binaries generated during make
|
||||||
# SETDEFINES=FileDefines # settings which are called after definitions for board are done
|
# SETDEFINES=FileDefines # settings which are called after definitions for board are done
|
||||||
# # SETDEFINES=/home/mydir/myDefines
|
# # SETDEFINES=/home/mydir/myDefines
|
||||||
# UNSUPPORTEDMAKE=FileUnsu# Adds additional files from unsupported sources(means not supported by Gordon) to actual make
|
# UNSUPPORTEDMAKE=FileUnsu# Adds additional files from unsupported sources(means not supported by Gordon) to actual make
|
||||||
@ -65,6 +66,12 @@ include make/sanitycheck.make
|
|||||||
ifndef GENDIR
|
ifndef GENDIR
|
||||||
GENDIR=gen
|
GENDIR=gen
|
||||||
endif
|
endif
|
||||||
|
ifndef OBJDIR
|
||||||
|
OBJDIR=obj
|
||||||
|
endif
|
||||||
|
ifndef BINDIR
|
||||||
|
BINDIR=bin
|
||||||
|
endif
|
||||||
|
|
||||||
ifndef SINGLETHREAD
|
ifndef SINGLETHREAD
|
||||||
MAKEFLAGS=-j5 # multicore
|
MAKEFLAGS=-j5 # multicore
|
||||||
@ -172,9 +179,9 @@ endif
|
|||||||
# Get info out of BOARDNAME.py
|
# Get info out of BOARDNAME.py
|
||||||
# ---------------------------------------------------------------------------------
|
# ---------------------------------------------------------------------------------
|
||||||
# TODO: could check board here and make clean if it's different?
|
# TODO: could check board here and make clean if it's different?
|
||||||
$(shell rm -f CURRENT_BOARD.make)
|
$(shell rm -f $(GENDIR)/CURRENT_BOARD.make)
|
||||||
$(shell python scripts/get_makefile_decls.py $(BOARD) > CURRENT_BOARD.make)
|
$(shell python scripts/get_makefile_decls.py $(BOARD) > $(GENDIR)/CURRENT_BOARD.make)
|
||||||
include CURRENT_BOARD.make
|
include $(GENDIR)/CURRENT_BOARD.make
|
||||||
|
|
||||||
#set or reset defines like USE_GRAPHIC from an external file to customize firmware
|
#set or reset defines like USE_GRAPHIC from an external file to customize firmware
|
||||||
ifdef SETDEFINES
|
ifdef SETDEFINES
|
||||||
@ -668,7 +675,13 @@ PININFOFILE=$(GENDIR)/jspininfo
|
|||||||
SOURCES += $(PININFOFILE).c
|
SOURCES += $(PININFOFILE).c
|
||||||
|
|
||||||
SOURCES += $(WRAPPERSOURCES) $(TARGETSOURCES)
|
SOURCES += $(WRAPPERSOURCES) $(TARGETSOURCES)
|
||||||
SOURCEOBJS = $(SOURCES:.c=.o) $(CPPSOURCES:.cpp=.o) $(CCSOURCES:.cc=.o)
|
SOURCEOBJS = $(patsubst %.c,$(OBJDIR)/%.o,$(SOURCES))
|
||||||
|
ifdef CPPSOURCES
|
||||||
|
SOURCEOBJS += $(patsubst %.cpp,$(OBJDIR)/%.cpp.o,$(CPPSOURCES))
|
||||||
|
endif
|
||||||
|
ifdef CCSOURCES
|
||||||
|
SOURCEOBJS += $(patsubst %.cc,$(OBJDIR)/%.cc.o,$(CCSOURCES))
|
||||||
|
endif
|
||||||
OBJS = $(PRECOMPILED_OBJS) $(SOURCEOBJS)
|
OBJS = $(PRECOMPILED_OBJS) $(SOURCEOBJS)
|
||||||
|
|
||||||
|
|
||||||
@ -795,25 +808,30 @@ quiet_link= LD $@
|
|||||||
quiet_obj_dump= GEN $(PROJ_NAME).lst
|
quiet_obj_dump= GEN $(PROJ_NAME).lst
|
||||||
quiet_obj_to_bin= GEN $(PROJ_NAME).$2
|
quiet_obj_to_bin= GEN $(PROJ_NAME).$2
|
||||||
|
|
||||||
%.o: %.c $(PLATFORM_CONFIG_FILE) $(PININFOFILE).h
|
$(OBJDIR)/%.o: %.c $(PLATFORM_CONFIG_FILE) $(PININFOFILE).h
|
||||||
@echo $($(quiet_)compile)
|
@echo $($(quiet_)compile)
|
||||||
|
@mkdir -p $(shell dirname $@) # create directory if it doesn't exist
|
||||||
@$(call compile)
|
@$(call compile)
|
||||||
|
|
||||||
.cc.o: %.cc $(PLATFORM_CONFIG_FILE) $(PININFOFILE).h
|
$(OBJDIR)/%.cc.o: %.cc $(PLATFORM_CONFIG_FILE) $(PININFOFILE).h
|
||||||
@echo $($(quiet_)compile)
|
@echo $($(quiet_)compile)
|
||||||
|
@mkdir -p $(shell dirname $@) # create directory if it doesn't exist
|
||||||
@$(CC) $(CCFLAGS) $(CFLAGS) $< -o $@
|
@$(CC) $(CCFLAGS) $(CFLAGS) $< -o $@
|
||||||
|
|
||||||
.cpp.o: $(PLATFORM_CONFIG_FILE) $(PININFOFILE).h
|
$(OBJDIR)/%.cpp.o: $(PLATFORM_CONFIG_FILE) $(PININFOFILE).h
|
||||||
@echo $($(quiet_)compile)
|
@echo $($(quiet_)compile)
|
||||||
|
@mkdir -p $(shell dirname $@) # create directory if it doesn't exist
|
||||||
@$(call compile)
|
@$(call compile)
|
||||||
|
|
||||||
# case sensitive - Nordic's files are capitals
|
# case sensitive - Nordic's files are capitals
|
||||||
.s.o:
|
$(OBJDIR)/%.s.o:
|
||||||
@echo $($(quiet_)compile)
|
@echo $($(quiet_)compile)
|
||||||
|
@mkdir -p $(shell dirname $@) # create directory if it doesn't exist
|
||||||
@$(call compile)
|
@$(call compile)
|
||||||
|
|
||||||
.S.o:
|
$(OBJDIR)/%.S.o:
|
||||||
@echo $($(quiet_)compile)
|
@echo $($(quiet_)compile)
|
||||||
|
@mkdir -p $(shell dirname $@) # create directory if it doesn't exist
|
||||||
@$(call compile)
|
@$(call compile)
|
||||||
|
|
||||||
ifdef LINUX # ---------------------------------------------------
|
ifdef LINUX # ---------------------------------------------------
|
||||||
@ -832,8 +850,7 @@ lst: $(PROJ_NAME).lst
|
|||||||
|
|
||||||
clean:
|
clean:
|
||||||
@echo Cleaning targets
|
@echo Cleaning targets
|
||||||
$(Q)find . -name \*.o | grep -v "./arm-bcm2708\|./gcc-arm-none-eabi" | xargs rm -f
|
$(Q)rm -rf $(OBJDIR)/*
|
||||||
$(Q)find . -name \*.d | grep -v "./arm-bcm2708\|./gcc-arm-none-eabi" | xargs rm -f
|
|
||||||
$(Q)rm -f $(ROOT)/gen/*.c $(ROOT)/gen/*.h $(ROOT)/gen/*.ld
|
$(Q)rm -f $(ROOT)/gen/*.c $(ROOT)/gen/*.h $(ROOT)/gen/*.ld
|
||||||
$(Q)rm -f $(ROOT)/scripts/*.pyc $(ROOT)/boards/*.pyc
|
$(Q)rm -f $(ROOT)/scripts/*.pyc $(ROOT)/boards/*.pyc
|
||||||
$(Q)rm -f $(PROJ_NAME).elf
|
$(Q)rm -f $(PROJ_NAME).elf
|
||||||
|
|||||||
1
bin/README.md
Normal file
1
bin/README.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
This is where built binaries go
|
||||||
1
build/README.md
Normal file
1
build/README.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
Intermediate build files end up here
|
||||||
@ -12,7 +12,7 @@ ifdef NRF_SDK17
|
|||||||
# Use SDK17
|
# Use SDK17
|
||||||
NRF5X_SDK=17
|
NRF5X_SDK=17
|
||||||
NRF5X_SDK_17=1
|
NRF5X_SDK_17=1
|
||||||
NRF5X_SDK_PATH=$(ROOT)/targetlibs/nrf5x_17
|
NRF5X_SDK_PATH=targetlibs/nrf5x_17
|
||||||
DEFINES += -DNRF_SD_BLE_API_VERSION=7
|
DEFINES += -DNRF_SD_BLE_API_VERSION=7
|
||||||
DEFINES += -D__HEAP_SIZE=0
|
DEFINES += -D__HEAP_SIZE=0
|
||||||
ifeq ($(CHIP),NRF52840)
|
ifeq ($(CHIP),NRF52840)
|
||||||
@ -29,7 +29,7 @@ ifdef NRF_SDK15
|
|||||||
# Use SDK15
|
# Use SDK15
|
||||||
NRF5X_SDK=15
|
NRF5X_SDK=15
|
||||||
NRF5X_SDK_15=1
|
NRF5X_SDK_15=1
|
||||||
NRF5X_SDK_PATH=$(ROOT)/targetlibs/nrf5x_15
|
NRF5X_SDK_PATH=targetlibs/nrf5x_15
|
||||||
DEFINES += -DNRF_SD_BLE_API_VERSION=6
|
DEFINES += -DNRF_SD_BLE_API_VERSION=6
|
||||||
DEFINES += -D__HEAP_SIZE=0
|
DEFINES += -D__HEAP_SIZE=0
|
||||||
ifeq ($(CHIP),NRF52840)
|
ifeq ($(CHIP),NRF52840)
|
||||||
@ -48,7 +48,7 @@ ifdef NRF_SDK14
|
|||||||
# Use SDK14
|
# Use SDK14
|
||||||
NRF5X_SDK=14
|
NRF5X_SDK=14
|
||||||
NRF5X_SDK_14=1
|
NRF5X_SDK_14=1
|
||||||
NRF5X_SDK_PATH=$(ROOT)/targetlibs/nrf5x_14
|
NRF5X_SDK_PATH=targetlibs/nrf5x_14
|
||||||
DEFINES += -DNRF_SD_BLE_API_VERSION=5
|
DEFINES += -DNRF_SD_BLE_API_VERSION=5
|
||||||
DEFINES += -D__HEAP_SIZE=0
|
DEFINES += -D__HEAP_SIZE=0
|
||||||
ifeq ($(CHIP),NRF52840)
|
ifeq ($(CHIP),NRF52840)
|
||||||
@ -61,14 +61,14 @@ ifdef NRF_SDK11
|
|||||||
# Use SDK11
|
# Use SDK11
|
||||||
NRF5X_SDK=11
|
NRF5X_SDK=11
|
||||||
NRF5X_SDK_11=1
|
NRF5X_SDK_11=1
|
||||||
NRF5X_SDK_PATH=$(ROOT)/targetlibs/nrf5x_11
|
NRF5X_SDK_PATH=targetlibs/nrf5x_11
|
||||||
DEFINES += -DNRF_SD_BLE_API_VERSION=2
|
DEFINES += -DNRF_SD_BLE_API_VERSION=2
|
||||||
SOFTDEVICE = $(SOFTDEVICE_PATH)/hex/s132_nrf52_2.0.0_softdevice.hex
|
SOFTDEVICE = $(SOFTDEVICE_PATH)/hex/s132_nrf52_2.0.0_softdevice.hex
|
||||||
else
|
else
|
||||||
# Use SDK12
|
# Use SDK12
|
||||||
NRF5X_SDK=12
|
NRF5X_SDK=12
|
||||||
NRF5X_SDK_12=1
|
NRF5X_SDK_12=1
|
||||||
NRF5X_SDK_PATH=$(ROOT)/targetlibs/nrf5x_12
|
NRF5X_SDK_PATH=targetlibs/nrf5x_12
|
||||||
DEFINES += -DNRF_SD_BLE_API_VERSION=3
|
DEFINES += -DNRF_SD_BLE_API_VERSION=3
|
||||||
SOFTDEVICE = $(SOFTDEVICE_PATH)/hex/s132_nrf52_3.1.0_softdevice.hex
|
SOFTDEVICE = $(SOFTDEVICE_PATH)/hex/s132_nrf52_3.1.0_softdevice.hex
|
||||||
endif
|
endif
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
TENSOR_ROOT := $(ROOT)/libs/tensorflow
|
TENSOR_ROOT := libs/tensorflow
|
||||||
CCSOURCES += \
|
CCSOURCES += \
|
||||||
$(TENSOR_ROOT)/tensorflow/lite/micro/simple_memory_allocator.cc \
|
$(TENSOR_ROOT)/tensorflow/lite/micro/simple_memory_allocator.cc \
|
||||||
$(TENSOR_ROOT)/tensorflow/lite/micro/memory_helpers.cc \
|
$(TENSOR_ROOT)/tensorflow/lite/micro/memory_helpers.cc \
|
||||||
|
|||||||
@ -53,7 +53,7 @@ if binaryName.find('.bin')>=0:
|
|||||||
binaryName = binaryName[:binaryName.find('.bin')]
|
binaryName = binaryName[:binaryName.find('.bin')]
|
||||||
if binaryName.find('.hex')>=0:
|
if binaryName.find('.hex')>=0:
|
||||||
binaryName = binaryName[:binaryName.find('.hex')]
|
binaryName = binaryName[:binaryName.find('.hex')]
|
||||||
print("PROJ_NAME="+binaryName)
|
print("PROJ_NAME=$(BINDIR)/"+binaryName)
|
||||||
|
|
||||||
if board.chip["family"]!="LINUX":
|
if board.chip["family"]!="LINUX":
|
||||||
print("EMBEDDED=1")
|
print("EMBEDDED=1")
|
||||||
@ -76,5 +76,5 @@ if 'USB' in board.devices:
|
|||||||
|
|
||||||
if 'bootloader' in board.info and board.info['bootloader']==1:
|
if 'bootloader' in board.info and board.info['bootloader']==1:
|
||||||
print("USE_BOOTLOADER:=1")
|
print("USE_BOOTLOADER:=1")
|
||||||
print("BOOTLOADER_PROJ_NAME:=bootloader_$(PROJ_NAME)")
|
print("BOOTLOADER_PROJ_NAME:=$(BINDIR)/bootloader_"+binaryName)
|
||||||
print("DEFINES+=-DUSE_BOOTLOADER")
|
print("DEFINES+=-DUSE_BOOTLOADER")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user