Added basic build system
This commit is contained in:
parent
11eef7bd83
commit
b3f6e6d954
8 changed files with 596 additions and 31 deletions
56
Makefile
Normal file
56
Makefile
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
#
|
||||
# Single top level makefile
|
||||
#
|
||||
|
||||
rwildcard=$(foreach d,$(wildcard $1*),$(call rwildcard,$d/,$2) $(filter $(subst *,%,$2),$d))
|
||||
MODULES := $(call rwildcard, src, */0module.mk)
|
||||
MODULES_LIB := $(call rwildcard, src, */0module.lib.mk)
|
||||
|
||||
-include build/local.inc.mk
|
||||
include build/env.inc.mk
|
||||
include $(MODULES_LIB)
|
||||
include $(MODULES)
|
||||
|
||||
|
||||
.PHONY: all
|
||||
all:
|
||||
@echo TODO: All is build.
|
||||
|
||||
.PHONY: test
|
||||
test:
|
||||
@echo TODO: Testing
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@echo === Cleaning
|
||||
@test $(PATH_BIN) && $(RM) -r $(PATH_BIN);
|
||||
|
||||
|
||||
define mod_mkdir
|
||||
@echo === Create module build folder.
|
||||
$(MKDIR) $(1)
|
||||
endef
|
||||
|
||||
define mod_compile_asm
|
||||
@echo === Compile module asm.
|
||||
$(SDASM) $(SDASM_FLAGS) -I$(LIBASM_SRC)/include $(1) $(2)
|
||||
endef
|
||||
|
||||
define mod_link_asm_lib
|
||||
@echo === Link module asm lib.
|
||||
$(SDAR) $(SDAR_FLAGS) $(1) $(2)
|
||||
endef
|
||||
|
||||
define mod_link_asm_dos
|
||||
@echo === Link module asm dos.
|
||||
$(SDCC) $(SDCC_FLAG_CPU) --no-std-crt0 --code-loc 0x0100 -o $(1) $(2)
|
||||
endef
|
||||
#-l$(LIBASM_LINK)
|
||||
|
||||
define mod_hex2com
|
||||
@echo === Convert to binary
|
||||
cd $(dir $(1)) && $(H2B) -e com $(notdir $(1));
|
||||
@sha1sum $(2);
|
||||
@echo === Done $(notdir $(2))
|
||||
endef
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue