Fixed openMSX export and WIP adding first flow generators.
All checks were successful
Run test asserts / Test-Asserts (push) Successful in 0s

This commit is contained in:
Willem Cazander 2024-07-05 20:43:18 +02:00
parent 9a0b0cbdb2
commit a71f283d1d
29 changed files with 703 additions and 415 deletions

View file

@ -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

View file

@ -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))

View file

@ -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

View file

@ -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.","<dir> <command>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_cmd,"Appends an command.","<dir> <command>")
define mb_autoexec_append_echo
$(call mb_autoexec_append_cmd,$(1),echo $(subst >,&gt;,$(2)))
endef
MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_autoexec_append_echo,"Appends an echo message.","<dir> <message>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_echo,"Appends an echo message.","<dir> <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.","<dir> <remark>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_rem,"Appends an script remark.","<dir> <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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_show_gui,"Appends headless show gui command.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_stop_fail,"Appends stop automatic failure command.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_exit,"Appends exit emulation command.","<dir>")
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.","<dir> <plug-dev>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_plug_porta,"Appends an plug device into joyporta action.","<dir> <plug-dev>")
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.","<dir> <plug-dev>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_plug_portb,"Appends an plug device into joyportb action.","<dir> <plug-dev>")
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.","<dir> [prefix]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_save_screenshot,"Appends save screenshot command.","<dir> [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.","<dir> [prefix]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_save_video,"Appends save video command.","<dir> [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.","<dir> <cmd> [timeout] [exit-code]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_safe_test,"Appends running a safe test.","<dir> <cmd> [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.","<dir> <cmd> [timeout] [exit-code]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_autoexec_append_safe_cmd,"Appends running a safe command.","<dir> <cmd> [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.","<dir> [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.","<dir> [fg-color] [bg-color]")

View file

@ -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.","<name> [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.","<name> [desc]")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_doc_variable,"Prints formatted documention of an variable.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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.","<name> [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).","<name>")
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'")

View file

@ -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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_flight_video_merge,"Merged all flight videos to one.","<dir>")

99
lib/make/mb_make.mk Normal file
View file

@ -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 := "<![CDATA["
#skip_print_todo...MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_CDATA_START,"Expanded special char; XML cdata start.")
MB_MAKE_CDATA_END := "]]>"
#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.","<dir> <match>")
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.","<function> [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.","<string>")
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.","<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.","<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.","<tag> [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.","<message>")
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.","<message>")
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.")

View file

@ -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.","<dir> <msxhub-slug>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxhub_file,"Installs msxsub packages from slug into dir.","<dir> <msxhub-slug>")
#
@ -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.","<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.","<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.","<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.","<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.","<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.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_msxdos2_utils,"Installs msxdos2 util files into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_nextor_utils,"Installs nextor util files into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_macro80,"Installs macro80 package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_z80asmuk,"Installs z80asmuk package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_wbass2,"Installs wbass2 package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_konpass,"Installs konpass package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_pmarc,"Installs pmarc package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_lhpack,"Installs lhpack package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_lhext,"Installs lhext package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_gunzip,"Installs gunzip package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_tunzip,"Installs tunzip package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_popcom,"Installs popcom package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_make,"Installs make package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_adir,"Installs adir package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_turbo,"Installs turbo package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_baskom,"Installs baskom package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_binldr,"Installs binldr package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_dmphex,"Installs dmphex package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_zd,"Installs zd package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_msxdos2t,"Installs msxdos2t package into dir.","<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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxhub_get_gfxage,"Installs gfxage package into dir.","<dir>")

View file

@ -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.","<dir> <cmd> [machine]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_safe_cmd,"Runs openMSX and safely executes one command.","<dir> <cmd> [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.","<dir> <cmd> [machine]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_safe_test,"Runs openMSX and safely executes one test.","<dir> <cmd> [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.","<dir> [cmd] [machine]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_msxpipe_run_gui,"Runs openMSX forever with renderer and optionals.","<dir> [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.","<dir> [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.","<dir> [cmd] [machine]")

View file

@ -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.","<dir> <msxrom-slug>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_file,"Installs msxroms from slug into an subdir.","<dir> <msxrom-slug>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_setup,"Creates needed systemrom folders.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_ide,"Installs sunrise IDE classic rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_ide_nextor,"Installs sunrise IDE nextor rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_scsi_novaxis,"Installs Gouda SCSI novaxis rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_msxdos22,"Installs msxdos 2.20 rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_rs232,"Installs rs232 rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_fmpac,"Installs fmpac rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_fmpac_en,"Installs fmpac english rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_moonsound,"Installs moonsound rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_extension_basickun,"Installs basickun compiler rom.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Canon_V-20,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-F80,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-FX1,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Mitsubishi_ML-G3_ES,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_VG_8000,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_VG_8230,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Philips_NMS_8250,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Toshiba_HX-21,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Yamaha_AX200,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Yamaha_YIS-503IIIR,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Panasonic_FS-A1WSX,"Installs machine roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Boosted_MSX2_EN,"Installs machine and extensions roms.","<dir>")
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.","<dir>")
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,mb_doc_function_deep,mb_msxrom_machine_Boosted_MSX2+_JP,"Installs machine and extensions roms.","<dir>")

View file

@ -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.","<dir> <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.","<dir> <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.","<dir> [machine] [mem-ext]")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_openmsx_dosctl,"Starts openMSX with dos controller.","<dir> [machine] [mem-ext]")

View file

@ -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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_compile_asm,"Compiles asm source code.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_lib,"Link asm lib module.","<in> <out>")
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.","<in> <out> <code-loc>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm,"Links asm to custom code location.","<in> <out> <code-loc>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_0000,"Links asm to 0x0000.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_0100,"Links asm to 0x0100.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_1000,"Links asm to 0x1000.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_4000,"Links asm to 0x4000.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_8000,"Links asm to 0x8000.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_C000,"Links asm to 0xC000.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_link_asm_bdos,"Links asm to BDOS.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_sdcc_hex2bin,"Converts an hex file to binary.","<in> <out>")

View file

@ -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 := "<![CDATA["
MB_CHAR_CDATA_END := "]]>"
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.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_clean,"Removed the full folder.","<dir>")
define mb_mkdir
$(MB_MKDIR) $(1)
endef
MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_mkdir,"Creates an folder.","<dir>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_mkdir,"Creates an folder.","<dir>")
define mb_delete
$(MB_RM) $(1)
endef
MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_delete,"Deletes an file.","<file>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_delete,"Deletes an file.","<file>")
define mb_copy
$(MB_COPY) $(1) $(2)
endef
MB_DOC_HELP_FUNCTION += $(call mb_doc_function,mb_copy,"Copy an file.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_copy,"Copy an file.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_unix2dos,"Converts an unix file to dos.","<in> <out>")
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.","<in> <out>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_dos2unix,"Converts an dos file to unix.","<in> <out>")
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.","<dir> <artifact>")
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_create_dist,"Create an distribution archive.","<dir> <artifact>")

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

4
src/dist/0module.mk vendored
View file

@ -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.")

View file

@ -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

View file

@ -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

View file

@ -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