From a71f283d1da464d53839dfc0b53003554c5beca2 Mon Sep 17 00:00:00 2001 From: Willem Date: Fri, 5 Jul 2024 20:43:18 +0200 Subject: [PATCH] Fixed openMSX export and WIP adding first flow generators. --- .forgejo/workflows/run-test-asserts.yaml | 1 + Makefile | 21 +- README.md | 3 +- lib/make/mb_autoexec.mk | 95 +++---- lib/make/mb_doc.mk | 300 ++++++++++++++++------- lib/make/mb_flight.mk | 14 +- lib/make/mb_make.mk | 99 ++++++++ lib/make/mb_msxhub.mk | 56 ++--- lib/make/mb_msxpipe.mk | 56 ++--- lib/make/mb_msxrom.mk | 52 ++-- lib/make/mb_openmsx.mk | 47 ++-- lib/make/mb_sdcc.mk | 40 +-- lib/make/msxbuild.mk | 36 +-- src/0module.mk | 19 -- src/0module/assert-all/0module.mk | 5 +- src/0module/clean/0module.mk | 4 +- src/0module/prepare/0module.mk | 4 +- src/ahello-m80-test/0module.mk | 1 + src/ahello-m80/0module.mk | 69 +++++- src/ahello-sdcc-test/0module.mk | 4 +- src/ahello-sdcc/0module.mk | 4 +- src/dist-qa-dos1/0module.mk | 4 +- src/dist-qa-dos2/0module.mk | 4 +- src/dist-qa-msx1/0module.mk | 26 +- src/dist-qa-msxhub/0module.mk | 74 +++--- src/dist/0module.mk | 4 +- src/make-on-msx/0module.mk | 52 ++-- src/mbboot80-test/0module.mk | 4 +- src/mbboot80/0module.mk | 20 +- 29 files changed, 703 insertions(+), 415 deletions(-) create mode 100644 lib/make/mb_make.mk delete mode 100644 src/0module.mk diff --git a/.forgejo/workflows/run-test-asserts.yaml b/.forgejo/workflows/run-test-asserts.yaml index 4d25249..5eb74c4 100644 --- a/.forgejo/workflows/run-test-asserts.yaml +++ b/.forgejo/workflows/run-test-asserts.yaml @@ -5,6 +5,7 @@ on: - master pull_request: env: + VERBOSE: please-show-me-all MB_AUTOEXEC_STARTUP_NOTE: ${{github.workflow}} MB_AUTOEXEC_EMBED_USER: GITHUB_ACTOR MB_AUTOEXEC_EMBED_VARS: GITHUB_EVENT_NAME GITHUB_REF_NAME GITHUB_REF_TYPE GITHUB_REPOSITORY GITHUB_REPOSITORY_OWNER diff --git a/Makefile b/Makefile index 0b7f60b..6a38f1a 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,18 @@ # -# Example project makefile for msxbuild. +# Module based project makefile for msxbuild. # .SUFFIXES: -PATH_BIN := bin -PATH_SRC := src - -all: - $(call mb_doc_show_help@all) -.PHONY: all +.PHONY: Makefile +ifndef VERBOSE +.SILENT: +endif +ifeq ($(.DEFAULT_GOAL),) +.DEFAULT_GOAL := @help +endif +PATH_BIN := bin +PATH_SRC := src include lib/make/msxbuild.mk -include $(call mb_rwildcard, $(PATH_SRC), */0module.mk) +$(eval $(call mb_make_call,mb_doc_flow_help)) +$(eval $(call mb_make_call,mb_make_flow_0module)) + diff --git a/README.md b/README.md index 1456e92..2fa9720 100644 --- a/README.md +++ b/README.md @@ -22,10 +22,11 @@ But as always, feel free to extend it for your specific needs or contribute a fi * sdcc * openmsx * ffmpeg +* rsync For debian use; - apt-get install make wget tar gawk grep dos2unix sdcc openmsx ffmpeg + apt-get install make wget tar gawk grep dos2unix sdcc openmsx ffmpeg rsync ## Usage Classic diff --git a/lib/make/mb_autoexec.mk b/lib/make/mb_autoexec.mk index fd51aa9..dc102c5 100644 --- a/lib/make/mb_autoexec.mk +++ b/lib/make/mb_autoexec.mk @@ -1,130 +1,130 @@ -MB_AUTOEXEC_SHOW_VERSION ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_VERSION,"Print OS version on boot.") +MB_AUTOEXEC_SHOW_VERSION ?= off +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_VERSION,"Print OS version on boot.") MB_AUTOEXEC_SHOW_PATH ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_PATH,"Print search path on boot.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_PATH,"Print search path on boot.") MB_AUTOEXEC_SHOW_INIT ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_INIT,"Print msxbuild init message on boot.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_INIT,"Print msxbuild init message on boot.") MB_AUTOEXEC_SHOW_HOST ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_HOST,"Print host machine on boot.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_HOST,"Print host machine on boot.") MB_AUTOEXEC_SHOW_USER ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_USER,"Print host user on boot.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_USER,"Print host user on boot.") MB_AUTOEXEC_SHOW_FOLDER ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_FOLDER,"Print host folder on boot.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_FOLDER,"Print host folder on boot.") MB_AUTOEXEC_SHOW_TARGET ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SHOW_TARGET,"Print host target on boot.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SHOW_TARGET,"Print host target on boot.") MB_AUTOEXEC_STARTUP_TIMEOUT ?= 60 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_STARTUP_TIMEOUT,"Startup failure timeout of autoexec.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_STARTUP_TIMEOUT,"Startup failure timeout of autoexec.") MB_AUTOEXEC_STARTUP_EXITCODE ?= 124 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_STARTUP_EXITCODE,"Startup failure exit code of autoexec.") +MB_DOC_MAKE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_STARTUP_EXITCODE,"Startup failure exit code of autoexec.") MB_AUTOEXEC_SAFE_TEST_TIMEOUT ?= 120 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SAFE_TEST_TIMEOUT,"Safe test execution failure timeout.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_TEST_TIMEOUT,"Safe test execution failure timeout.") MB_AUTOEXEC_SAFE_TEST_EXITCODE ?= 1 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SAFE_TEST_EXITCODE,"Safe test execution failure exit code.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_TEST_EXITCODE,"Safe test execution failure exit code.") MB_AUTOEXEC_SAFE_CMD_TIMEOUT ?= 300 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SAFE_CMD_TIMEOUT,"Safe command execution failure timeout.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_CMD_TIMEOUT,"Safe command execution failure timeout.") MB_AUTOEXEC_SAFE_CMD_EXITCODE ?= 1 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_SAFE_CMD_EXITCODE,"Safe command execution failure exit code.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_CMD_EXITCODE,"Safe command execution failure exit code.") MB_AUTOEXEC_STARTUP_NOTE ?= -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_STARTUP_NOTE,"When set this startup note message is shown.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_STARTUP_NOTE,"When set this startup note message is shown.") MB_AUTOEXEC_COLOR_FG ?= 151 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_COLOR_FG,"Default foreground color if none is given.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_COLOR_FG,"Default foreground color if none is given.") MB_AUTOEXEC_COLOR_BG ?= 000 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_COLOR_BG,"Default background color if none if given.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_COLOR_BG,"Default background color if none if given.") MB_AUTOEXEC_EMBED_VARS ?= -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_EMBED_VARS,"List of host env variables to copy to msx as 'MB_x' variable.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_EMBED_VARS,"List of host env variables to copy to msx as 'MSX_x' variables.") MB_AUTOEXEC_EMBED_USER ?= USER -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_EMBED_USER,"Embedds this host variable to the msx as 'MK_USER' variable.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_EMBED_USER,"Embedds this host variable to the msx as 'MB_USER' variable.") MB_AUTOEXEC_TIME_FORMAT ?= 24 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_TIME_FORMAT,"The time format the msx will get set to.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_TIME_FORMAT,"The time format the msx will get set to.") MB_AUTOEXEC_DATE_FORMAT ?= DD/MM/YY -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_DATE_FORMAT,"The time format the msx will get set to.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_DATE_FORMAT,"The time format the msx will get set to.") -MB_AUTOEXEC_PROMPT_FORMAT ?= %MK_USER%@%_CWD%$ -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_PROMPT_FORMAT,"The prompt format for command 2.40 and higher.") +MB_AUTOEXEC_PROMPT_FORMAT ?= %MB_USER%@%_CWD%* +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_PROMPT_FORMAT,"The prompt format for command 2.40 and higher.") MB_AUTOEXEC_PROMPT_SPACE ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_AUTOEXEC_PROMPT_SPACE,"When on adds an white space after the prompt format.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_PROMPT_SPACE,"When on adds an white space after the prompt format.") define mb_autoexec_append_cmd echo "$(2)\r" >> $(1)/autoexec.bat endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_cmd,"Appends an command."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_cmd,"Appends an command."," ") define mb_autoexec_append_echo $(call mb_autoexec_append_cmd,$(1),echo $(subst >,>,$(2))) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_echo,"Appends an echo message."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_echo,"Appends an echo message."," ") define mb_autoexec_append_rem $(call mb_autoexec_append_cmd,$(1),rem $(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_rem,"Appends an script remark."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_rem,"Appends an script remark."," ") define mb_autoexec_append_show_gui $(call mb_autoexec_append_cmd,$(1),omsxctl headless_show_gui) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_show_gui,"Appends headless show gui command.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_show_gui,"Appends headless show gui command.","") define mb_autoexec_append_stop_fail $(call mb_autoexec_append_cmd,$(1),omsxctl fail_after 0) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_stop_fail,"Appends stop automatic failure command.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_stop_fail,"Appends stop automatic failure command.","") define mb_autoexec_append_exit $(if $(filter on,$(MB_FLIGHT_SCREEN)),$(call mb_autoexec_append_save_screenshot,$(1))) $(call mb_autoexec_append_cmd,$(1),omsxctl headless_exit) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_exit,"Appends exit emulation command.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_exit,"Appends exit emulation command.","") define mb_autoexec_append_plug_porta $(call mb_autoexec_append_cmd,$(1),omsxctl boot_exec_plug_porta $(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_plug_porta,"Appends an plug device into joyporta action."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_plug_porta,"Appends an plug device into joyporta action."," ") define mb_autoexec_append_plug_portb $(call mb_autoexec_append_cmd,$(1),omsxctl boot_exec_plug_portb $(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_plug_portb,"Appends an plug device into joyportb action."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_plug_portb,"Appends an plug device into joyportb action."," ") define mb_autoexec_append_save_screenshot $(call mb_autoexec_append_cmd,$(1),omsxctl night_flight_save_screenshot $(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_save_screenshot,"Appends save screenshot command."," [prefix]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_save_screenshot,"Appends save screenshot command."," [prefix]") define mb_autoexec_append_save_video $(call mb_autoexec_append_cmd,$(1),omsxctl night_flight_save_video $(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_save_video,"Appends save video command."," [prefix]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_save_video,"Appends save video command."," [prefix]") define mb_autoexec_append_safe_test @@ -132,7 +132,7 @@ define mb_autoexec_append_safe_test $(call mb_autoexec_append_echo,$(1),mb::safe test $(2)) $(call mb_autoexec_append_cmd,$(1),$(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_safe_test,"Appends running a safe test."," [timeout] [exit-code]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_safe_test,"Appends running a safe test."," [timeout] [exit-code]") define mb_autoexec_append_safe_cmd @@ -140,7 +140,7 @@ define mb_autoexec_append_safe_cmd $(call mb_autoexec_append_echo,$(1),mb::safe command $(2)) $(call mb_autoexec_append_cmd,$(1),$(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_safe_cmd,"Appends running a safe command."," [timeout] [exit-code]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_safe_cmd,"Appends running a safe command."," [timeout] [exit-code]") define _mb_autoexec_write_preboot @@ -155,24 +155,25 @@ endef define mb_autoexec_write_default - @echo === Writing autoexec.bat for $@ + $(call mb_make_call,mb_make_echo_good,Write autoexec for $@) @echo -n "" > $(1)/autoexec.bat $(if $(wildcard $(1)/utils),$(call _mb_autoexec_write_preboot,$(1),utils\,$(2),$(3)),$(call _mb_autoexec_write_preboot,$(1),,$(2),$(3))) $(if $(MB_AUTOEXEC_STARTUP_NOTE),$(call mb_autoexec_append_echo,$(1),mb::note $(MB_AUTOEXEC_STARTUP_NOTE))) $(if $(filter on,$(MB_FLIGHT_VIDEO)),$(call mb_autoexec_append_save_video,$(1))) $(if $(filter on,$(MB_AUTOEXEC_SHOW_HOST)),$(call mb_autoexec_append_cmd,$(1),omsxctl boot_exec_show_host)) - echo -n "$(subst $(MB_CHAR_SPACE)set,set,$(foreach var,$(MB_AUTOEXEC_EMBED_VARS),set MB_$(var)=$($(var))\r\n))" >> $(1)/autoexec.bat + echo -n "$(subst $(MB_CHAR_SPACE)set,set,$(foreach var,$(MB_AUTOEXEC_EMBED_VARS),set MSX_$(var)=$($(var))\r\n))" >> $(1)/autoexec.bat $(call mb_autoexec_append_cmd,$(1),set TIME=$(MB_AUTOEXEC_TIME_FORMAT)) $(call mb_autoexec_append_cmd,$(1),set DATE=$(MB_AUTOEXEC_DATE_FORMAT)) $(if $(filter on,$(MB_AUTOEXEC_SHOW_PATH)),$(call mb_autoexec_append_cmd,$(1),echo mb::path %PATH%)) - $(call mb_autoexec_append_cmd,$(1),set MK_SNAIL=$(notdir $@)) - $(call mb_autoexec_append_cmd,$(1),set MK_USER=$($(MB_AUTOEXEC_EMBED_USER))) - $(if $(filter on,$(MB_AUTOEXEC_SHOW_USER)),$(call mb_autoexec_append_echo,$(1),mb::user %MK_USER%)) - $(call mb_autoexec_append_cmd,$(1),set MK_SLIME=$(1)) - $(call mb_autoexec_append_cmd,$(1),set MK_TARGET=$@) - $(if $(filter on,$(MB_AUTOEXEC_SHOW_FOLDER)),$(call mb_autoexec_append_echo,$(1),mb::bath %MK_SLIME%)) - $(if $(filter on,$(MB_AUTOEXEC_SHOW_TARGET)),$(call mb_autoexec_append_echo,$(1),mb::pipe %MK_TARGET%)) - $(if $(filter on,$(MB_AUTOEXEC_PROMPT_SPACE)),$(call mb_autoexec_append_cmd,$(1),set PROMPT \"$(MB_AUTOEXEC_PROMPT_FORMAT) \"),$(call mb_autoexec_append_cmd,$(1),set PROMPT \"$(MB_AUTOEXEC_PROMPT_FORMAT)\")) + $(call mb_autoexec_append_cmd,$(1),set MB_SNAIL=$(notdir $@)) + $(call mb_autoexec_append_cmd,$(1),set MB_USER=$($(MB_AUTOEXEC_EMBED_USER))) + $(if $(filter on,$(MB_AUTOEXEC_SHOW_USER)),$(call mb_autoexec_append_echo,$(1),mb::user %MB_USER%)) + $(call mb_autoexec_append_cmd,$(1),set MB_SLIME=$(1)) + $(call mb_autoexec_append_cmd,$(1),set MB_TARGET=$@) + $(if $(filter on,$(MB_AUTOEXEC_SHOW_FOLDER)),$(call mb_autoexec_append_echo,$(1),mb::bath %MB_SLIME%)) + $(if $(filter on,$(MB_AUTOEXEC_SHOW_TARGET)),$(call mb_autoexec_append_echo,$(1),mb::pipe %MB_TARGET%)) + $(if $(filter on,$(MB_AUTOEXEC_PROMPT_SPACE)),$(call mb_autoexec_append_cmd,$(1),set PROMPT \"$(value MB_AUTOEXEC_PROMPT_FORMAT)$(MB_CHAR_SPACE)\")) + $(if $(filter on,$(MB_AUTOEXEC_PROMPT_SPACE)),,$(call mb_autoexec_append_cmd,$(1),,set PROMPT \"$(value MB_AUTOEXEC_PROMPT_FORMAT)\")) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_write_default,"Write a default autoexec.bat file."," [fg-color] [bg-color]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_write_default,"Write a default autoexec.bat file."," [fg-color] [bg-color]") diff --git a/lib/make/mb_doc.mk b/lib/make/mb_doc.mk index 9bef57f..a23cfce 100644 --- a/lib/make/mb_doc.mk +++ b/lib/make/mb_doc.mk @@ -1,112 +1,236 @@ -MB_DOC_HELP_PROJECT ?= "" -MB_DOC_HELP_TARGET ?= "" -MB_DOC_HELP_VARIABLE ?= "" -MB_DOC_HELP_FUNCTION ?= "" -MB_DOC_TXT_BUILD_ALL := "Use 'make help' for possible targets and documention." -MB_DOC_TXT_BUILD_PROJECT := "Welcome to the MSXBUILD help system.\\n\\nFor detailed help use one of the following targets;\\n" -MB_DOC_TXT_BUILD_TARGET := "Build one of the following make targets;\\n" -MB_DOC_TXT_BUILD_VARIABLE := "Documention of the make variables;\\n" -MB_DOC_TXT_BUILD_FUNCTION := "Documention of the make functions;\\n" +MB_DOC_FIRE_VARIABLE_FLOW ?= "" +#*** Recursive variable: MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_VARIABLE_FLOW,"Flow builder of fire flow variable data.") + +MB_DOC_FIRE_HELP ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_HELP,"Flow builder of fire help data.") + +MB_DOC_FIRE_TARGET ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_TARGET,"Flow builder of fire target data.") + +MB_DOC_FIRE_TARGET_DEEP ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_TARGET_DEEP,"Flow builder of fire deep target data.") + +MB_DOC_FIRE_VARIABLE ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_VARIABLE,"Flow builder of fire variable data.") + +MB_DOC_FIRE_VARIABLE_DEEP ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_VARIABLE_DEEP,"Flow builder of fire deep variable data.") + +MB_DOC_FIRE_VARIABLE_ROCK ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_VARIABLE_ROCK,"Flow builder of fire rock variable data.") + +MB_DOC_FIRE_FUNCTION ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_FUNCTION,"Flow builder of fire function data.") + +MB_DOC_FIRE_FUNCTION_DEEP ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_FUNCTION_DEEP,"Flow builder of fire deep function data.") + +MB_DOC_FIRE_FUNCTION_FLOW ?= "" +MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,mb_doc_variable_flow,MB_DOC_FIRE_FUNCTION_FLOW,"Flow builder of fire flow function data.") + +MB_DOC_XML_ROOT := firemake +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_DOC_XML_ROOT,"XML root tag for firemake output.") + +MB_DOC_XML_ATTR_NAME := name +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_DOC_XML_ATTR_NAME,"XML name attribute for firemake output.") + +MB_DOC_XML_ATTR_LEVEL := level +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_DOC_XML_ATTR_LEVEL,"XML level attribute for firemake output.") + +MB_DOC_XML_TAG_ARGS := arguments +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_DOC_XML_TAG_ARGS,"XML arguments tag for firemake output.") + +MB_DOC_XML_TAG_DESC := description +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_DOC_XML_TAG_DESC,"XML description tag for firemake output.") + +MB_DOC_XML_TAG_VALUE := value +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_DOC_XML_TAG_VALUE,"XML value tag for firemake output.") MB_DOC_FORMAT ?= txt -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_DOC_FORMAT,"Output format of documention$(MB_CHAR_COMMA) only 'txt' is supported currently.") - - -define _mb_doc_xml_open -$(MB_CHAR_LT)$(1)$(if $(2), $(2)=\"$(3)\")$(MB_CHAR_GT) -endef -define _mb_doc_xml_close -$(MB_CHAR_LT)/$(1)$(MB_CHAR_GT) -endef -define _mb_doc_xml_tag_value -$(if $(2),$(call _mb_doc_xml_open,$(1))$(MB_CHAR_CDATA_START)$(2)$(MB_CHAR_CDATA_END)$(call _mb_doc_xml_close,$(1))) -endef - - -define _mb_doc_function_txt - "* "$(1)$(if $(3), $(3))$(if $(2),\\n\\t$(2)\\n)\\n -endef -define _mb_doc_function_xml - \\n\\t$(call _mb_doc_xml_open,function,name,$(1))\\n\\t\\t$(call _mb_doc_xml_tag_value,args,$(3))\\n\\t\\t$(call _mb_doc_xml_tag_value,desc,$(2))\\n\\t$(call _mb_doc_xml_close,function) -endef -define mb_doc_function - $(call _mb_doc_function_$(MB_DOC_FORMAT),$(1),$(2),$(3)) -endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_function,"Prints formatted documention of an function."," [desc] [args]") +MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,MB_DOC_FORMAT,"Output format of documention$(MB_MAKE_COMMA) only 'txt' is supported currently.") define _mb_doc_variable_txt - "* "$(1)=$(subst \\n,\\\n,$(3))\\n$(if $(2),\\t$(2)\\n)\\n + "* "$(2)=$(subst \\n,\\\n,$(4))\\n$(if $(3),\\t$(3)\\n)\\n endef define _mb_doc_variable_xml - \\n\\t$(call _mb_doc_xml_open,variable,name,$(1))\\n\\t\\t$(call _mb_doc_xml_tag_value,value,$(3))\\n\\t\\t$(call _mb_doc_xml_tag_value,desc,$(2))\\n\\t$(call _mb_doc_xml_close,variable) + \\n\\t$(call mb_make_xml_open,variable,$(MB_DOC_XML_ATTR_NAME),$(2),$(MB_DOC_XML_ATTR_LEVEL),$(1))\\n\\t\\t$(call mb_make_xml_tag_value,$(MB_DOC_XML_TAG_VALUE),$(4))\\n\\t\\t$(call mb_make_xml_tag_value,$(MB_DOC_XML_TAG_DESC),$(3))\\n\\t$(call mb_make_xml_close,variable) endef define mb_doc_variable - $(call _mb_doc_variable_$(MB_DOC_FORMAT),$(1),$(2),$($(1))) + $(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),build,$(1),$(2),$($(1))) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_variable,"Prints formatted documention of an variable."," [desc]") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_variable,"Prints formatted documention of an variable."," [desc]") +define mb_doc_variable_deep + $(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),deep,$(1),$(2),$($(1))) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_variable_deep,"Prints formatted documention of an deep variable."," [desc]") +define mb_doc_variable_rock + $(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),rock,$(1),$(2),$($(1))) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_variable_rock,"Prints formatted documention of an rock variable."," [desc]") +define mb_doc_variable_flow + $(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),flow,$(1),$(2),$(words $($(1)))) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_variable_flow,"Prints formatted documention of an flow variable."," [desc]") + + +define _mb_doc_function_txt + "* "$(2)$(if $(4), $(4))$(if $(3),\\n\\t$(3)\\n)\\n +endef +define _mb_doc_function_xml + \\n\\t$(call mb_make_xml_open,function,$(MB_DOC_XML_ATTR_NAME),$(2),$(MB_DOC_XML_ATTR_LEVEL),$(1))\\n\\t\\t$(call mb_make_xml_tag_value,$(MB_DOC_XML_TAG_ARGS),$(4))\\n\\t\\t$(call mb_make_xml_tag_value,$(MB_DOC_XML_TAG_DESC),$(3))\\n\\t$(call mb_make_xml_close,function) +endef +define mb_doc_function + $(call mb_make_call,_mb_doc_function_$(MB_DOC_FORMAT),build,$(1),$(2),$(3)) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_function,"Prints formatted documention of an function."," [desc] [args]") +define mb_doc_function_deep + $(call mb_make_call,_mb_doc_function_$(MB_DOC_FORMAT),deep,$(1),$(2),$(3)) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_function_deep,"Prints formatted documention of an deep function."," [desc] [args]") +define mb_doc_function_flow + $(call mb_make_call,_mb_doc_function_$(MB_DOC_FORMAT),flow,$(1),$(2),$(3)) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_function_flow,"Prints formatted documention of an flow function."," [desc] [args]") define _mb_doc_target_txt - "* "$(1)$(if $(2),\\n\\t$(2))\\n\\n + "* "$(2)$(if $(3),\\n\\t$(3))\\n\\n endef define _mb_doc_target_xml - \\n\\t$(call _mb_doc_xml_open,target,name,$(1))\\n\\t\\t$(call _mb_doc_xml_tag_value,desc,$(2))\\n\\t$(call _mb_doc_xml_close,target) + \\n\\t$(call mb_make_xml_open,target,$(MB_DOC_XML_ATTR_NAME),$(2),$(MB_DOC_XML_ATTR_LEVEL),$(1))$(if $3,\\n\\t\\t$(call mb_make_xml_tag_value,$(MB_DOC_XML_TAG_DESC),$(3))\\n\\t$(call mb_make_xml_close,target),\\n\\t$(call mb_make_xml_close,target)) endef define mb_doc_target - $(call _mb_doc_target_$(MB_DOC_FORMAT),$(1),$(2)) + $(call mb_make_call,_mb_doc_target_$(MB_DOC_FORMAT),build,$(1),$(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_target,"Prints formatted documention of an target."," [desc]") - - -define _mb_doc_project_txt - "* "$(1)\\n +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_target,"Prints formatted documention of an target."," [desc]") +define mb_doc_target_deep + $(call mb_make_call,_mb_doc_target_$(MB_DOC_FORMAT),deep,$(1),$(2)) endef -define _mb_doc_project_xml - \\n$(call _mb_doc_xml_open,project)\\n\\t$(call _mb_doc_xml_tag_value,name,$(1))\\n$(call _mb_doc_xml_close,project) +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_target_deep,"Prints formatted documention of an deep target."," [desc]") +define mb_doc_target_help + $(call mb_make_call,_mb_doc_target_$(MB_DOC_FORMAT),help,$(1),$(2)) endef -define mb_doc_project - $(call _mb_doc_project_$(MB_DOC_FORMAT),$(1)) +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_target_help,"Prints formatted documention of an help target."," [desc]") + + +define mb_doc_flow_help +@help: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Welcome to the MSXBUILD help system.\\n\\nFor detailed fire help use one of the following targets;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_HELP) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help + + +@help-variable: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the make fire variables;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_VARIABLE) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-variable +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-variable,"Lists build variables.") + + +@help-variable-deep: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the deep make variables;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_VARIABLE_DEEP) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-variable-deep +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-variable-deep,"Lists deep variables.") + + +@help-variable-rock: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the rock make variables;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_VARIABLE_ROCK) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-variable-rock +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-variable-rock,"Lists rock variables.") + + +@help-variable-flow: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the flow make variables;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_VARIABLE_FLOW) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-variable-flow +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-variable-flow,"Lists flow variables.") + + +@help-function: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the make fire functions;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_FUNCTION) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-function +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-function,"Lists build functions.") + + +@help-function-deep: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the deep make functions;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_FUNCTION_DEEP) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-function-deep +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-function-deep,"Lists deep functions.") + + +@help-function-flow: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the flow make functions;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_FUNCTION_FLOW) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-function-flow +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-function-flow,"Lists flow functions.") + + +@help-target: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Build one of the following make fire targets;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_TARGET) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-target +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-target,"Lists build targets.") + + +@help-target-deep: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Build one of the following deep make targets;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + @echo $$(MB_DOC_FIRE_TARGET_DEEP) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) +.PHONY: @help-target-deep +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-target-deep,"Lists deep targets.") + + +@help-all: + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of all fire functions/variables/targets;\\n") + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT))) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Variables\\n")) + @echo $$(MB_DOC_FIRE_VARIABLE) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Variables in the deep\\n")) + @echo $$(MB_DOC_FIRE_VARIABLE_DEEP) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Variables hard as rock\\n")) + @echo $$(MB_DOC_FIRE_VARIABLE_ROCK) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Variables defining flow\\n")) + @echo $$(MB_DOC_FIRE_VARIABLE_FLOW) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Functions\\n")) + @echo $$(MB_DOC_FIRE_FUNCTION) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Functions in the deep\\n")) + @echo $$(MB_DOC_FIRE_FUNCTION_DEEP) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Functions building flow\\n")) + @echo $$(MB_DOC_FIRE_FUNCTION_FLOW) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Targets\\n")) + @echo $$(MB_DOC_FIRE_TARGET) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,"Targets in the deep\\n")) + @echo $$(MB_DOC_FIRE_TARGET_DEEP) + $$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT))) + $$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_make_echo_good,OK)) +.PHONY: @help-all +MB_DOC_FIRE_HELP += $$(call mb_make_call,mb_doc_target_help,@help-all,"Lists all documented information.") endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_project,"Prints formatted documention of an project (help).","") +MB_DOC_FIRE_FUNCTION_FLOW += $(call mb_make_call,mb_doc_function_flow,mb_doc_flow_help,"Prints flow of fire help target.") -define mb_doc_show_help@all - @echo $(MB_DOC_TXT_BUILD_ALL) -endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_show_help@all,"Displays text for 'make'") - - -define mb_doc_show_help@project - @echo $(MB_DOC_TXT_BUILD_PROJECT) - @echo $(MB_DOC_HELP_PROJECT) -endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_show_help@project,"Displays text for 'make help'") - - -define mb_doc_show_help@target - $(if $(filter txt,$(MB_DOC_FORMAT)),@echo $(MB_DOC_TXT_BUILD_TARGET)) - $(if $(filter xml,$(MB_DOC_FORMAT)),@echo $(call _mb_doc_xml_open,firemake)) - @echo $(MB_DOC_HELP_TARGET) - $(if $(filter xml,$(MB_DOC_FORMAT)),@echo $(call _mb_doc_xml_close,firemake)) -endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_show_help@target,"Displays text for 'make help@target'") - - -define mb_doc_show_help@variable - $(if $(filter txt,$(MB_DOC_FORMAT)),@echo $(MB_DOC_TXT_BUILD_VARIABLE)) - $(if $(filter xml,$(MB_DOC_FORMAT)),@echo $(call _mb_doc_xml_open,firemake)) - @echo $(MB_DOC_HELP_VARIABLE) - $(if $(filter xml,$(MB_DOC_FORMAT)),@echo $(call _mb_doc_xml_close,firemake)) -endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_show_help@variable,"Displays text for 'make help@variable'") - - -define mb_doc_show_help@function - $(if $(filter txt,$(MB_DOC_FORMAT)),@echo $(MB_DOC_TXT_BUILD_FUNCTION)) - $(if $(filter xml,$(MB_DOC_FORMAT)),@echo $(call _mb_doc_xml_open,firemake)) - @echo $(MB_DOC_HELP_FUNCTION) - $(if $(filter xml,$(MB_DOC_FORMAT)),@echo $(call _mb_doc_xml_close,firemake)) -endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_doc_show_help@function,"Displays text for 'make help@function'") diff --git a/lib/make/mb_flight.mk b/lib/make/mb_flight.mk index 46a5a2c..c2d75eb 100644 --- a/lib/make/mb_flight.mk +++ b/lib/make/mb_flight.mk @@ -1,21 +1,21 @@ MB_FLIGHT_SCREEN ?= off -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_FLIGHT_SCREEN,"Creates screenshots on exit of openMSX.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_FLIGHT_SCREEN,"Creates screenshots on exit of openMSX.") MB_FLIGHT_VIDEO ?= off -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_FLIGHT_VIDEO,"Create video of every build pipe session.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_FLIGHT_VIDEO,"Create video of every build pipe session.") MB_FLIGHT_PREFIX ?= msxbuild -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_FLIGHT_PREFIX,"Prefix for video and screenshot flight files.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_FLIGHT_PREFIX,"Prefix for video and screenshot flight files.") MB_FLIGHT_SEPERATOR ?= - -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_FLIGHT_SEPERATOR,"File and index number seperator for flight files.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_FLIGHT_SEPERATOR,"File and index number seperator for flight files.") MB_FLIGHT_RECORD_FLAG ?= -doublesize -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_FLIGHT_RECORD_FLAG,"Command parameter flag of the video recorder.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_FLIGHT_RECORD_FLAG,"Command parameter flag of the video recorder.") MB_FLIGHT_VIDEO_NAME ?= night-flight -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_FLIGHT_VIDEO_NAME,"Video file name of the final result merged video.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_FLIGHT_VIDEO_NAME,"Video file name of the final result merged video.") define mb_flight_video_merge @@ -24,4 +24,4 @@ define mb_flight_video_merge ffmpeg -v quiet -y -f concat -i $(1)/$(MB_FLIGHT_VIDEO_NAME).lst -c copy $(1)/$(MB_FLIGHT_VIDEO_NAME).avi @echo === Flight video completed endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_flight_video_merge,"Merged all flight videos to one.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_flight_video_merge,"Merged all flight videos to one.","") diff --git a/lib/make/mb_make.mk b/lib/make/mb_make.mk new file mode 100644 index 0000000..448fa0d --- /dev/null +++ b/lib/make/mb_make.mk @@ -0,0 +1,99 @@ + +MB_MAKE_COMMA := , +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_COMMA,"Expanded special char; comma.") + +MB_MAKE_SPACE := $(subst ,, ) +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_SPACE,"Expanded special char; space.") + +MB_MAKE_EQUALS := = +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_EQUALS,"Expanded special char; equals.") + +MB_MAKE_BRACKET_RL := "(" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_BRACKET_RL,"Expanded special char; bracket round left.") + +MB_MAKE_BRACKET_RR := ")" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_BRACKET_RR,"Expanded special char; bracket round right.") + +MB_MAKE_BRACKET_SL := "[" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_BRACKET_SL,"Expanded special char; bracket square left.") + +MB_MAKE_BRACKET_SR := "]" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_BRACKET_SR,"Expanded special char; bracket square right.") + +MB_MAKE_BRACKET_CL := "{" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_BRACKET_CL,"Expanded special char; bracket curly left.") + +MB_MAKE_BRACKET_CR := "}" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_BRACKET_CR,"Expanded special char; bracket curly right.") + +MB_MAKE_GT := ">" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_GT,"Expanded special char; greater than.") + +MB_MAKE_LT := "<" +MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_LT,"Expanded special char; lesser than.") + +MB_MAKE_CDATA_START := "" +#skip_print_todo...MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_CDATA_END,"Expanded special char; XML cdata end.") + +MB_MAKE_ECHO_CRAYON ?= "===" +MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,MB_MAKE_ECHO_CRAYON,"Crayon marker for result step output echo's.") + + +define mb_make_rwildcard +$(foreach d,$(wildcard $1*),$(call mb_make_rwildcard,$d/,$2) $(filter $(subst *,%,$2),$d)) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_rwildcard,"Recursive wildcard search."," ") + + +define mb_make_call +$(if $(filter file,$(origin $(1))),$(call $(1),$(2),$(3),$(4),$(5),$(6),$(7),$(8),$(9)),$(error $(1) is not defined)) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_call,"Checked origin call function wrapper."," [args...]") + + +define mb_make_lowercase +$(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$(1))))))))))))))))))))))))))) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_lowercase,"Converts ascii string to lowercase.","") + + +define mb_make_xml_open +$(MB_MAKE_LT)$(1)$(if $(2), $(2)=\"$(3)\")$(if $(4), $(4)=\"$(5)\")$(MB_MAKE_GT) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_xml_open,"Print xml open tag."," [attr1-name] [attr1-value] [attr2-name] [attr2-value]") + + +define mb_make_xml_close +$(MB_MAKE_LT)/$(1)$(MB_MAKE_GT) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_xml_close,"Print xml close tag.","") + + +define mb_make_xml_tag_value +$(if $(2),$(call mb_make_call,mb_make_xml_open,$(1))$(MB_MAKE_CDATA_START)$(2)$(MB_MAKE_CDATA_END)$(call mb_make_call,mb_make_xml_close,$(1))) +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_xml_tag_value,"Print xml tag with value inside."," [value]") + + +define mb_make_echo_good + $(if $(filter -1,$(MB_COLORS)),@echo $(MB_MAKE_ECHO_CRAYON) $(1),/usr/bin/echo -e "\x1B[32m$(MB_MAKE_ECHO_CRAYON)$$1\x1B[39m $(1)") +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_echo_good,"Echo's an message to stdout with 'green' crayon.","") + + +define mb_make_echo_fail + $(if $(filter -1,$(MB_COLORS)),@echo $(MB_MAKE_ECHO_CRAYON) $(1),/usr/bin/echo -e "\x1B[31m$(MB_MAKE_ECHO_CRAYON)$$1\x1B[39m $(1)") +endef +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_make_echo_fail,"Echo's an message to stdout with 'red' crayon.","") + + +define mb_make_flow_0module +include $$(call mb_make_call,mb_make_rwildcard,$(1),*/0module.mk) +endef +MB_DOC_FIRE_FUNCTION_FLOW += $(call mb_make_call,mb_doc_function_flow,mb_make_flow_0module,"Prints flow of recursive 0module.mk include.") + + + diff --git a/lib/make/mb_msxhub.mk b/lib/make/mb_msxhub.mk index e748fef..e342364 100644 --- a/lib/make/mb_msxhub.mk +++ b/lib/make/mb_msxhub.mk @@ -1,9 +1,9 @@ MB_MSXHUB_API ?= https://msxhub.com/api -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXHUB_API,"Resource identifier for msxhub package rest api.") +MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,MB_MSXHUB_API,"Resource identifier for msxhub package rest api.") MB_MSXHUB_CACHE ?= $(MB_CACHE)/msxbuild/msxhub -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXHUB_CACHE,"Cache storage location.") +MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,MB_MSXHUB_CACHE,"Cache storage location.") define _mb_msxhub_file_fetch @@ -16,9 +16,9 @@ endef # NOTE: with HDD import/export we get duplicate files after openMSX run, so force to lowercase. define mb_msxhub_file $(if $(wildcard $(MB_MSXHUB_CACHE)/$(2)),,$(call _mb_msxhub_file_fetch,$(MB_MSXHUB_API)/$(2))) - $(if $(wildcard $(1)/$(call _mb_lowercase,$(notdir $(2)))),,$(call mb_copy,$(MB_MSXHUB_CACHE)/$(2),$(1)/$(call _mb_lowercase,$(notdir $(2))))) + $(if $(wildcard $(1)/$(call mb_make_lowercase,$(notdir $(2)))),,$(call mb_copy,$(MB_MSXHUB_CACHE)/$(2),$(1)/$(call mb_make_lowercase,$(notdir $(2))))) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_file,"Installs msxsub packages from slug into dir."," ") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxhub_file,"Installs msxsub packages from slug into dir."," ") # @@ -28,21 +28,21 @@ define mb_msxhub_get_msxdos1_boot $(call mb_msxhub_file,$(1),MSXDOS1/1.03-2/get/MSXDOS1/MSXDOS.SYS) $(call mb_msxhub_file,$(1),MSXDOS1/1.03-2/get/MSXDOS1/COMMAND.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_msxdos1_boot,"Installs msxdos1 boot files into dir.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxhub_get_msxdos1_boot,"Installs msxdos1 boot files into dir.","") define mb_msxhub_get_msxdos2_boot $(call mb_msxhub_file,$(1),MSXDOS2/2.20-1/get/MSXDOS2/MSXDOS2.SYS) $(call mb_msxhub_file,$(1),MSXDOS2/2.20-1/get/MSXDOS2/COMMAND2.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_msxdos2_boot,"Installs msxdos2 boot files into dir.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxhub_get_msxdos2_boot,"Installs msxdos2 boot files into dir.","") define mb_msxhub_get_nextor_boot $(call mb_msxhub_file,$(1),NEXTOR/2.1.0-1/get/NEXTOR/NEXTOR.SYS) $(call mb_msxhub_file,$(1),NEXTOR/2.1.0-1/get/NEXTOR/COMMAND2.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_nextor_boot,"Installs nextor boot files into dir.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxhub_get_nextor_boot,"Installs nextor boot files into dir.","") # @@ -57,7 +57,7 @@ define mb_msxhub_get_msxdos2_utils $(call mb_msxhub_file,$(1),MSXDOS2/2.20-1/get/MSXDOS2/UTILS/XDIR.COM) $(call mb_msxhub_file,$(1),MSXDOS2/2.20-1/get/MSXDOS2/UTILS/KMODE.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_msxdos2_utils,"Installs msxdos2 util files into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_msxdos2_utils,"Installs msxdos2 util files into dir.","") define mb_msxhub_get_nextor_utils @@ -75,7 +75,7 @@ define mb_msxhub_get_nextor_utils $(call mb_msxhub_file,$(1),NEXTOR/2.1.0-1/get/NEXTOR/NEXBOOT.COM) $(call mb_msxhub_file,$(1),NEXTOR/2.1.0-1/get/NEXTOR/CONCLUS.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_nextor_utils,"Installs nextor util files into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_nextor_utils,"Installs nextor util files into dir.","") # @@ -87,7 +87,7 @@ define mb_msxhub_get_macro80 $(call mb_msxhub_file,$(1),MACRO80/2.0-1/get/MACRO80/LIB80.COM) $(call mb_msxhub_file,$(1),MACRO80/2.0-1/get/MACRO80/M80.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_macro80,"Installs macro80 package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_macro80,"Installs macro80 package into dir.","") define mb_msxhub_get_z80asmuk @@ -101,7 +101,7 @@ define mb_msxhub_get_z80asmuk $(call mb_msxhub_file,$(1),Z80ASMUK/3.4-1/get/Z80ASMUK/ZSMPP.COM) $(call mb_msxhub_file,$(1),Z80ASMUK/3.4-1/get/Z80ASMUK/HEXTOBIN.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_z80asmuk,"Installs z80asmuk package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_z80asmuk,"Installs z80asmuk package into dir.","") define mb_msxhub_get_wbass2 @@ -109,14 +109,14 @@ define mb_msxhub_get_wbass2 $(call mb_msxhub_file,$(1),WBASS2/2.0-1/get/WBASS2/wbass2.bin) $(call mb_msxhub_file,$(1),WBASS2/2.0-1/get/WBASS2/wbass2.bas) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_wbass2,"Installs wbass2 package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_wbass2,"Installs wbass2 package into dir.","") define mb_msxhub_get_konpass $(call mb_msxhub_file,$(1),KONPASS/1.3.0-1/get/KONPASS/KONPASS.COM) $(call mb_msxhub_file,$(1),KONPASS/1.3.0-1/get/KONPASS/KONPASS.DAT) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_konpass,"Installs konpass package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_konpass,"Installs konpass package into dir.","") # @@ -130,37 +130,37 @@ define mb_msxhub_get_pmarc $(call mb_msxhub_file,$(1),PMARC/2.0-1/get/PMARC/PMSET.COM) $(call mb_msxhub_file,$(1),PMARC/2.0-1/get/PMARC/PMSFX2.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_pmarc,"Installs pmarc package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_pmarc,"Installs pmarc package into dir.","") define mb_msxhub_get_lhpack $(call mb_msxhub_file,$(1),LHPACK/1.00-1/get/LHPACK/lhpack.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_lhpack,"Installs lhpack package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_lhpack,"Installs lhpack package into dir.","") define mb_msxhub_get_lhext $(call mb_msxhub_file,$(1),LHEXT/1.34-2/get/LHEXT/lhext.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_lhext,"Installs lhext package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_lhext,"Installs lhext package into dir.","") define mb_msxhub_get_gunzip $(call mb_msxhub_file,$(1),GUNZIP/1.1-1/get/GUNZIP/gunzip.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_gunzip,"Installs gunzip package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_gunzip,"Installs gunzip package into dir.","") define mb_msxhub_get_tunzip $(call mb_msxhub_file,$(1),TUNZIP/0.91-1/get/TUNZIP/tunzip.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_tunzip,"Installs tunzip package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_tunzip,"Installs tunzip package into dir.","") define mb_msxhub_get_popcom $(call mb_msxhub_file,$(1),POPCOM/1.00-2/get/POPCOM/popcom.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_popcom,"Installs popcom package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_popcom,"Installs popcom package into dir.","") # @@ -169,43 +169,43 @@ MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_popcom,"Installs po define mb_msxhub_get_make $(call mb_msxhub_file,$(1),MAKE/2.00-1/get/MAKE/MAKE.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_make,"Installs make package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_make,"Installs make package into dir.","") define mb_msxhub_get_adir $(call mb_msxhub_file,$(1),ADIR/1.3-1/get/ADIR/adir.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_adir,"Installs adir package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_adir,"Installs adir package into dir.","") define mb_msxhub_get_turbo $(call mb_msxhub_file,$(1),TURBO/2.1-1/get/TURBO/turbo.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_turbo,"Installs turbo package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_turbo,"Installs turbo package into dir.","") define mb_msxhub_get_baskom $(call mb_msxhub_file,$(1),BASKOM/1.0-1/get/BASKOM/baskom.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_baskom,"Installs baskom package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_baskom,"Installs baskom package into dir.","") define mb_msxhub_get_binldr $(call mb_msxhub_file,$(1),BINLDR/1.0.2-1/get/BINLDR/BINLDR.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_binldr,"Installs binldr package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_binldr,"Installs binldr package into dir.","") define mb_msxhub_get_dmphex $(call mb_msxhub_file,$(1),DMPHEX/1.00-1/get/DMPHEX/dmphex.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_dmphex,"Installs dmphex package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_dmphex,"Installs dmphex package into dir.","") define mb_msxhub_get_zd $(call mb_msxhub_file,$(1),ZD/3.30-1/get/ZD/zd.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_zd,"Installs zd package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_zd,"Installs zd package into dir.","") define mb_msxhub_get_msxdos2t @@ -233,7 +233,7 @@ define mb_msxhub_get_msxdos2t $(call mb_msxhub_file,$(1),MSXDOS2T/1.0-1/get/MSXDOS2T/VIEW.COM) $(call mb_msxhub_file,$(1),MSXDOS2T/1.0-1/get/MSXDOS2T/WC.COM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_msxdos2t,"Installs msxdos2t package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_msxdos2t,"Installs msxdos2t package into dir.","") # @@ -242,4 +242,4 @@ MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_msxdos2t,"Installs define mb_msxhub_get_gfxage $(call mb_msxhub_file,$(1),GFXAGE/0.99-1/get/GFXAGE/gfxage.com) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxhub_get_gfxage,"Installs gfxage package into dir.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_gfxage,"Installs gfxage package into dir.","") diff --git a/lib/make/mb_msxpipe.mk b/lib/make/mb_msxpipe.mk index 3de73db..98efc78 100644 --- a/lib/make/mb_msxpipe.mk +++ b/lib/make/mb_msxpipe.mk @@ -1,60 +1,60 @@ MB_MSXPIPE_COLOR_FG_SAFE_CMD ?= 116 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_CMD,"Foreground color of safe command session pipe.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_CMD,"Foreground color of safe command session pipe.") MB_MSXPIPE_COLOR_BG_SAFE_CMD ?= 000 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXPIPE_COLOR_BG_SAFE_CMD,"Background color of safe command session pipe.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_BG_SAFE_CMD,"Background color of safe command session pipe.") MB_MSXPIPE_COLOR_FG_SAFE_TEST ?= 511 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_TEST,"Foreground color of safe test session pipe.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_TEST,"Foreground color of safe test session pipe.") MB_MSXPIPE_COLOR_BG_SAFE_TEST ?= 000 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXPIPE_COLOR_BG_SAFE_TEST,"Background color of safe test session pipe.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_BG_SAFE_TEST,"Background color of safe test session pipe.") MB_MSXPIPE_COLOR_FG_RUN_GUI ?= 151 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXPIPE_COLOR_FG_RUN_GUI,"Foreground color of run gui session pipe.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_RUN_GUI,"Foreground color of run gui session pipe.") MB_MSXPIPE_COLOR_BG_RUN_GUI ?= 000 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXPIPE_COLOR_BG_RUN_GUI,"Background color of run gui session pipe.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_BG_RUN_GUI,"Background color of run gui session pipe.") define mb_msxpipe_safe_cmd - $(call mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_SAFE_CMD),$(MB_MSXPIPE_COLOR_BG_SAFE_CMD)) - $(call mb_autoexec_append_safe_cmd,$(1),$(2)) - $(call mb_autoexec_append_exit,$(1)) - $(call mb_openmsx_dosctl,$(1),$(3)) + $(call mb_make_call,mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_SAFE_CMD),$(MB_MSXPIPE_COLOR_BG_SAFE_CMD)) + $(call mb_make_call,mb_autoexec_append_safe_cmd,$(1),$(2)) + $(call mb_make_call,mb_autoexec_append_exit,$(1)) + $(call mb_make_call,mb_openmsx_dosctl,$(1),$(3)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxpipe_safe_cmd,"Runs openMSX and safely executes one command."," [machine]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_safe_cmd,"Runs openMSX and safely executes one command."," [machine]") define mb_msxpipe_safe_test - $(call mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_SAFE_TEST),$(MB_MSXPIPE_COLOR_BG_SAFE_TEST)) - $(call mb_autoexec_append_safe_test,$(1),$(2)) - $(call mb_autoexec_append_exit,$(1)) - $(call mb_openmsx_dosctl,$(1),$(3)) + $(call mb_make_call,mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_SAFE_TEST),$(MB_MSXPIPE_COLOR_BG_SAFE_TEST)) + $(call mb_make_call,mb_autoexec_append_safe_test,$(1),$(2)) + $(call mb_make_call,mb_autoexec_append_exit,$(1)) + $(call mb_make_call,mb_openmsx_dosctl,$(1),$(3)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxpipe_safe_test,"Runs openMSX and safely executes one test."," [machine]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_safe_test,"Runs openMSX and safely executes one test."," [machine]") define _mb_msxpipe_run_gui - $(call mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_RUN_GUI),$(MB_MSXPIPE_COLOR_BG_RUN_GUI)) - $(if $(filter mouse,$(4)),$(call mb_autoexec_append_plug_porta,$(1),$(4))) - $(call mb_autoexec_append_stop_fail,$(1)) - $(call mb_autoexec_append_show_gui,$(1)) - $(call mb_autoexec_append_echo,$(1),mb::help Run shutdown to exit) - $(if $(2),$(call mb_autoexec_append_echo,$(1),mb::auto command $(2))) - $(if $(2),$(call mb_autoexec_append_cmd,$(1),$(2))) - $(call mb_openmsx_dosctl,$(1),$(3)) + $(call mb_make_call,mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_RUN_GUI),$(MB_MSXPIPE_COLOR_BG_RUN_GUI)) + $(if $(filter mouse,$(4)),$(call mb_make_call,mb_autoexec_append_plug_porta,$(1),$(4))) + $(call mb_make_call,mb_autoexec_append_stop_fail,$(1)) + $(call mb_make_call,mb_autoexec_append_show_gui,$(1)) + $(call mb_make_call,mb_autoexec_append_echo,$(1),mb::help Run shutdown to exit) + $(if $(2),$(call mb_make_call,mb_autoexec_append_echo,$(1),mb::auto command $(2))) + $(if $(2),$(call mb_make_call,mb_autoexec_append_cmd,$(1),$(2))) + $(call mb_make_call,mb_openmsx_dosctl,$(1),$(3)) endef define mb_msxpipe_run_gui - $(call _mb_msxpipe_run_gui,$(1),$(2),$(3)) + $(call mb_make_call,_mb_msxpipe_run_gui,$(1),$(2),$(3)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxpipe_run_gui,"Runs openMSX forever with renderer and optionals."," [cmd] [machine]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_run_gui,"Runs openMSX forever with renderer and optionals."," [cmd] [machine]") define mb_msxpipe_run_gui_mouse - $(call _mb_msxpipe_run_gui,$(1),$(2),$(3),mouse) + $(call mb_make_call,_mb_msxpipe_run_gui,$(1),$(2),$(3),mouse) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxpipe_run_gui_mouse,"Runs openMSX forever with renderer and mouse and optionals."," [cmd] [machine]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_run_gui_mouse,"Runs openMSX forever with renderer and mouse and optionals."," [cmd] [machine]") diff --git a/lib/make/mb_msxrom.mk b/lib/make/mb_msxrom.mk index 7880264..d2e38d5 100644 --- a/lib/make/mb_msxrom.mk +++ b/lib/make/mb_msxrom.mk @@ -1,10 +1,10 @@ # TODO: Convert pi MSX number data, the named pie slices to hyperdrive storage for distribution over red sea MB_MSXROM_API ?= https://msxrom.distributedrebirth.love/calc-pi/v19.1 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXROM_API,"Resource identifier for msxrom pi pie named slices data.") +MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,MB_MSXROM_API,"Resource identifier for msxrom pi pie named slices data.") MB_MSXROM_CACHE ?= $(MB_CACHE)/msxbuild/msxrom -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_MSXROM_CACHE,"Cache storage location.") +MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,MB_MSXROM_CACHE,"Cache storage location.") define _mb_msxrom_file_fetch @@ -18,7 +18,7 @@ define mb_msxrom_file $(if $(wildcard $(MB_MSXROM_CACHE)/$(2)),,$(call _mb_msxrom_file_fetch,$(MB_MSXROM_API)/$(2))) $(if $(wildcard $(1)/$(notdir $(2))),,$(call mb_copy,$(MB_MSXROM_CACHE)/$(2),$(1)/$(notdir $(2)))) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_file,"Installs msxroms from slug into an subdir."," ") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_file,"Installs msxroms from slug into an subdir."," ") define mb_msxrom_setup @@ -28,79 +28,79 @@ define mb_msxrom_setup $(if $(wildcard $(1)-omsx/share/systemroms/machines),,$(call mb_mkdir,$(1)-omsx/share/systemroms/machines)) $(if $(wildcard $(1)-omsx/share/systemroms/extensions),,$(call mb_mkdir,$(1)-omsx/share/systemroms/extensions)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_setup,"Creates needed systemrom folders.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_setup,"Creates needed systemrom folders.","") define mb_msxrom_extension_ide $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/ide240.dat) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_ide,"Installs sunrise IDE classic rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_ide,"Installs sunrise IDE classic rom.","") define mb_msxrom_extension_ide_nextor $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/Nextor-2.1.1.SunriseIDE.ROM) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_ide_nextor,"Installs sunrise IDE nextor rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_ide_nextor,"Installs sunrise IDE nextor rom.","") define mb_msxrom_extension_scsi_novaxis $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/novaxis.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_scsi_novaxis,"Installs Gouda SCSI novaxis rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_scsi_novaxis,"Installs Gouda SCSI novaxis rom.","") define mb_msxrom_extension_msxdos22 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/msxdos22.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_msxdos22,"Installs msxdos 2.20 rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_msxdos22,"Installs msxdos 2.20 rom.","") define mb_msxrom_extension_rs232 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/rs232.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_rs232,"Installs rs232 rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_rs232,"Installs rs232 rom.","") define mb_msxrom_extension_fmpac $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/fmpac.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_fmpac,"Installs fmpac rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_fmpac,"Installs fmpac rom.","") define mb_msxrom_extension_fmpac_en $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/fmpac_en.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_fmpac_en,"Installs fmpac english rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_fmpac_en,"Installs fmpac english rom.","") define mb_msxrom_extension_moonsound $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,extensions/yrw801.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_moonsound,"Installs moonsound rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_moonsound,"Installs moonsound rom.","") define mb_msxrom_extension_basickun $(call mb_msxrom_file,$(1)-omsx/share/systemroms/extensions,machines/sanyo/phc-70fd2_basickun.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_extension_basickun,"Installs basickun compiler rom.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_basickun,"Installs basickun compiler rom.","") define mb_msxrom_machine_Canon_V-20 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/canon/v-20_basic-bios1.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Canon_V-20,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Canon_V-20,"Installs machine roms.","") define mb_msxrom_machine_Mitsubishi_ML-F80 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-f80_basic-bios1.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Mitsubishi_ML-F80,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-F80,"Installs machine roms.","") define mb_msxrom_machine_Mitsubishi_ML-FX1 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-fx1_basic-bios1.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Mitsubishi_ML-FX1,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-FX1,"Installs machine roms.","") define mb_msxrom_machine_Mitsubishi_ML-G3_ES @@ -109,13 +109,13 @@ define mb_msxrom_machine_Mitsubishi_ML-G3_ES $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-g3_es_msx2sub.rom) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/mitsubishi/ml-g3_es_rs232.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Mitsubishi_ML-G3_ES,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-G3_ES,"Installs machine roms.","") define mb_msxrom_machine_Philips_VG_8000 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8000_basic-bios1.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Philips_VG_8000,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_VG_8000,"Installs machine roms.","") define mb_msxrom_machine_Philips_VG_8230 @@ -123,7 +123,7 @@ define mb_msxrom_machine_Philips_VG_8230 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8230_disk.rom) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/vg8230_msx2sub.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Philips_VG_8230,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_VG_8230,"Installs machine roms.","") define mb_msxrom_machine_Philips_NMS_8250 @@ -131,14 +131,14 @@ define mb_msxrom_machine_Philips_NMS_8250 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/nms8250_msx2sub.rom) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/philips/nms8250_disk.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Philips_NMS_8250,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_NMS_8250,"Installs machine roms.","") define mb_msxrom_machine_Toshiba_HX-21 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/toshiba/HX21-IC2.BIN) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/toshiba/HX21-IC3.BIN) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Toshiba_HX-21,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Toshiba_HX-21,"Installs machine roms.","") define mb_msxrom_machine_Yamaha_AX200 @@ -146,7 +146,7 @@ define mb_msxrom_machine_Yamaha_AX200 $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/ax200_arabic.rom) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/ax200_music.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Yamaha_AX200,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Yamaha_AX200,"Installs machine roms.","") define mb_msxrom_machine_Yamaha_YIS-503IIIR @@ -155,7 +155,7 @@ define mb_msxrom_machine_Yamaha_YIS-503IIIR $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/yis503iii_cpm.rom) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/yamaha/yis503iii_net_2.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Yamaha_YIS-503IIIR,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Yamaha_YIS-503IIIR,"Installs machine roms.","") define mb_msxrom_machine_Panasonic_FS-A1WSX @@ -167,7 +167,7 @@ define mb_msxrom_machine_Panasonic_FS-A1WSX $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_kanjifont.rom) $(call mb_msxrom_file,$(1)-omsx/share/systemroms/machines,machines/panasonic/fs-a1wsx_msx2psub.rom) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Panasonic_FS-A1WSX,"Installs machine roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Panasonic_FS-A1WSX,"Installs machine roms.","") define mb_msxrom_machine_Boosted_MSX2_EN @@ -176,7 +176,7 @@ define mb_msxrom_machine_Boosted_MSX2_EN $(call mb_msxrom_extension_moonsound,$(1)) $(call mb_msxrom_extension_basickun,$(1)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Boosted_MSX2_EN,"Installs machine and extensions roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Boosted_MSX2_EN,"Installs machine and extensions roms.","") define mb_msxrom_machine_Boosted_MSX2+_JP @@ -184,4 +184,4 @@ define mb_msxrom_machine_Boosted_MSX2+_JP $(call mb_msxrom_extension_moonsound,$(1)) $(call mb_msxrom_extension_basickun,$(1)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_msxrom_machine_Boosted_MSX2+_JP,"Installs machine and extensions roms.","") +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Boosted_MSX2+_JP,"Installs machine and extensions roms.","") diff --git a/lib/make/mb_openmsx.mk b/lib/make/mb_openmsx.mk index a1507e3..331a703 100644 --- a/lib/make/mb_openmsx.mk +++ b/lib/make/mb_openmsx.mk @@ -1,36 +1,36 @@ MB_OPENMSX_BOOT_TIMEOUT ?= 25 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_BOOT_TIMEOUT,"Timeout in seconds to guard for boot failures.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_BOOT_TIMEOUT,"Timeout in seconds to guard for boot failures.") MB_OPENMSX_BOOT_OS ?= nextor -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_BOOT_OS,"The default OS to run$(MB_CHAR_COMMA) valid values are; nextor$(MB_CHAR_COMMA)msxdos1$(MB_CHAR_COMMA)msxdos2") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_BOOT_OS,"The default OS to run$(MB_CHAR_COMMA) valid values are; nextor$(MB_CHAR_COMMA)msxdos1$(MB_CHAR_COMMA)msxdos2") MB_OPENMSX_MACHINE ?= Philips_NMS_8250 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_MACHINE,"The default MSX machine to use.",$(MB_OPENMSX_MACHINE)) +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_MACHINE,"The default MSX machine to use.",$(MB_OPENMSX_MACHINE)) MB_OPENMSX_MACHINE_RAM ?= ram1mb -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_MACHINE_RAM,"Extra ram extension for machine allowed: off$(MB_CHAR_COMMA)ram16k$(MB_CHAR_COMMA)ram64k$(MB_CHAR_COMMA)ram512k$(MB_CHAR_COMMA)ram1mb$(MB_CHAR_COMMA)ram2mb$(MB_CHAR_COMMA)ram4mb") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_MACHINE_RAM,"Extra ram extension for machine allowed: off$(MB_CHAR_COMMA)ram16k$(MB_CHAR_COMMA)ram64k$(MB_CHAR_COMMA)ram512k$(MB_CHAR_COMMA)ram1mb$(MB_CHAR_COMMA)ram2mb$(MB_CHAR_COMMA)ram4mb") MB_OPENMSX_SPEED ?= $(if $(findstring turboR,$(MB_OPENMSX_MACHINE)),100,333) -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_SPEED,"The throttled MSX emulation speed.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_SPEED,"The throttled MSX emulation speed.") MB_OPENMSX_ARGS ?= -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_ARGS,"Extra arguments to invoke openMSX with.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_ARGS,"Extra arguments to invoke openMSX with.") MB_OPENMSX_HDD_SIZE ?= 4m -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_HDD_SIZE,"The default fire-hdd disk image size.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_HDD_SIZE,"The default fire-hdd disk image size.") MB_OPENMSX_SCALE_FACTOR ?= 3 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_SCALE_FACTOR,"The gui scale factor to display the emulation.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_SCALE_FACTOR,"The gui scale factor to display the emulation.") MB_OPENMSX_THROTTLE ?= off -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_THROTTLE,"An on/off flag to control throttling globally.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_THROTTLE,"An on/off flag to control throttling globally.") MB_OPENMSX_HEADLESS ?= on -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_HEADLESS,"Controls if openMSX starts headless.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_HEADLESS,"Controls if openMSX starts headless.") MB_OPENMSX_RENDERER ?= SDLGL-PP -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_OPENMSX_RENDERER,"The gui renderer used to display the window head with.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_OPENMSX_RENDERER,"The gui renderer used to display the window head with.") define mb_openmsx_setup @@ -47,19 +47,20 @@ define mb_openmsx_setup $(if $(wildcard $(1)-omsx/share/scripts/omsxctl.tcl),,$(call mb_msxhub_file,$(1)-omsx/share/scripts,OMSXCTL/1.0-1/get/OMSXCTL/omsxctl.tcl)) $(if $(wildcard $(1)-omsx/share/extensions),,$(call mb_mkdir,$(1)-omsx/share/extensions)) $(if $(wildcard $(1)-omsx/share/extensions/fire-hdd.xml),,$(call mb_copy,$(PATH_MSXBUILD_REAL)/lib/openmsx/share/extensions/fire-hdd.xml,$(1)-omsx/share/extensions)) - $(call mb_msxrom_setup,$(1)) - $(call mb_msxrom_extension_ide_nextor,$(1)) - $(call mb_msxrom_machine_$(2),$(1)) + $(call mb_make_call,mb_msxrom_setup,$(1)) + $(call mb_make_call,mb_msxrom_extension_ide_nextor,$(1)) + $(call mb_make_call,mb_msxrom_machine_$(2),$(1)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_openmsx_setup,"Setup openMSX local build home folder for machine."," ") - +MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_openmsx_setup,"Setup openMSX local build home folder for machine."," ") define _mb_openmsx_run - @echo === openMSX Start for $@ + $(call mb_make_call,mb_make_echo_good,Start openMSX! for $@ on $(2)) + $(if $(wildcard $(1)-omsx/persistent/fire-hdd/untitled1/sync),,$(call mb_make_call,mb_mkdir,$(1)-omsx/persistent/fire-hdd/untitled1/sync)) BOOT_WATCHDOG=$(MB_OPENMSX_BOOT_TIMEOUT) \ FIRE_HDD_PATH="$(1)" \ FIRE_HDD_SIZE=$(MB_OPENMSX_HDD_SIZE) \ FIRE_HDD_IMAGE="$(1)-omsx/persistent/fire-hdd/untitled1/image-hda.dsk" \ + FIRE_HDD_PATH_EXPORT="$(1)-omsx/persistent/fire-hdd/untitled1/sync" \ SCALE_FACTOR=$(MB_OPENMSX_SCALE_FACTOR) \ SPEED=$(MB_OPENMSX_SPEED) \ HEADLESS=$(MB_OPENMSX_HEADLESS) \ @@ -81,7 +82,7 @@ define _mb_openmsx_run $(if $(filter ram4mb,$(3)),-ext ram4mb) \ $(MB_OPENMSX_ARGS) \ -control stdio < $(1)-omsx/stdio.xml - @echo === openMSX Done for $@ + rsync --checksum --recursive "$(1)-omsx/persistent/fire-hdd/untitled1/sync/" "$(1)/" endef @@ -95,9 +96,9 @@ endef define mb_openmsx_dosctl - $(call mb_openmsx_setup,$(1),$(if $(2),$(2),$(MB_OPENMSX_MACHINE))) - $(if $(wildcard $(1)/utils),$(call _mb_openmsx_dosctl_bat,$(1)/utils),$(call _mb_openmsx_dosctl_bat,$(1))) - $(if $(wildcard $(1)/command.com),,$(if $(wildcard $(1)/command2.com),,$(call mb_msxhub_get_$(MB_OPENMSX_BOOT_OS)_boot,$(1)))) - $(call _mb_openmsx_run,$(1),$(if $(2),$(2),$(MB_OPENMSX_MACHINE)),$(if $(3),$(3),$(MB_OPENMSX_MACHINE_RAM))) + $(call mb_make_call,mb_openmsx_setup,$(1),$(if $(2),$(2),$(MB_OPENMSX_MACHINE))) + $(if $(wildcard $(1)/utils),$(call mb_make_call,_mb_openmsx_dosctl_bat,$(1)/utils),$(call mb_make_call,_mb_openmsx_dosctl_bat,$(1))) + $(if $(wildcard $(1)/command.com),,$(if $(wildcard $(1)/command2.com),,$(call mb_make_call,mb_msxhub_get_$(MB_OPENMSX_BOOT_OS)_boot,$(1)))) + $(call mb_make_call,_mb_openmsx_run,$(1),$(if $(2),$(2),$(MB_OPENMSX_MACHINE)),$(if $(3),$(3),$(MB_OPENMSX_MACHINE_RAM))) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_openmsx_dosctl,"Starts openMSX with dos controller."," [machine] [mem-ext]") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_openmsx_dosctl,"Starts openMSX with dos controller."," [machine] [mem-ext]") diff --git a/lib/make/mb_sdcc.mk b/lib/make/mb_sdcc.mk index 87bec26..6769751 100644 --- a/lib/make/mb_sdcc.mk +++ b/lib/make/mb_sdcc.mk @@ -1,18 +1,18 @@ MB_SDCC_FLAG_CPU ?= -mz80 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_SDCC_FLAG_CPU,"The SDCC cpu target option.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_SDCC_FLAG_CPU,"The SDCC cpu target option.") MB_SDCC_FLAG_LD ?= --nostdinc -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_SDCC_FLAG_LD,"The SDCC linker option.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_SDCC_FLAG_LD,"The SDCC linker option.") MB_SDCC_ASZ80_FLAGS ?= -g -l -c -o -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_SDCC_ASZ80_FLAGS,"The SDCC z80 asm compiler flags.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_SDCC_ASZ80_FLAGS,"The SDCC z80 asm compiler flags.") MB_SDCC_CC_FLAGS ?= -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_SDCC_CC_FLAGS,"The SDCC C compiler flags.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_SDCC_CC_FLAGS,"The SDCC C compiler flags.") MB_SDCC_AR_FLAGS ?= -rc -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_SDCC_AR_FLAGS,"The SDCC module archive flags.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,MB_SDCC_AR_FLAGS,"The SDCC module archive flags.") # TODO: Add C + mixed support; @@ -21,70 +21,70 @@ MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,MB_SDCC_AR_FLAGS,"The SDCC module define mb_sdcc_compile_asm - @echo === SDCC Compile module asm for $(2) + $(call mb_make_call,mb_make_echo_good,SDCC Compile module asm for $(2)) $(PATH_SDCC)/sdasz80 $(MB_SDCC_ASZ80_FLAGS) $(2) $(1) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_compile_asm,"Compiles asm source code."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_compile_asm,"Compiles asm source code."," ") define mb_sdcc_link_asm_lib - @echo === SDCC Link module asm lib for $(2) + $(call mb_make_call,mb_make_echo_good,SDCC Link module asm lib for $(2)) $(PATH_SDCC)/sdar $(MB_SDCC_AR_FLAGS) $(1) $(2) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_lib,"Link asm lib module."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_lib,"Link asm lib module."," ") define mb_sdcc_link_asm - @echo === SDCC Link asm module at $(3) for $(2) + $(call mb_make_call,mb_make_echo_good,SDCC Link asm module at $(3) for $(2)) $(PATH_SDCC)/sdcc $(MB_SDCC_FLAG_CPU) $(MB_SDCC_CC_FLAGS) --no-std-crt0 --code-loc $(3) -o $(2) $(1) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm,"Links asm to custom code location."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm,"Links asm to custom code location."," ") define mb_sdcc_link_asm_0000 $(call mb_sdcc_link_asm,$(1),$(2),0x0000) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_0000,"Links asm to 0x0000."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_0000,"Links asm to 0x0000."," ") define mb_sdcc_link_asm_0100 $(call mb_sdcc_link_asm,$(1),$(2),0x0100) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_0100,"Links asm to 0x0100."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_0100,"Links asm to 0x0100."," ") define mb_sdcc_link_asm_1000 $(call mb_sdcc_link_asm,$(1),$(2),0x1000) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_1000,"Links asm to 0x1000."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_1000,"Links asm to 0x1000."," ") define mb_sdcc_link_asm_4000 $(call mb_sdcc_link_asm,$(1),$(2),0x4000) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_4000,"Links asm to 0x4000."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_4000,"Links asm to 0x4000."," ") define mb_sdcc_link_asm_8000 $(call mb_sdcc_link_asm,$(1),$(2),0x8000) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_8000,"Links asm to 0x8000."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_8000,"Links asm to 0x8000."," ") define mb_sdcc_link_asm_C000 $(call mb_sdcc_link_asm,$(1),$(2),0xC000) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_C000,"Links asm to 0xC000."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_C000,"Links asm to 0xC000."," ") define mb_sdcc_link_asm_bdos $(call mb_sdcc_link_asm_0100,$(1),$(2)) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_link_asm_bdos,"Links asm to BDOS."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_bdos,"Links asm to BDOS."," ") define mb_sdcc_hex2bin - @echo === SDCC hex2bin for $(2) + $(call mb_make_call,mb_make_echo_good,SDCC hex2bin for $(2)) $(PATH_SDCC)/sdobjcopy -I ihex --output-target=binary $(1) $(2) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_sdcc_hex2bin,"Converts an hex file to binary."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_hex2bin,"Converts an hex file to binary."," ") diff --git a/lib/make/msxbuild.mk b/lib/make/msxbuild.mk index 29b3974..85f9daf 100644 --- a/lib/make/msxbuild.mk +++ b/lib/make/msxbuild.mk @@ -10,6 +10,7 @@ PATH_MSXBUILD_REAL := $(if $(realpath $(PATH_MSXBUILD)),$(realpath $(PATH_MSXBUI # Include extra features include $(PATH_MSXBUILD)/lib/make/mb_doc.mk +include $(PATH_MSXBUILD)/lib/make/mb_make.mk include $(PATH_MSXBUILD)/lib/make/mb_sdcc.mk include $(PATH_MSXBUILD)/lib/make/mb_flight.mk include $(PATH_MSXBUILD)/lib/make/mb_msxrom.mk @@ -27,6 +28,7 @@ ifeq ($(OS),Windows_NT) MB_ERRIGNORE = 2>NUL || true MB_SEP=\\ MB_CACHE ?= %LOCALAPPDATA% + MB_COLORS ?= -1 else MB_RM = rm -f MB_RMDIR = rm -rf @@ -35,70 +37,58 @@ else MB_ERRIGNORE = 2>/dev/null MB_SEP=/ MB_CACHE ?= ~/.cache + MB_COLORS ?= $(shell tput colors 2> /dev/null;test $$? -eq 0 || echo "-1") endif # Remove space after separator MB_PSEP = $(strip $(MB_SEP)) # Special chars call arguments (like for l80.com) -MB_CHAR_COMMA := "," +MB_CHAR_COMMA := , MB_CHAR_SPACE := $(subst ,, ) -MB_CHAR_GT := ">" -MB_CHAR_LT := "<" -MB_CHAR_CDATA_START := "" -define mb_rwildcard - $(foreach d,$(wildcard $1*),$(call mb_rwildcard,$d/,$2) $(filter $(subst *,%,$2),$d)) -endef - - -# Simple inline ascii lowercase -define _mb_lowercase -$(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$(1))))))))))))))))))))))))))) -endef define mb_clean - @echo === Cleaning build folder + $(call mb_make_call,mb_make_echo_good,Cleaning build folder $(1)) $(MB_RMDIR) $(1) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_clean,"Removed the full folder.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_clean,"Removed the full folder.","") define mb_mkdir $(MB_MKDIR) $(1) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_mkdir,"Creates an folder.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_mkdir,"Creates an folder.","") define mb_delete $(MB_RM) $(1) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_delete,"Deletes an file.","") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_delete,"Deletes an file.","") define mb_copy $(MB_COPY) $(1) $(2) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_copy,"Copy an file."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_copy,"Copy an file."," ") define mb_unix2dos unix2dos -q -n $(1) $(2) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_unix2dos,"Converts an unix file to dos."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_unix2dos,"Converts an unix file to dos."," ") define mb_dos2unix dos2unix -q -n $(1) $(2) endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_dos2unix,"Converts an dos file to unix."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_dos2unix,"Converts an dos file to unix."," ") define mb_create_dist - @echo === Creating distribution archive + $(call mb_make_call,mb_make_echo_good,Creating distribution archive $(2)) tar -czf $(2) -C $(1) `ls $(1)` endef -MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_create_dist,"Create an distribution archive."," ") +MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_create_dist,"Create an distribution archive."," ") diff --git a/src/0module.mk b/src/0module.mk deleted file mode 100644 index 4544789..0000000 --- a/src/0module.mk +++ /dev/null @@ -1,19 +0,0 @@ - -help: - $(call mb_doc_show_help@project) -.PHONY: help - -help@target: - $(call mb_doc_show_help@target) -MB_DOC_HELP_PROJECT += $(call mb_doc_project,help@target) -.PHONY: help@target - -help@function: - $(call mb_doc_show_help@function) -MB_DOC_HELP_PROJECT += $(call mb_doc_project,help@function) -.PHONY: help@function - -help@variable: - $(call mb_doc_show_help@variable) -MB_DOC_HELP_PROJECT += $(call mb_doc_project,help@variable) -.PHONY: help@variable diff --git a/src/0module/assert-all/0module.mk b/src/0module/assert-all/0module.mk index 638aa8a..70dd07f 100644 --- a/src/0module/assert-all/0module.mk +++ b/src/0module/assert-all/0module.mk @@ -11,6 +11,7 @@ bin/mbboot80-test/@assert $(PATH_BIN)/@assert-all: | $(ASSERT_ALL_DEPS) @echo === All assertions completed - $(if $(filter on,$(MB_FLIGHT_VIDEO)),$(call mb_flight_video_merge,$(PATH_BIN))) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(PATH_BIN)/@assert-all,"Asserts all assertions tests.") + @echo === All $(MB_DEP_ALL_ASSERT) + $(if $(filter on,$(MB_FLIGHT_VIDEO)),$(call mb_make_call,mb_flight_video_merge,$(PATH_BIN))) +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(PATH_BIN)/@assert-all,"Asserts all assertions tests.") .PHONY: $(PATH_BIN)/@assert-all diff --git a/src/0module/clean/0module.mk b/src/0module/clean/0module.mk index a440e3e..b6d59c6 100644 --- a/src/0module/clean/0module.mk +++ b/src/0module/clean/0module.mk @@ -1,5 +1,5 @@ $(PATH_BIN)/@clean: - $(call mb_clean,$(PATH_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(PATH_BIN)/@clean,"Clean's the build folder.") + $(call mb_make_call,mb_clean,$(PATH_BIN)) +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(PATH_BIN)/@clean,"Clean's the build folder.") .PHONY: $(PATH_BIN)/@clean diff --git a/src/0module/prepare/0module.mk b/src/0module/prepare/0module.mk index c26637c..b3b1702 100644 --- a/src/0module/prepare/0module.mk +++ b/src/0module/prepare/0module.mk @@ -1,5 +1,5 @@ $(PATH_BIN)/@prepare: | $(PATH_BIN) - @echo === Prepare $(PATH_BIN) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(PATH_BIN)/@prepare,"Virtual prepare phase of binary folder.") + @echo === .PHONY: $(PATH_BIN)/@prepare +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(PATH_BIN)/@prepare,"Virtual prepare phase of binary folder.") .PHONY: $(PATH_BIN)/@prepare diff --git a/src/ahello-m80-test/0module.mk b/src/ahello-m80-test/0module.mk index 03659c3..61f8a89 100644 --- a/src/ahello-m80-test/0module.mk +++ b/src/ahello-m80-test/0module.mk @@ -19,4 +19,5 @@ $(AHELLO_M80_TEST_BIN)/@assert: | $(AHELLO_M80_TEST_BIN)/ahello.com $(call mb_msxpipe_safe_test,$(AHELLO_M80_TEST_BIN),ahello > ahello.out) grep "M80: Hello world..." $(AHELLO_M80_TEST_BIN)/ahello.out MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_M80_TEST_BIN)/@assert,"Assert binaries from ahello-m80.") +MB_DEP_ALL_ASSERT += $(AHELLO_M80_TEST_BIN)/@assert .PHONY: $(AHELLO_M80_TEST_BIN)/@assert diff --git a/src/ahello-m80/0module.mk b/src/ahello-m80/0module.mk index c6a2a71..c36b227 100644 --- a/src/ahello-m80/0module.mk +++ b/src/ahello-m80/0module.mk @@ -3,6 +3,59 @@ AHELLO_M80_MOD := ahello-m80 AHELLO_M80_SRC := $(PATH_SRC)/$(AHELLO_M80_MOD) AHELLO_M80_BIN := $(PATH_BIN)/$(AHELLO_M80_MOD) +#PROJECT_ROOT = $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) +#PROJECT_ROOT = $(dir $(lastword $(MAKEFILE_LIST))) +# src/ahello-m80/0module.mk + + +define mb_flow_m80_mono_com +$(2): | $(1) + $$(call mb_make_call,mb_mkdir,$(2)) + $$(call mb_make_call,mb_mkdir,$(2)/utils) + $$(call mb_make_call,mb_msxhub_get_macro80,$(2)/utils) + $$(call mb_make_call,mb_msxhub_get_z80asmuk,$(2)/utils) +MB_DOC_FIRE_TARGET_DEEP += $$(call mb_make_call,mb_doc_target_deep,$(2)) + +$(2)/$(4).mac: $(3)/$(4).mac | $(2) + $$(call mb_make_call,mb_unix2dos,$(3)/$(4).mac,$(2)/$(4).mac) +MB_DOC_FIRE_TARGET_DEEP += $$(call mb_make_call,mb_doc_target_deep,$(2)/$(4).mac) + +$(2)/$(4).rel: $(2)/$(4).mac + $$(call mb_make_call,mb_msxpipe_safe_cmd,$(2),m80 $$(MB_MAKE_EQUALS)$(4)/Z) +MB_DOC_FIRE_TARGET_DEEP += $$(call mb_make_call,mb_doc_target_deep,$(2)/$(4).rel) + +$(2)/$(4).hex: $(2)/$(4).rel + $$(call mb_make_call,mb_msxpipe_safe_cmd,$(2),l80 $(4)$$(MB_MAKE_COMMA)$(4)/N/X/Y/E) +MB_DOC_FIRE_TARGET_DEEP += $$(call mb_make_call,mb_doc_target_deep,$(2)/$(4).hex) + +$(2)/$(4).com: $(2)/$(4).hex + $$(call mb_make_call,mb_msxpipe_safe_cmd,$(2),hextocom $(4)) +MB_DOC_FIRE_TARGET_DEEP += $$(call mb_make_call,mb_doc_target_deep,$(2)/$(4).com) + +$(2)/@build: $(2)/$(4).com +MB_DOC_FIRE_TARGET += $$(call mb_make_call,mb_doc_target,$(2)/@build,"Builds the $(2) module.") +MB_DEP_ALL_COMPILE += $(2)/@build +.PHONY: $(2)/@build + +$(2)/@run: $(2)/@build + $$(call mb_make_call,mb_msxpipe_run_gui,$(2)) +MB_DOC_FIRE_TARGET += $$(call mb_make_call,mb_doc_target,$(2)/@run,"Run $(4).com manually with gui.") +.PHONY: $(2)/@run +endef + +#$(eval $(call mb_make_call,mb_m80_flow_bdos_mono,$(PATH_BIN)/@prepare,bin/foobar,$(AHELLO_M80_SRC),ahello)) +$(eval $(call mb_make_call,mb_flow_m80_mono_com,$(PATH_BIN)/@prepare,bin/foobar2,$(AHELLO_M80_SRC),ahello)) + + +bin/foobar2/@assert: bin/foobar2/@build + $(call mb_delete,bin/foobar2/ahello.out) + $(call mb_msxpipe_safe_test,bin/foobar2,ahello > ahello.out) + grep "M80: Hello world..." bin/foobar2/ahello.out +MB_DOC_FIRE_TARGET += $(call mb_doc_target,bin/foobar2/@assert,"Assert binaries from ahello-m80.") +MB_DEP_ALL_ASSERT += bin/foobar2/@assert +.PHONY: bin/foobar2/@assert + + $(AHELLO_M80_BIN): | $(PATH_BIN)/@prepare $(call mb_mkdir,$(AHELLO_M80_BIN)) $(call mb_mkdir,$(AHELLO_M80_BIN)/utils) @@ -16,13 +69,17 @@ $(AHELLO_M80_BIN)/ahello.rel: $(AHELLO_M80_BIN)/ahello.mac $(call mb_msxpipe_safe_cmd,$(AHELLO_M80_BIN),m80 =ahello/Z) $(AHELLO_M80_BIN)/ahello.hex: $(AHELLO_M80_BIN)/ahello.rel - $(call mb_msxpipe_safe_cmd,$(AHELLO_M80_BIN),l80 ahello$(MB_CHAR_COMMA)ahello/N/X/Y/E) + $(call mb_msxpipe_safe_cmd,$(AHELLO_M80_BIN),l80 ahello$(MB_MAKE_COMMA)ahello/N/X/Y/E) -$(AHELLO_M80_BIN)/ahello.com: | $(AHELLO_M80_BIN)/ahello.hex +$(AHELLO_M80_BIN)/ahello.com: $(AHELLO_M80_BIN)/ahello.hex $(call mb_msxpipe_safe_cmd,$(AHELLO_M80_BIN),hextocom ahello) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_M80_BIN)/ahello.com,"Compiles hello world with macro80.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(AHELLO_M80_BIN)/ahello.com,"Compiles hello world with macro80.") +MB_DEP_ALL_COMPILE += $(AHELLO_M80_BIN)/ahello.com -$(AHELLO_M80_BIN)/@run: | $(AHELLO_M80_BIN)/ahello.com - $(call mb_msxpipe_run_gui,$(AHELLO_M80_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_M80_BIN)/@run,"Run the compiled hello world from macro80.") +$(AHELLO_M80_BIN)/@build: $(AHELLO_M80_BIN)/ahello.com +.PHONY: $(AHELLO_M80_BIN)/@build + +$(AHELLO_M80_BIN)/@run: $(AHELLO_M80_BIN)/ahello.com + $(call mb_make_call,mb_msxpipe_run_gui,$(AHELLO_M80_BIN)) +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(AHELLO_M80_BIN)/@run,"Run the compiled hello world from macro80.") .PHONY: $(AHELLO_M80_BIN)/@run diff --git a/src/ahello-sdcc-test/0module.mk b/src/ahello-sdcc-test/0module.mk index bd4d43d..0afb807 100644 --- a/src/ahello-sdcc-test/0module.mk +++ b/src/ahello-sdcc-test/0module.mk @@ -11,12 +11,12 @@ $(AHELLO_SDCC_TEST_BIN)/ahello.com: $(AHELLO_SDCC_BIN)/ahello.com | $(AHELLO_SDC $(AHELLO_SDCC_TEST_BIN)/@run: | $(AHELLO_SDCC_TEST_BIN)/ahello.com $(call mb_msxpipe_run_gui,$(AHELLO_SDCC_TEST_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_TEST_BIN)/@run,"Run binaries from ahello-sdcc.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_TEST_BIN)/@run,"Run binaries from ahello-sdcc.") .PHONY: $(AHELLO_SDCC_TEST_BIN)/@run $(AHELLO_SDCC_TEST_BIN)/@assert: | $(AHELLO_SDCC_TEST_BIN)/ahello.com $(call mb_delete,$(AHELLO_SDCC_TEST_BIN)/ahello.out) $(call mb_msxpipe_safe_test,$(AHELLO_SDCC_TEST_BIN),ahello > ahello.out) grep "SDCC: Hello world..." $(AHELLO_SDCC_TEST_BIN)/ahello.out -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_TEST_BIN)/@assert,"Assert binaries from ahello-sdcc.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_TEST_BIN)/@assert,"Assert binaries from ahello-sdcc.") .PHONY: $(AHELLO_SDCC_TEST_BIN)/@assert \ No newline at end of file diff --git a/src/ahello-sdcc/0module.mk b/src/ahello-sdcc/0module.mk index c613809..a0d7f97 100644 --- a/src/ahello-sdcc/0module.mk +++ b/src/ahello-sdcc/0module.mk @@ -14,9 +14,9 @@ $(AHELLO_SDCC_BIN)/ahello.hex: $(AHELLO_SDCC_BIN)/ahello.rel $(AHELLO_SDCC_BIN)/ahello.com: $(AHELLO_SDCC_BIN)/ahello.hex $(call mb_sdcc_hex2bin,$<,$@) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_BIN)/ahello.com,"Compiles hello world with sdcc.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_BIN)/ahello.com,"Compiles hello world with sdcc.") $(AHELLO_SDCC_BIN)/@run: | $(AHELLO_SDCC_BIN)/ahello.com $(call mb_msxpipe_run_gui,$(AHELLO_SDCC_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_BIN)/@run,"Run the compiled hello world from sdcc.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(AHELLO_SDCC_BIN)/@run,"Run the compiled hello world from sdcc.") .PHONY: $(AHELLO_SDCC_BIN)/@run diff --git a/src/dist-qa-dos1/0module.mk b/src/dist-qa-dos1/0module.mk index d90f8fd..583ed83 100644 --- a/src/dist-qa-dos1/0module.mk +++ b/src/dist-qa-dos1/0module.mk @@ -13,7 +13,7 @@ $(DIST_QA_DOS1_BIN)/%: $(DIST_BIN)/% | $(DIST_QA_DOS1_BIN) $(DIST_DEPS) $(DIST_QA_DOS1_BIN)/@run: | $(DIST_QA_DOS1_DEPS) $(call mb_msxpipe_run_gui,$(DIST_QA_DOS1_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_DOS1_BIN)/@run,"Run binaries on msxdos1 machine.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(DIST_QA_DOS1_BIN)/@run,"Run binaries on msxdos1 machine.") .PHONY: $(DIST_QA_DOS1_BIN)/@run $(DIST_QA_DOS1_BIN)/@assert: | $(DIST_QA_DOS1_DEPS) @@ -22,5 +22,5 @@ $(DIST_QA_DOS1_BIN)/@assert: | $(DIST_QA_DOS1_DEPS) $(call mb_autoexec_append_safe_test,$(DIST_QA_DOS1_BIN),ahello2) $(call mb_autoexec_append_exit,$(DIST_QA_DOS1_BIN)) $(call mb_openmsx_dosctl,$(DIST_QA_DOS1_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_DOS1_BIN)/@assert,"Assert binaries on msxdos1.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(DIST_QA_DOS1_BIN)/@assert,"Assert binaries on msxdos1.") .PHONY: $(DIST_QA_DOS1_BIN)/@assert diff --git a/src/dist-qa-dos2/0module.mk b/src/dist-qa-dos2/0module.mk index 79f8dfe..7bce522 100644 --- a/src/dist-qa-dos2/0module.mk +++ b/src/dist-qa-dos2/0module.mk @@ -13,7 +13,7 @@ $(DIST_QA_DOS2_BIN)/%: $(DIST_BIN)/% | $(DIST_QA_DOS2_BIN) $(DIST_DEPS) $(DIST_QA_DOS2_BIN)/@run: | $(DIST_QA_DOS2_DEPS) $(call mb_msxpipe_run_gui,$(DIST_QA_DOS2_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_DOS2_BIN)/@run,"Run binaries on msxdos2 machine.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(DIST_QA_DOS2_BIN)/@run,"Run binaries on msxdos2 machine.") .PHONY: $(DIST_QA_DOS2_BIN)/@run $(DIST_QA_DOS2_BIN)/@assert: | $(DIST_QA_DOS2_DEPS) @@ -26,5 +26,5 @@ $(DIST_QA_DOS2_BIN)/@assert: | $(DIST_QA_DOS2_DEPS) $(call mb_openmsx_dosctl,$(DIST_QA_DOS2_BIN)) grep "M80: Hello world..." $(DIST_QA_DOS2_BIN)/ahello1.out grep "SDCC: Hello world..." $(DIST_QA_DOS2_BIN)/ahello2.out -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_DOS2_BIN)/@assert,"Assert binaries on msxdos2.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(DIST_QA_DOS2_BIN)/@assert,"Assert binaries on msxdos2.") .PHONY: $(DIST_QA_DOS2_BIN)/@assert diff --git a/src/dist-qa-msx1/0module.mk b/src/dist-qa-msx1/0module.mk index c95f006..a45f26e 100644 --- a/src/dist-qa-msx1/0module.mk +++ b/src/dist-qa-msx1/0module.mk @@ -1,6 +1,6 @@ DIST_QA_MSX1_MACHINE ?= Canon_V-20 -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,DIST_QA_MSX1_MACHINE,"The machine to run the $(DIST_QA_MSX1_MOD) module.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,DIST_QA_MSX1_MACHINE,"The machine to run the $(DIST_QA_MSX1_MOD) module.") DIST_QA_MSX1_MOD := dist-qa-msx1 DIST_QA_MSX1_SRC := $(PATH_SRC)/$(DIST_QA_MSX1_MOD) @@ -8,25 +8,25 @@ DIST_QA_MSX1_BIN := $(PATH_BIN)/$(DIST_QA_MSX1_MOD) DIST_QA_MSX1_DEPS := $(subst dist,$(DIST_QA_MSX1_MOD),$(DIST_DEPS)) $(DIST_QA_MSX1_BIN): | $(PATH_BIN)/@prepare - $(call mb_mkdir,$(DIST_QA_MSX1_BIN)) + $(call mb_make_call,mb_mkdir,$(DIST_QA_MSX1_BIN)) $(DIST_QA_MSX1_BIN)/%: $(DIST_BIN)/% | $(DIST_QA_MSX1_BIN) $(DIST_DEPS) - $(call mb_copy,$<,$@) + $(call mb_make_call,mb_copy,$<,$@) $(DIST_QA_MSX1_BIN)/@run: | $(DIST_QA_MSX1_DEPS) - $(call mb_msxpipe_run_gui,$(DIST_QA_MSX1_BIN),,$(DIST_QA_MSX1_MACHINE)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_MSX1_BIN)/@run,"Run binaries on MSX1 machine.") + $(call mb_make_call,mb_msxpipe_run_gui,$(DIST_QA_MSX1_BIN),,$(DIST_QA_MSX1_MACHINE)) +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(DIST_QA_MSX1_BIN)/@run,"Run binaries on MSX1 machine.") .PHONY: $(DIST_QA_MSX1_BIN)/@run $(DIST_QA_MSX1_BIN)/@assert: | $(DIST_QA_MSX1_DEPS) - $(call mb_delete,$(DIST_QA_MSX1_BIN)/ahello1.out) - $(call mb_delete,$(DIST_QA_MSX1_BIN)/ahello2.out) - $(call mb_autoexec_write_default,$(DIST_QA_MSX1_BIN),40) - $(call mb_autoexec_append_safe_test,$(DIST_QA_MSX1_BIN),ahello1 > ahello1.out,33) - $(call mb_autoexec_append_safe_test,$(DIST_QA_MSX1_BIN),ahello2 > ahello2.out,66,99) - $(call mb_autoexec_append_exit,$(DIST_QA_MSX1_BIN)) - $(call mb_openmsx_dosctl,$(DIST_QA_MSX1_BIN),$(DIST_QA_MSX1_MACHINE)) + $(call mb_make_call,mb_delete,$(DIST_QA_MSX1_BIN)/ahello1.out) + $(call mb_make_call,mb_delete,$(DIST_QA_MSX1_BIN)/ahello2.out) + $(call mb_make_call,mb_autoexec_write_default,$(DIST_QA_MSX1_BIN),40) + $(call mb_make_call,mb_autoexec_append_safe_test,$(DIST_QA_MSX1_BIN),ahello1 > ahello1.out,33) + $(call mb_make_call,mb_autoexec_append_safe_test,$(DIST_QA_MSX1_BIN),ahello2 > ahello2.out,66,99) + $(call mb_make_call,mb_autoexec_append_exit,$(DIST_QA_MSX1_BIN)) + $(call mb_make_call,mb_openmsx_dosctl,$(DIST_QA_MSX1_BIN),$(DIST_QA_MSX1_MACHINE)) grep "M80: Hello world..." $(DIST_QA_MSX1_BIN)/ahello1.out grep "SDCC: Hello world..." $(DIST_QA_MSX1_BIN)/ahello2.out -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_MSX1_BIN)/@assert,"Assert binaries on MSX1 machine.") +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(DIST_QA_MSX1_BIN)/@assert,"Assert binaries on MSX1 machine.") .PHONY: $(DIST_QA_MSX1_BIN)/@assert diff --git a/src/dist-qa-msxhub/0module.mk b/src/dist-qa-msxhub/0module.mk index 287f2c3..424dceb 100644 --- a/src/dist-qa-msxhub/0module.mk +++ b/src/dist-qa-msxhub/0module.mk @@ -1,6 +1,6 @@ DIST_QA_MSXHUB_MACHINE ?= Boosted_MSX2+_JP -MB_DOC_HELP_VARIABLE += $(call mb_doc_variable,DIST_QA_MSXHUB_MACHINE,"The machine to run the $(DIST_QA_MSXHUB_MOD) module.") +MB_DOC_FIRE_VARIABLE += $(call mb_make_call,mb_doc_variable,DIST_QA_MSXHUB_MACHINE,"The machine to run the $(DIST_QA_MSXHUB_MOD) module.") DIST_QA_MSXHUB_MOD := dist-qa-msxhub DIST_QA_MSXHUB_SRC := $(PATH_SRC)/$(DIST_QA_MSXHUB_MOD) @@ -8,51 +8,51 @@ DIST_QA_MSXHUB_BIN := $(PATH_BIN)/$(DIST_QA_MSXHUB_MOD) DIST_QA_MSXHUB_DEPS := $(subst dist,$(DIST_QA_MSXHUB_MOD),$(DIST_DEPS)) $(DIST_QA_MSXHUB_BIN): | $(PATH_BIN)/@prepare - $(call mb_mkdir,$(DIST_QA_MSXHUB_BIN)) - $(call mb_mkdir,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_msxdos2_utils,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_nextor_utils,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_macro80,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_z80asmuk,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_wbass2,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_konpass,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_pmarc,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_lhpack,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_lhext,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_gunzip,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_tunzip,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_popcom,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_make,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_adir,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_turbo,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_baskom,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_binldr,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_dmphex,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_zd,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_msxdos2t,$(DIST_QA_MSXHUB_BIN)/utils) - $(call mb_msxhub_get_gfxage,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_mkdir,$(DIST_QA_MSXHUB_BIN)) + $(call mb_make_call,mb_mkdir,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_msxdos2_utils,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_nextor_utils,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_macro80,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_z80asmuk,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_wbass2,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_konpass,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_pmarc,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_lhpack,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_lhext,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_gunzip,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_tunzip,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_popcom,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_make,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_adir,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_turbo,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_baskom,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_binldr,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_dmphex,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_zd,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_msxdos2t,$(DIST_QA_MSXHUB_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_gfxage,$(DIST_QA_MSXHUB_BIN)/utils) $(DIST_QA_MSXHUB_BIN)/%: $(DIST_BIN)/% | $(DIST_QA_MSXHUB_BIN) $(DIST_DEPS) - $(call mb_copy,$<,$@) + $(call mb_make_call,mb_copy,$<,$@) $(DIST_QA_MSXHUB_BIN)/@run: | $(DIST_QA_MSXHUB_DEPS) - $(call mb_msxpipe_run_gui,$(DIST_QA_MSXHUB_BIN),,$(DIST_QA_MSXHUB_MACHINE)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_MSXHUB_BIN)/@run,"Run the dist with all msxhub packages.") + $(call mb_make_call,mb_msxpipe_run_gui,$(DIST_QA_MSXHUB_BIN),,$(DIST_QA_MSXHUB_MACHINE)) +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(DIST_QA_MSXHUB_BIN)/@run,"Run the dist with all msxhub packages.") .PHONY: $(DIST_QA_MSXHUB_BIN)/@run $(DIST_QA_MSXHUB_BIN)/@assert: | $(DIST_QA_MSXHUB_DEPS) - $(call mb_delete,$(DIST_QA_MSXHUB_BIN)/ahello1.out) - $(call mb_delete,$(DIST_QA_MSXHUB_BIN)/ahello2.out) - $(call mb_delete,$(DIST_QA_MSXHUB_BIN)/utils.out) - $(call mb_autoexec_write_default,$(DIST_QA_MSXHUB_BIN)) - $(call mb_autoexec_append_safe_test,$(DIST_QA_MSXHUB_BIN),ahello1 > ahello1.out) - $(call mb_autoexec_append_safe_test,$(DIST_QA_MSXHUB_BIN),ahello2 > ahello2.out) - $(call mb_autoexec_append_safe_test,$(DIST_QA_MSXHUB_BIN),dir utils > utils.out) - $(call mb_autoexec_append_exit,$(DIST_QA_MSXHUB_BIN)) - $(call mb_openmsx_dosctl,$(DIST_QA_MSXHUB_BIN),$(DIST_QA_MSXHUB_MACHINE)) + $(call mb_make_call,mb_delete,$(DIST_QA_MSXHUB_BIN)/ahello1.out) + $(call mb_make_call,mb_delete,$(DIST_QA_MSXHUB_BIN)/ahello2.out) + $(call mb_make_call,mb_delete,$(DIST_QA_MSXHUB_BIN)/utils.out) + $(call mb_make_call,mb_autoexec_write_default,$(DIST_QA_MSXHUB_BIN)) + $(call mb_make_call,mb_autoexec_append_safe_test,$(DIST_QA_MSXHUB_BIN),ahello1 > ahello1.out) + $(call mb_make_call,mb_autoexec_append_safe_test,$(DIST_QA_MSXHUB_BIN),ahello2 > ahello2.out) + $(call mb_make_call,mb_autoexec_append_safe_test,$(DIST_QA_MSXHUB_BIN),dir utils > utils.out) + $(call mb_make_call,mb_autoexec_append_exit,$(DIST_QA_MSXHUB_BIN)) + $(call mb_make_call,mb_openmsx_dosctl,$(DIST_QA_MSXHUB_BIN),$(DIST_QA_MSXHUB_MACHINE)) grep "M80: Hello world..." $(DIST_QA_MSXHUB_BIN)/ahello1.out grep "SDCC: Hello world..." $(DIST_QA_MSXHUB_BIN)/ahello2.out grep "KONPASS COM" $(DIST_QA_MSXHUB_BIN)/utils.out grep "MAKE COM" $(DIST_QA_MSXHUB_BIN)/utils.out -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_QA_MSXHUB_BIN)/@assert,"Asserts that all dist artifacts execute results.") +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(DIST_QA_MSXHUB_BIN)/@assert,"Asserts that all dist artifacts execute results.") .PHONY: $(DIST_QA_MSXHUB_BIN)/@assert diff --git a/src/dist/0module.mk b/src/dist/0module.mk index 4118118..8561e19 100644 --- a/src/dist/0module.mk +++ b/src/dist/0module.mk @@ -18,9 +18,9 @@ $(DIST_BIN)/ahello2.com: bin/ahello-sdcc/ahello.com | $(DIST_BIN) $(call mb_copy,$<,$@) $(DIST_BIN)/@prepare: | $(DIST_DEPS) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_BIN)/@prepare,"Prepare folder with binaries for distribution.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(DIST_BIN)/@prepare,"Prepare folder with binaries for distribution.") .PHONY: $(DIST_BIN)/@prepare $(DIST_OUT): | $(DIST_BIN)/@prepare $(call mb_create_dist,$(DIST_BIN),$@) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(DIST_OUT),"Build archive distribution artifact.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(DIST_OUT),"Build archive distribution artifact.") diff --git a/src/make-on-msx/0module.mk b/src/make-on-msx/0module.mk index fa304a7..d90b16a 100644 --- a/src/make-on-msx/0module.mk +++ b/src/make-on-msx/0module.mk @@ -3,33 +3,49 @@ MAKE_ON_MSX_MOD := make-on-msx MAKE_ON_MSX_SRC := $(PATH_SRC)/$(MAKE_ON_MSX_MOD) MAKE_ON_MSX_BIN := $(PATH_BIN)/$(MAKE_ON_MSX_MOD) + $(MAKE_ON_MSX_BIN): | $(PATH_BIN)/@prepare - $(call mb_mkdir,$(MAKE_ON_MSX_BIN)) - $(call mb_mkdir,$(MAKE_ON_MSX_BIN)/utils) - $(call mb_msxhub_get_make,$(MAKE_ON_MSX_BIN)/utils) - $(call mb_msxhub_get_macro80,$(MAKE_ON_MSX_BIN)/utils) - $(call mb_msxhub_get_z80asmuk,$(MAKE_ON_MSX_BIN)/utils) + $(call mb_make_call,mb_mkdir,$(MAKE_ON_MSX_BIN)) + $(call mb_make_call,mb_mkdir,$(MAKE_ON_MSX_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_make,$(MAKE_ON_MSX_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_macro80,$(MAKE_ON_MSX_BIN)/utils) + $(call mb_make_call,mb_msxhub_get_z80asmuk,$(MAKE_ON_MSX_BIN)/utils) +MB_DOC_FIRE_TARGET_DEEP += $(call mb_make_call,mb_doc_target_deep,$(MAKE_ON_MSX_BIN)) + $(MAKE_ON_MSX_BIN)/nfbsshot.mac: $(MAKE_ON_MSX_SRC)/nfbsshot.mac | $(MAKE_ON_MSX_BIN) - $(call mb_unix2dos,$<,$@) + $(call mb_make_call,mb_unix2dos,$<,$@) +MB_DOC_FIRE_TARGET_DEEP += $(call mb_make_call,mb_doc_target_deep,$(MAKE_ON_MSX_BIN)/nfbsshot.mac) + $(MAKE_ON_MSX_BIN)/nfbsshot.mf: $(MAKE_ON_MSX_SRC)/nfbsshot.mf | $(MAKE_ON_MSX_BIN)/nfbsshot.mac - $(call mb_unix2dos,$<,$@) + $(call mb_make_call,mb_unix2dos,$<,$@) +MB_DOC_FIRE_TARGET_DEEP += $(call mb_make_call,mb_doc_target_deep,$(MAKE_ON_MSX_BIN)/nfbsshot.mf) + $(MAKE_ON_MSX_BIN)/build.bat: $(MAKE_ON_MSX_SRC)/build.bat | $(MAKE_ON_MSX_BIN)/nfbsshot.mf - $(call mb_unix2dos,$<,$@) + $(call mb_make_call,mb_unix2dos,$<,$@) +MB_DOC_FIRE_TARGET_DEEP += $(call mb_make_call,mb_doc_target_deep,$(MAKE_ON_MSX_BIN)/build.bat) -$(MAKE_ON_MSX_BIN)/nfbsshot.bin: | $(MAKE_ON_MSX_BIN)/build.bat - $(call mb_msxpipe_safe_cmd,$(MAKE_ON_MSX_BIN),build shutdown) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MAKE_ON_MSX_BIN)/nfbsshot.bin,"Compiles binary with make on msx.") -$(MAKE_ON_MSX_BIN)/@assert: | $(MAKE_ON_MSX_BIN)/nfbsshot.bin - grep -U "screenshot" $(MAKE_ON_MSX_BIN)/nfbsshot.bin -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MAKE_ON_MSX_BIN)/@assert,"Asserts that binary contains screenshot string.") -.PHONY: $(MAKE_ON_MSX_BIN)/@assert +$(MAKE_ON_MSX_BIN)/nfbsshot.bin: $(MAKE_ON_MSX_BIN)/build.bat + $(call mb_make_call,mb_msxpipe_safe_cmd,$(MAKE_ON_MSX_BIN),build shutdown) +MB_DOC_FIRE_TARGET_DEEP += $(call mb_make_call,mb_doc_target_deep,$(MAKE_ON_MSX_BIN)/nfbsshot.bin) -$(MAKE_ON_MSX_BIN)/@run: | $(MAKE_ON_MSX_BIN)/build.bat - $(call mb_msxpipe_run_gui,$(MAKE_ON_MSX_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MAKE_ON_MSX_BIN)/@run,"Run the make build manually.") + +$(MAKE_ON_MSX_BIN)/@build: $(MAKE_ON_MSX_BIN)/nfbsshot.bin +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(MAKE_ON_MSX_BIN)/@build,"Compiles binary with make on msx.") +.PHONY: $(MAKE_ON_MSX_BIN)/@build + + +$(MAKE_ON_MSX_BIN)/@run: $(MAKE_ON_MSX_BIN)/@build + $(call mb_make_call,mb_msxpipe_run_gui,$(MAKE_ON_MSX_BIN)) +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(MAKE_ON_MSX_BIN)/@run,"Run the make build manually.") .PHONY: $(MAKE_ON_MSX_BIN)/@run + +$(MAKE_ON_MSX_BIN)/@assert: $(MAKE_ON_MSX_BIN)/@build + grep -U "screenshot" $(MAKE_ON_MSX_BIN)/nfbsshot.bin +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(MAKE_ON_MSX_BIN)/@assert,"Asserts that binary contains screenshot string.") +MB_DEP_ALL_ASSERT += $(MAKE_ON_MSX_BIN)/@assert +.PHONY: $(MAKE_ON_MSX_BIN)/@assert diff --git a/src/mbboot80-test/0module.mk b/src/mbboot80-test/0module.mk index 2527507..a66b072 100644 --- a/src/mbboot80-test/0module.mk +++ b/src/mbboot80-test/0module.mk @@ -11,12 +11,12 @@ $(MBBOOT80_TEST_BIN)/mbboot80.com: $(MBBOOT80_BIN)/mbboot80.com | $(MBBOOT80_TES $(MBBOOT80_TEST_BIN)/@run: | $(MBBOOT80_TEST_BIN)/mbboot80.com $(call mb_msxpipe_run_gui,$(MBBOOT80_TEST_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MBBOOT80_TEST_BIN)/@run,"Run binaries from mbboot80.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(MBBOOT80_TEST_BIN)/@run,"Run binaries from mbboot80.") .PHONY: $(MBBOOT80_TEST_BIN)/@run $(MBBOOT80_TEST_BIN)/@assert: | $(MBBOOT80_TEST_BIN)/mbboot80.com $(call mb_delete,$(MBBOOT80_TEST_BIN)/ahello.out) $(call mb_msxpipe_safe_test,$(MBBOOT80_TEST_BIN),mbboot80 > mbboot80.out) grep "mb::boot mode 80" $(MBBOOT80_TEST_BIN)/mbboot80.out -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MBBOOT80_TEST_BIN)/@assert,"Assert binaries from mbboot80.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(MBBOOT80_TEST_BIN)/@assert,"Assert binaries from mbboot80.") .PHONY: $(MBBOOT80_TEST_BIN)/@assert \ No newline at end of file diff --git a/src/mbboot80/0module.mk b/src/mbboot80/0module.mk index bacdb77..f1a5fe8 100644 --- a/src/mbboot80/0module.mk +++ b/src/mbboot80/0module.mk @@ -14,14 +14,24 @@ $(MBBOOT80_BIN)/mbboot80.hex: $(MBBOOT80_BIN)/mbboot80.rel $(MBBOOT80_BIN)/mbboot80.com: $(MBBOOT80_BIN)/mbboot80.hex $(call mb_sdcc_hex2bin,$<,$@) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MBBOOT80_BIN)/mbboot80.com,"Compiles mbboot80.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(MBBOOT80_BIN)/mbboot80.com,"Compiles mbboot80.") $(MBBOOT80_BIN)/@run: | $(MBBOOT80_BIN)/mbboot80.com $(call mb_msxpipe_run_gui,$(MBBOOT80_BIN)) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MBBOOT80_BIN)/@run,"Run the compiled mbboot80.") +MB_DOC_FIRE_TARGET += $(call mb_doc_target,$(MBBOOT80_BIN)/@run,"Run the compiled mbboot80.") .PHONY: $(MBBOOT80_BIN)/@run -$(MBBOOT80_BIN)/@release-local: | $(MBBOOT80_TEST_BIN)/@assert - $(call mb_copy,$(MBBOOT80_BIN)/mbboot80.com,lib/emuctl//mbboot80.com) -MB_DOC_HELP_TARGET += $(call mb_doc_target,$(MBBOOT80_BIN)/@release-local,"Updates binary copy in lib/emuctl folder.") + +#$(eval $(call mb_make_call,mb_flow_sdcc_asm_bdos_mono,$(PATH_BIN)/@prepare,$(MBBOOT80_BIN),$(MBBOOT80_SRC),$(MBBOOT80_MOD))) + +$(MBBOOT80_BIN)/@assert: | $(MBBOOT80_BIN)/$(MBBOOT80_MOD).com + $(call mb_delete,$(MBBOOT80_BIN)/$(MBBOOT80_MOD).out) + $(call mb_msxpipe_safe_test,$(MBBOOT80_BIN),$(MBBOOT80_MOD) > $(MBBOOT80_MOD).out) + grep "mb::boot mode 80" $(MBBOOT80_BIN)/$(MBBOOT80_MOD).out +MB_DOC_FIRE_TARGET += $(call mb_make_call,mb_doc_target,$(MBBOOT80_BIN)/@assert,"Assert binaries from mbboot80.") +.PHONY: $(MBBOOT80_BIN)/@assert + +$(MBBOOT80_BIN)/@release-local: | $(MBBOOT80_BIN)/@assert + $(call mb_copy,$(MBBOOT80_BIN)/mbboot80.com,lib/emuctl/mbboot80.com) +MB_DOC_HELP_TARGET += $(call mb_make_call,mb_doc_target,$(MBBOOT80_BIN)/@release-local,"Updates binary copy in lib/emuctl folder.") .PHONY: $(MBBOOT80_BIN)/@release-local