msxbuild/lib/make/𓃬𓍄𓋹𓀭/mb_flow_m80.mk
Willem Cazander 7c8f4207c6
All checks were successful
Run test asserts / Test-Asserts (push) Successful in -11s
WIP more flow rename.
2024-07-12 19:30:19 +02:00

50 lines
2.5 KiB
Makefile
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

define __mb_flow_m80_bdos_mono
.RECIPEPREFIX := $(MB_@RECIPE)
$(1): | @init
$(MB_@RECIPE)$$(if $$(wildcard $(1)),,$$(call mb_make_call,mb_os_dir_create,$(1)))
$(MB_@RECIPE)$$(if $$(wildcard $(1)/utils),,$$(call mb_make_call,mb_os_dir_create,$(1)/utils))
$(MB_@RECIPE)$$(call mb_make_call,mb_msxhub_get_macro80,$(1)/utils)
$(MB_@RECIPE)$$(call mb_make_call,mb_msxhub_get_z80asmuk,$(1)/utils)
$(MB_   )$$(call mb_make_call,mb_doc_target_deep,$(1))
$(MB_   )$$(call mb_make_call,mb_make_target_phony,$(1))
$(1)/$(3).mac: $(2)/$(3).mac | $(1)
$(MB_@RECIPE)$$(call mb_make_call,mb_conv_unix2dos,$(2)/$(3).mac,$(1)/$(3).mac)
$(MB_   )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).mac)
$(MB_   )$$(call mb_make_call,mb_proj_grow_deps_phase,@process,$(1)/$(3).mac)
$(1)/$(3).rel: $(1)/$(3).mac
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_cmd,$(1),m80 $$(MB_MAKE_EQUALS)$(3)/Z)
$(MB_   )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).rel)
$(MB_   )$$(call mb_make_call,mb_proj_grow_deps_phase,@compile,$(1)/$(3).rel)
$(1)/$(3).hex: $(1)/$(3).rel
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_cmd,$(1),l80 $(3)$$(MB_MAKE_COMMA)$(3)/N/X/Y/E)
$(MB_   )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).hex)
$(MB_   )$$(call mb_make_call,mb_proj_grow_deps_phase,@link,$(1)/$(3).hex)
$(1)/$(3).com: $(1)/$(3).hex
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_cmd,$(1),hextocom $(3))
$(MB_   )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).com)
$(MB_   )$$(call mb_make_call,mb_proj_grow_deps_phase,@build,$(1)/$(3).com)
$(1)/@build: $(1)/$(3).com
$(MB_   )$$(call mb_make_call,mb_doc_target,$(1)/@build,"Builds the $(1) module.")
$(MB_   )$$(call mb_make_call,mb_make_target_phony,$(1)/@build)
$(1)/@run: $(1)/@build
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_run_gui,$(1))
$(MB_   )$$(call mb_make_call,mb_doc_target_run,$(1)/@run,"Run $(3).com manually with gui.")
$(MB_   )$$(call mb_make_call,mb_make_target_phony,$(1)/@run)
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
endef
define mb_flow_m80_bdos_mono
$(MB_   )$(call mb_make_call,mb_make_check_arg3,$(0),$(1),$(2),$(3))
$(MB_   )$(eval $(call mb_make_call,__$(0),$(1),$(2),$(3)))
endef
$(call mb_make_call,mb_doc_function_flow,mb_flow_m80_bdos_mono,"Inject flow of m80 toolchain bdos mono file module.","<bin-dir> <src-dir> <objname>")