Commit a01fb394 authored by Federico Vaga's avatar Federico Vaga

sw:fw: simplify validation mantory variables

Signed-off-by: Federico Vaga's avatarFederico Vaga <federico.vaga@cern.ch>
parent 4e976471
-include Makefile.specific
-include $(CURDIR)/.config
# Validation
ifndef OUTPUT
$(error Missing variable OUTPUT)
endif
ifndef OBJS
$(error Missing variable OBJS)
endif
# and don't touch the rest unless you know what you're doing.
INSTALL_PREFIX ?= .
PATH_COMMON_RT ?= .
......@@ -78,7 +87,7 @@ OBJDIR_BUILD += $(BUILDDIR)
MOCKTURTLE_LDSCRIPT ?= $(TRTL)/software/firmware/urv/mockturtle.ld
.PHONY: all clean cleanall check-def
.PHONY: all clean cleanall
all: $(OUTPUT).bin
......@@ -93,16 +102,9 @@ $(TRTL_SW)/include/hw/mockturtle_cpu_csr.h: $(TRTL_HDL)/cpu/mt_cpu_csr.wb
$(TRTL_SW)/include/hw/mockturtle_cpu_lr.h: $(TRTL_HDL)/cpu/mt_cpu_lr.wb
# target to let wbgen2 to generate headers
$(addprefix $(TRTL_SW)/include/hw/,$(WBGEN_HEADERS)): | check-def
$(addprefix $(TRTL_SW)/include/hw/,$(WBGEN_HEADERS)):
make -C $(TRTL_SW) headers
# check needed env variables
check-def:
ifndef OUTPUT
@echo "OUTPUT variable is mandatory"
@exit 1
endif
# create dirs for object files
$(OBJDIR_BUILD):
mkdir -p $@
......@@ -112,10 +114,10 @@ $(OBJDIR_BUILD):
$(OBJS_BUILD): | $(AUTOCONF)
$(OBJS_BUILD): | $(OBJDIR_BUILD)
$(OUTPUT).elf: $(addprefix $(TRTL_SW)/include/hw/,$(WBGEN_HEADERS)) $(MOCKTURTLE_LDSCRIPT) $(OBJS_BUILD) | check-def
$(OUTPUT).elf: $(addprefix $(TRTL_SW)/include/hw/,$(WBGEN_HEADERS)) $(MOCKTURTLE_LDSCRIPT) $(OBJS_BUILD)
${CC} $(CFLAGS) $(LDFLAGS) -o $(OUTPUT).elf -nostartfiles $(OBJS_BUILD) -T $(MOCKTURTLE_LDSCRIPT)
$(OUTPUT).bin: $(OUTPUT).elf | check-def
$(OUTPUT).bin: $(OUTPUT).elf
${OBJCOPY} --remove-section .smem -O binary $(OUTPUT).elf $(OUTPUT).bin
$(SIZE) $(OUTPUT).elf
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment