Auto setup module flow and packages as targets.
All checks were successful
Run test asserts / Test-Asserts (push) Successful in -13s
All checks were successful
Run test asserts / Test-Asserts (push) Successful in -13s
This commit is contained in:
parent
f0cccf2bb3
commit
c13a26d6b5
28 changed files with 420 additions and 259 deletions
|
|
@ -8,6 +8,9 @@ $(call mb_make_call,mb_doc_variable_rock,MB_MAKE_SPACE,"Expanded special char; s
|
|||
MB_MAKE_EQUALS := =
|
||||
$(call mb_make_call,mb_doc_variable_rock,MB_MAKE_EQUALS,"Expanded special char; equals.")
|
||||
|
||||
MB_MAKE_APPEND := +$(MB_MAKE_EQUALS)
|
||||
$(call mb_make_call,mb_doc_variable_rock,MB_MAKE_APPEND,"Expanded special char; +equals.")
|
||||
|
||||
MB_MAKE_HASH := \#
|
||||
$(call mb_make_call,mb_doc_variable_rock,MB_MAKE_HASH,"Expanded special char; hash.")
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ MB_MAKE_CALL_DEBUG ?= off
|
|||
9 :=
|
||||
|
||||
define _mb_make_call_debug
|
||||
$(MB_ᕽᕽᕽ )$(if $(filter off,$(MB_MAKE_CALL_DEBUG)),,$(if $(findstring mb_doc_,$(1)),,$(warning DEBUG $(1) $(2) $(3) $(4) $(5) $(6) $(7) $(8) $(9))))
|
||||
$(MB_ᕽᕽᕽ )$(if $(filter off,$(MB_MAKE_CALL_DEBUG)),,$(if $(findstring mb_doc_,$(1)),,$(warning DEBUG $(1) ($(2),$(3),$(4),$(5),$(6),$(7),$(8),$(9)))))
|
||||
endef
|
||||
define mb_make_call
|
||||
$(MB_ᕽᕽᕽ )$(call _mb_make_call_debug,$(1),$(2),$(3),$(4),$(5),$(6),$(7),$(8),$(9))$(if $(filter file,$(origin $(1))),$(call $(1),$(2),$(3),$(4),$(5),$(6),$(7),$(8),$(9)),$(error $(1) is not defined))
|
||||
|
|
|
|||
18
lib/make/सिस्टमₚᵣₐᵧToੴ/mb_make_module.mk
Normal file
18
lib/make/सिस्टमₚᵣₐᵧToੴ/mb_make_module.mk
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
|
||||
define mb_make_module_path_src
|
||||
$(MB_ᕽᕽᕽ )$(1)$(abspath $(subst $(1),,$(dir $(lastword $(MAKEFILE_LIST)))))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_deep,mb_make_module_path_src,"Convert current location folder as src folder.","<path-src>")
|
||||
|
||||
|
||||
define mb_make_module_path_bin
|
||||
$(MB_ᕽᕽᕽ )$(2)$(abspath $(subst $(1),,$(dir $(lastword $(MAKEFILE_LIST)))))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_deep,mb_make_module_path_src,"Convert current location folder as bin folder.","<path-src> <path-bin>")
|
||||
|
||||
|
||||
define mb_make_module_local_deps
|
||||
$(MB_ᕽᕽᕽ )$(foreach _dep,$(2),$(1)/$(notdir $(_dep)))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_deep,mb_make_module_deps,"Convert other files to local deps.","<mod-bin> <deps>")
|
||||
|
||||
|
|
@ -5,6 +5,9 @@ $(call mb_make_call,mb_doc_variable,MB_I18N,"The language code to select the i18
|
|||
MB_I18N_ASSERT_SUCCESS ?= Assert successfull
|
||||
$(call mb_make_call,mb_doc_variable_i18n,MB_I18N_ASSERT_SUCCESS,"Message for when assertion test is successfull.")
|
||||
|
||||
MB_I18N_ASSERT_FAILURE ?= Assert failure
|
||||
$(call mb_make_call,mb_doc_variable_i18n,MB_I18N_ASSERT_FAILURE,"Message for when assertion test is failed.")
|
||||
|
||||
MB_I18N_AUTOEXEC_WRITE ?= Write autoexec for
|
||||
$(call mb_make_call,mb_doc_variable_i18n,MB_I18N_AUTOEXEC_WRITE,"Message for when writing a default autoexec.")
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
|
||||
MB_I18N_ASSERT_SUCCESS = ASSERTED DONE:
|
||||
MB_I18N_ASSERT_FAILURE = ASSERTION FAILED:
|
||||
MB_I18N_AUTOEXEC_WRITE = WRITE BOOSTER:
|
||||
MB_I18N_CONV_UNIX2DOS = CONV UNIX2DOS:
|
||||
MB_I18N_CONV_DOS2UNIX = CONV DOS2UNIX:
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
|
||||
MB_I18N_ASSERT_SUCCESS = ᑲᔪᓯᓂᖃᑦᑎᐊᕐᓂᖅ
|
||||
MB_I18N_ASSERT_FAILURE = ᓇᓗᓇᐃᖅᑕᐅᓂᖓ ᑲᔪᓯᙱᓐᓂᖓ
|
||||
MB_I18N_AUTOEXEC_WRITE = ᑎᑎᕋᑲᐅᑎᒋᓂᖅ ᑲᒫᓗᖕᒥᒃ
|
||||
MB_I18N_CONV_UNIX2DOS = ᐅᐊᔭᐅᑉ ᐃᓱᐊᓄᐊᕐᓗᒍ
|
||||
MB_I18N_CONV_DOS2UNIX = ᑐᑭᓕᐊᖓᔪᓐᓃᕐᓗᓂ
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
|
||||
MB_I18N_ASSERT_SUCCESS = アサート成功
|
||||
MB_I18N_ASSERT_FAILURE = アサーションが失敗しました
|
||||
MB_I18N_AUTOEXEC_WRITE = 自動実行の書き込み
|
||||
MB_I18N_CONV_UNIX2DOS = ディスクシステムの行末に変換
|
||||
MB_I18N_CONV_DOS2UNIX = メインフレームラインエンドに変換
|
||||
|
|
|
|||
|
|
@ -26,11 +26,11 @@ $(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_STARTUP_TIMEOUT,"Startup failure
|
|||
MB_AUTOEXEC_STARTUP_EXITCODE ?= 124
|
||||
$(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_STARTUP_EXITCODE,"Startup failure exit code of autoexec.")
|
||||
|
||||
MB_AUTOEXEC_SAFE_TEST_TIMEOUT ?= 120
|
||||
$(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_TEST_TIMEOUT,"Safe test execution failure timeout.")
|
||||
MB_AUTOEXEC_SAFE_ASSERT_TIMEOUT ?= 120
|
||||
$(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_ASSERT_TIMEOUT,"Safe assert execution failure timeout.")
|
||||
|
||||
MB_AUTOEXEC_SAFE_TEST_EXITCODE ?= 1
|
||||
$(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_TEST_EXITCODE,"Safe test execution failure exit code.")
|
||||
MB_AUTOEXEC_SAFE_ASSERT_EXITCODE ?= 1
|
||||
$(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_ASSERT_EXITCODE,"Safe assert execution failure exit code.")
|
||||
|
||||
MB_AUTOEXEC_SAFE_CMD_TIMEOUT ?= 300
|
||||
$(call mb_make_call,mb_doc_variable,MB_AUTOEXEC_SAFE_CMD_TIMEOUT,"Safe command execution failure timeout.")
|
||||
|
|
@ -127,12 +127,12 @@ endef
|
|||
$(call mb_make_call,mb_doc_function,mb_autoexec_append_save_video,"Appends save video command.","<dir> [prefix]")
|
||||
|
||||
|
||||
define mb_autoexec_append_safe_test
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_cmd,$(1),omsxctl fail_after $(if $(3),$(3),$(MB_AUTOEXEC_SAFE_TEST_TIMEOUT)) seconds err_test $(if $(4),$(4),$(MB_AUTOEXEC_SAFE_TEST_EXITCODE)))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_echo,$(1),mb::safe test $(2))
|
||||
define mb_autoexec_append_safe_assert
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_cmd,$(1),omsxctl fail_after $(if $(3),$(3),$(MB_AUTOEXEC_SAFE_ASSERT_TIMEOUT)) seconds err_test $(if $(4),$(4),$(MB_AUTOEXEC_SAFE_ASSERT_EXITCODE)))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_echo,$(1),mb::safe assert $(2))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_cmd,$(1),$(2))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function,mb_autoexec_append_safe_test,"Appends running a safe test.","<dir> <cmd> [timeout] [exit-code]")
|
||||
$(call mb_make_call,mb_doc_function,mb_autoexec_append_safe_assert,"Appends running a safe assert.","<dir> <cmd> [timeout] [exit-code]")
|
||||
|
||||
|
||||
define mb_autoexec_append_safe_cmd
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ $(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_CMD,"Foreground col
|
|||
MB_MSXPIPE_COLOR_BG_SAFE_CMD ?= 000
|
||||
$(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 ?= 421
|
||||
$(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_TEST,"Foreground color of safe test session pipe.")
|
||||
MB_MSXPIPE_COLOR_FG_SAFE_ASSERT ?= 421
|
||||
$(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_SAFE_ASSERT,"Foreground color of safe assert session pipe.")
|
||||
|
||||
MB_MSXPIPE_COLOR_BG_SAFE_TEST ?= 000
|
||||
$(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_BG_SAFE_TEST,"Background color of safe test session pipe.")
|
||||
MB_MSXPIPE_COLOR_BG_SAFE_ASSERT ?= 000
|
||||
$(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_BG_SAFE_ASSERT,"Background color of safe assert session pipe.")
|
||||
|
||||
MB_MSXPIPE_COLOR_FG_RUN_GUI ?= 141
|
||||
$(call mb_make_call,mb_doc_variable,MB_MSXPIPE_COLOR_FG_RUN_GUI,"Foreground color of run gui session pipe.")
|
||||
|
|
@ -27,13 +27,13 @@ endef
|
|||
$(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
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_SAFE_TEST),$(MB_MSXPIPE_COLOR_BG_SAFE_TEST))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_safe_test,$(1),$(2))
|
||||
define mb_msxpipe_safe_assert
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_write_default,$(1),$(MB_MSXPIPE_COLOR_FG_SAFE_ASSERT),$(MB_MSXPIPE_COLOR_BG_SAFE_ASSERT))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_safe_assert,$(1),$(2))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_autoexec_append_exit,$(1))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_openmsx_dosctl,$(1),$(3))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function,mb_msxpipe_safe_test,"Runs openMSX and safely executes one test.","<dir> <cmd> [machine]")
|
||||
$(call mb_make_call,mb_doc_function,mb_msxpipe_safe_assert,"Runs openMSX and safely executes one assert.","<dir> <cmd> [machine]")
|
||||
|
||||
|
||||
define _mb_msxpipe_run_gui
|
||||
|
|
|
|||
|
|
@ -1,12 +1,16 @@
|
|||
|
||||
define __mb_flow_assert_grep_binary_x
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
$(1)/$(5)-$(2): $(1)/@build
|
||||
|
||||
$(1)/@@$(5)-deps:: $(1)/@assert/$(5)/$(2)
|
||||
|
||||
$(1)/@assert/$(5)/$(2): $(1)/@build
|
||||
$(MB_@RECIPE)grep -q -U $(4) $(1)/$(3)
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_echo_assert,$$(MB_I18N_ASSERT_SUCCESS) v-$(2))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/$(5)-$(2),"Asserts that $(3) output matches.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/$(5)-$(2))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,$(5),$(1)/$(5)-$(2))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_echo_assert,$$(MB_I18N_ASSERT_SUCCESS) $(1)/@assert/$(2)/$(5))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/@assert/$(5)/$(2),"Asserts that $(3) output matches.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@assert/$(5)/$(2))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,$(5),$(1)/@assert/$(5)/$(2))
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_assert_grep_binary_test
|
||||
|
|
@ -20,26 +24,39 @@ $(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__mb_flow_assert_grep_binary_
|
|||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_assert_grep_binary_package_qa,"Inject flow of single binary grep assert.","<build-dir> <test-id> <file> <grep-match>")
|
||||
|
||||
#$$(call mb_delete,$(1)/$(3).out)
|
||||
define __mb_assert_flow_bdos_grep
|
||||
define __mb_flow_assert_msxpipe_grep_x2
|
||||
$(MB_ᕽᕽᕽ )$(shell grep -q $(1) $(2) && echo || echo fail)
|
||||
endef
|
||||
|
||||
|
||||
define __mb_flow_assert_msxpipe_grep_x
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
$(1)-test-$(2)/@assert: $(1)/@build
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_dir_create,$(1)-test-$(2))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_file_copy,$(1)/$(3).com,$(1)-test-$(2))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_test,$(1)-test-$(2),$(3) > $(3).out,$(5))
|
||||
$(MB_@RECIPE)grep -q $(4) $(1)-test-$(2)/$(3).out
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_echo_assert,$$(MB_I18N_ASSERT_SUCCESS) $(1)-test-$(2)/@assert)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)-test-$(2)/@assert,"Asserts that $(3) output matches.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)-test-$(2)/@assert)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@test,$(1)-test-$(2)/@assert)
|
||||
|
||||
$(1)/@@$(5)-deps:: $(1)/@assert/$(5)/$(2)
|
||||
$(7)/@@init-deps:: $(1)/@build
|
||||
|
||||
$(1)/@assert/$(5)/$(2): $(7)/@build
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(7)/$(3).out),,$$(call mb_make_call,mb_os_file_delete,$(7)/$(3).out))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_assert,$(7),$(3) > $(3).out,$(6))
|
||||
$(MB_@RECIPE)grep -q $(4) $(7)/$(3).out
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_echo_assert,$$(MB_I18N_ASSERT_SUCCESS) $(1)/@assert/$(2)/$(5))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/@assert/$(5)/$(2),"Asserts that $(3) output matches.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@assert/$(5)/$(2))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,$(5),$(1)/@assert/$(5)/$(2))
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
|
||||
#$(call mb_make_call,mb_flow_clone_deps,$(DIST_QA_MSX1_BIN),$(DIST_BIN),$(DIST_DEPS),$(DIST_QA_MSX1_MACHINE))
|
||||
define mb_assert_flow_bdos_grep
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg4,mb_assert_flow_bdos_grep,$(1),$(2),$(3),$(4))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__mb_assert_flow_bdos_grep,$(1),$(2),$(3),$(4),$(5)))
|
||||
define mb_flow_assert_msxpipe_grep_test
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg5,$(0),$(1),$(2),$(3),$(4),$(5))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,mb_flow_clone_deps,$(1)-assert/@test-$(3),$(1),$(2),$(6),$(7)))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__mb_flow_assert_msxpipe_grep_x,$(1),$(3),$(4),$(5),@test,$(7),$(1)-assert/@test-$(3)))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_assert_flow_bdos_grep,"Inject flow of single grep assert.","<build-dir> <test-id> <cmd-name> <grep-match> [machine]")
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_assert_msxpipe_grep_test,"Inject flow of single grep assert.","<build-dir> <deps> <test-id> <cmd-name> <grep-match> [packages] [machine]")
|
||||
define mb_flow_assert_msxpipe_grep_package_qa
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg5,$(0),$(1),$(2),$(3),$(4),$(5))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,mb_flow_clone_deps,$(1)-assert/@package-qa-$(3),$(1),$(2),$(6),$(7)))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__mb_flow_assert_msxpipe_grep_x,$(1),$(3),$(4),$(5),@package-qa,$(7),$(1)-assert/@package-qa-$(3)))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_assert_msxpipe_grep_package_qa,"Inject flow of single grep assert.","<build-dir> <deps> <test-id> <cmd-name> <grep-match> [packages] [machine]")
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,40 +2,20 @@
|
|||
define __mb_flow_clone_deps
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
|
||||
$(1)/@clean: @@clean
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_run_clean,$(1))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/@clean)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@clean)
|
||||
|
||||
$(1): | @init
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),,$$(call mb_make_call,mb_os_dir_create,$(1)))
|
||||
$(MB_@RECIPE)$$(if $(6),$$(call mb_make_call,mb_msxhub_get_$(6)_boot,$(1)))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1))
|
||||
|
||||
$(1)/@prepare: $(3) | $(1)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/@prepare)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@prepare)
|
||||
|
||||
$(1)/%: $(2)/% $(1)/@prepare
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_file_copy,$$<,$$@)
|
||||
|
||||
$(1)/@build: $(4)
|
||||
$(1)/@@process-deps:: $(4)
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_os_echo_remark,$(MB_I18N_FLOW_CLONE_REPORT) $$(words $$^))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/@build,"Builds the $(1) module.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@build)
|
||||
|
||||
$(1)/@run: $(1)/@build
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_run_gui,$(1),,$(5))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_run,$(1)/@run,"Run $(3).com manually with gui.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@run)
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_clone_deps
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg3,$(0),$(1),$(2),$(3))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__$(0),$(1),$(2),$(3),$(call mb_make_call,mb_proj_module_local_deps,$(1),$(3)),$(4),$(5)))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_setup,$(1),@init,$(1))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_module_run,$(1),$(5))
|
||||
$(MB_ᕽᕽᕽ )$(if $(4),$(call mb_make_call,mb_flow_proj_prepare_packages,$(1),$(4)))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__$(0),$(1),$(2),$(3),$(call mb_make_call,mb_make_module_local_deps,$(1),$(3))))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_clone_deps,"Inject flow of file copy toolchain module.","<bin-to> <bin-from> <deps> [machine] [os-version]")
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_clone_deps,"Inject flow of file copy toolchain module.","<bin-to> <bin-from> <deps> [packages] [machine]")
|
||||
|
||||
|
|
|
|||
|
|
@ -2,47 +2,37 @@
|
|||
define __mb_flow_m80_bdos_mono
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
|
||||
$(1): | @init
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),,$$(call mb_make_call,mb_os_dir_create,$(1)))
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)/utils),,$$(call mb_make_call,mb_os_dir_create,$(1)/utils))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxhub_get_macro80,$(1)/utils)
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxhub_get_z80asmuk,$(1)/utils)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1))
|
||||
|
||||
$(1)/$(3).mac: $(2)/$(3).mac | $(1)
|
||||
$(1)/@@process-deps:: $(1)/$(3).mac
|
||||
$(1)/$(3).mac: $(2)/$(3).mac | $(1)/@prepare
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_conv_unix2dos,$(2)/$(3).mac,$(1)/$(3).mac)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).mac)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@process,$(1)/$(3).mac)
|
||||
|
||||
$(1)/@@compile-deps:: $(1)/$(3).rel
|
||||
$(1)/$(3).rel: $(1)/$(3).mac
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_cmd,$(1),m80 $$(MB_MAKE_EQUALS)$(3)/Z)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).rel)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@compile,$(1)/$(3).rel)
|
||||
|
||||
$(1)/@@link-deps:: $(1)/$(3).hex
|
||||
$(1)/$(3).hex: $(1)/$(3).rel
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_cmd,$(1),l80 $(3)$$(MB_MAKE_COMMA)$(3)/N/X/Y/E)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).hex)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@link,$(1)/$(3).hex)
|
||||
|
||||
$(1)/@@build-deps:: $(1)/$(3).com
|
||||
$(1)/$(3).com: $(1)/$(3).hex
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_safe_cmd,$(1),hextocom $(3))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).com)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@build,$(1)/$(3).com)
|
||||
|
||||
$(1)/@build: $(1)/$(3).com
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/@build,"Builds the $(1) module.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@build)
|
||||
|
||||
$(1)/@run: $(1)/@build
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_run_gui,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_run,$(1)/@run,"Run $(3).com manually with gui.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@run)
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_m80_bdos_mono
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg3,$(0),$(1),$(2),$(3))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_setup,$(1),@init,$(1))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_module_run,$(1))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_prepare_packages,$(1),macro80 z80asmuk,utils)
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__$(0),$(1),$(2),$(3)))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_m80_bdos_mono,"Inject flow of m80 toolchain bdos mono file module.","<bin-dir> <src-dir> <objname>")
|
||||
|
|
|
|||
|
|
@ -20,24 +20,11 @@ $(call mb_make_call,mb_doc_variable,MB_PROJ_META_WEBSITE,"The project website lo
|
|||
MB_PROJ_PHASE_ALL = @clean @init @prepare @process @compile @link @build @test @package @package-qa @package-deploy @all
|
||||
$(call mb_make_call,mb_doc_variable_rock,MB_PROJ_PHASE_ALL,"All the phases of an project with flow steps.")
|
||||
|
||||
MB_PROJ_FIRE_MODULE_INIT ?=
|
||||
$(call mb_make_call,mb_doc_variable_flow,MB_PROJ_FIRE_MODULE_INIT,"List of unique module project structure targets.")
|
||||
|
||||
define mb_proj_module_path_src
|
||||
$(MB_ᕽᕽᕽ )$(1)$(abspath $(subst $(1),,$(dir $(lastword $(MAKEFILE_LIST)))))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_deep,mb_proj_module_path_src,"Convert current location folder as src folder.","<path-src>")
|
||||
|
||||
|
||||
define mb_proj_module_path_bin
|
||||
$(MB_ᕽᕽᕽ )$(2)$(abspath $(subst $(1),,$(dir $(lastword $(MAKEFILE_LIST)))))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_deep,mb_proj_module_path_src,"Convert current location folder as bin folder.","<path-src> <path-bin>")
|
||||
|
||||
|
||||
define mb_proj_module_local_deps
|
||||
$(MB_ᕽᕽᕽ )$(foreach _dep,$(2),$(1)/$(notdir $(_dep)))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_deep,mb_proj_module_deps,"Convert other files to local deps.","<mod-bin> <deps>")
|
||||
|
||||
MB_PROJ_FIRE_MODULE_RUN ?=
|
||||
$(call mb_make_call,mb_doc_variable_flow,MB_PROJ_FIRE_MODULE_RUN,"List of unique module project modules run targets.")
|
||||
|
||||
define mb_proj_grow_deps_phase
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg2,$(0),$(1),$(2))
|
||||
|
|
@ -48,161 +35,156 @@ $(call mb_make_call,mb_doc_function_deep,mb_proj_grow_deps_phase_clean,"Grow the
|
|||
|
||||
|
||||
define _mb_proj_flow_step_before
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_os_echo_phase,$(MB_I18N_PROJ_STEP_BEFORE) $@)
|
||||
$(MB_ᕽᕽᕽ )$(if $(filter $(subst @@,@,$@),$(MB_PROJ_PHASE_ALL)),$(call mb_make_call,mb_os_echo_phase,$(MB_I18N_PROJ_STEP_BEFORE) $@))
|
||||
endef
|
||||
define _mb_proj_flow_step_done
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_os_echo_phase,$(MB_I18N_PROJ_STEP_AFTER) $@)
|
||||
$(MB_ᕽᕽᕽ )$(if $(filter $@,$(MB_PROJ_PHASE_ALL)),$(call mb_make_call,mb_os_echo_phase,$(MB_I18N_PROJ_STEP_AFTER) $@))
|
||||
$(MB_ᕽᕽᕽ )$(if $(value MAKECMDGOALS),$(if $(filter $@,$(MAKECMDGOALS)),$(call mb_make_call,mb_os_echo_good,$(MB_I18N_PROJ_STEP_DONE) $@)))
|
||||
endef
|
||||
define _mb_proj_run_clean
|
||||
$(MB_ᕽᕽᕽ )$(foreach folder,$(1),$(if $(wildcard $(folder)),$(call mb_make_call,mb_os_echo_command,$(MB_I18N_PROJ_DIR_DELETE) $(folder));))
|
||||
$(MB_ᕽᕽᕽ )$(foreach folder,$(1),$(if $(wildcard $(folder)),$(call mb_make_call,mb_os_dir_delete,$(folder))))
|
||||
endef
|
||||
define _mb_proj_run_init
|
||||
$(MB_ᕽᕽᕽ )$(foreach folder,$(1),$(if $(wildcard $(folder)),,$(call mb_make_call,mb_os_echo_command,$(MB_I18N_PROJ_DIR_CREATE) $(folder));))
|
||||
$(MB_ᕽᕽᕽ )$(foreach folder,$(1),$(if $(wildcard $(folder)),,$(call mb_make_call,mb_os_dir_create,$(folder))))
|
||||
endef
|
||||
|
||||
|
||||
define __mb_flow_proj_setup
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
|
||||
@@clean: @include
|
||||
$(3)@@clean: $(2)
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@clean)
|
||||
@@clean-deps:: @include
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@clean-deps)
|
||||
@clean: @@clean @@clean-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_run_clean,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@clean)
|
||||
$(3)@@clean-deps:: $(2)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@clean-deps)
|
||||
$(3)@clean: $(3)@@clean $(3)@@clean-deps
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),$$(call mb_make_call,mb_os_echo_command,$$(MB_I18N_PROJ_DIR_DELETE) $(1)))
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),$$(call mb_make_call,mb_os_dir_delete,$(1)))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@clean,"Clean's the project build folders.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@clean)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@clean,"Clean's the project build folders.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@clean)
|
||||
|
||||
@@init: @include
|
||||
$(3)@@init: $(2)
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@init)
|
||||
@@init-deps:: @include
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@init-deps)
|
||||
@init: @@init @@init-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_run_init,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@init)
|
||||
$(3)@@init-deps:: $(2)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@init-deps)
|
||||
$(3)@init: $(3)@@init $(3)@@init-deps
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),,$$(call mb_make_call,mb_os_echo_command,$$(MB_I18N_PROJ_DIR_CREATE) $(1)))
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),,$$(call mb_make_call,mb_os_dir_create,$(1)))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@init,"Create the project output folders.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@init)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@init,"Create the project output folders.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@init)
|
||||
|
||||
@@prepare: @init
|
||||
$(3)@@prepare: $(3)@init
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@prepare)
|
||||
@@prepare-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@prepare-deps)
|
||||
@prepare: @@prepare @@prepare-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@prepare)
|
||||
$(3)@@prepare-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@prepare-deps)
|
||||
$(3)@prepare: $(3)@@prepare $(3)@@prepare-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@prepare,"Prepare sources before processing.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@prepare)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@prepare,"Prepare sources before processing.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@prepare)
|
||||
|
||||
@@process: @prepare
|
||||
$(3)@@process: $(3)@prepare
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@process)
|
||||
@@process-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@process-deps)
|
||||
@process: @@process @@process-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@process)
|
||||
$(3)@@process-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@process-deps)
|
||||
$(3)@process: $(3)@@process $(3)@@process-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@process,"Process sources before compiling.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@process)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@process,"Process sources before compiling.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@process)
|
||||
|
||||
@@compile: @process
|
||||
$(3)@@compile: $(3)@process
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@compile)
|
||||
@@compile-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@compile-deps)
|
||||
@compile: @@compile @@compile-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@compile)
|
||||
$(3)@@compile-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@compile-deps)
|
||||
$(3)@compile: $(3)@@compile $(3)@@compile-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@compile,"Compiles all project sources.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@compile)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@compile,"Compiles all project sources.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@compile)
|
||||
|
||||
@@link: @compile
|
||||
$(3)@@link: $(3)@compile
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@link)
|
||||
@@link-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@link-deps)
|
||||
@link: @@link @@link-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@link)
|
||||
$(3)@@link-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@link-deps)
|
||||
$(3)@link: $(3)@@link $(3)@@link-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@link,"Link all project intermediate files.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@link)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@link,"Link all project intermediate files.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@link)
|
||||
|
||||
@@build: @link
|
||||
$(3)@@build: $(3)@link
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@build)
|
||||
@@build-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@build-deps)
|
||||
@build: @@build @@build-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@build)
|
||||
$(3)@@build-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@build-deps)
|
||||
$(3)@build: $(3)@@build $(3)@@build-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@build,"Build all project artifacts.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@build)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@build,"Build all project artifacts.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@build)
|
||||
|
||||
@@test: @build
|
||||
$(3)@@test: $(3)@build
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@test)
|
||||
@@test-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@test-deps)
|
||||
@test: @@test @@test-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@test)
|
||||
$(3)@@test-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@test-deps)
|
||||
$(3)@test: $(3)@@test $(3)@@test-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@test,"Run all assertion tests.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@test)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@test,"Run all assertion tests.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@test)
|
||||
|
||||
@@package: @test
|
||||
$(3)@@package: $(3)@test
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@package)
|
||||
@@package-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@package-deps)
|
||||
@package: @@package @@package-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,v@@package)
|
||||
$(3)@@package-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@package-deps)
|
||||
$(3)@package: $(3)@@package $(3)@@package-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@package,"Create all packages of project.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@package)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@package,"Create all packages of project.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@package)
|
||||
|
||||
@@package-qa: @package
|
||||
$(3)@@package-qa: $(3)@package
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@package-qa)
|
||||
@@package-qa-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@package-qa-deps)
|
||||
@package-qa: @@package-qa @@package-qa-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@package-qa)
|
||||
$(3)@@package-qa-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@package-qa-deps)
|
||||
$(3)@package-qa: $(3)@@package-qa $(3)@@package-qa-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@package-qa,"Run all packages QA of project.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@package-qa)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@package-qa,"Run all packages QA of project.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@package-qa)
|
||||
|
||||
@@package-deploy: @package-qa
|
||||
$(3)@@package-deploy: $(3)@package-qa
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@package-deploy)
|
||||
@@package-deploy-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@package-deploy-deps)
|
||||
@package-deploy: @@package-deploy @@package-deploy-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@package-deploy)
|
||||
$(3)@@package-deploy-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@package-deploy-deps)
|
||||
$(3)@package-deploy: $(3)@@package-deploy $(3)@@package-deploy-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@package-deploy,"Deploy all the packages.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@package-deploy)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@package-deploy,"Deploy all the packages.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@package-deploy)
|
||||
|
||||
@@all: @package-qa
|
||||
$(3)@@all: $(3)@package-qa
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_before)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@all)
|
||||
@@all-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@@all-deps)
|
||||
@all: @@all @@all-deps
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@all)
|
||||
$(3)@@all-deps::
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@@all-deps)
|
||||
$(3)@all: $(3)@@all $(3)@@all-deps
|
||||
$(MB_@RECIPE)$$(call mb_make_call,_mb_proj_flow_step_done)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_help,@all,"Run full build and package QA tests.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,@all)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target$(if $(3),,_help),$(3)@all,"Run full build and package QA tests.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(3)@all)
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_proj_setup
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg1,$(0),$(1))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_GROUP_ID)
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_ARTIFACT_ID)
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_VERSION)
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_NAME)
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_DESCRIPTION)
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_WEBSITE)
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__$(0),$(1)))
|
||||
$(MB_ᕽᕽᕽ )$(if $(MB_I18N),$(if $(filter off,$(MB_I18N)),,$(call mb_make_call,_$(0)_i18n)))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_GROUP_ID))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_ARTIFACT_ID))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_VERSION))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_NAME))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_DESCRIPTION))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(call mb_make_call,mb_make_check_variable,MB_PROJ_META_WEBSITE))
|
||||
$(MB_ᕽᕽᕽ )$(if $(filter $(if $(3),$(3)/@init,@init),$(MB_PROJ_FIRE_MODULE_INIT)),,$(eval $(call mb_make_call,__$(0),$(1),$(2),$(if $(3),$(3)/))))
|
||||
$(MB_ᕽᕽᕽ )$(if $(3),,$(if $(MB_I18N),$(if $(filter off,$(MB_I18N)),,$(call mb_make_call,_$(0)_i18n))))
|
||||
$(MB_ᕽᕽᕽ )$(eval MB_PROJ_FIRE_MODULE_INIT $(MB_MAKE_APPEND) $(if $(3),$(3)/@init,@init))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_proj_setup,"Inject flow of abstract project build cycle.","<build-dirs>")
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_proj_setup,"Inject flow of abstract project build cycle.","<bin-dir> [parent-glue] [bin-mod-dir]")
|
||||
|
||||
|
||||
define __mb_flow_proj_setup_i18n
|
||||
|
|
@ -286,3 +268,40 @@ $(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_variable,MB_I18N_PROJ_
|
|||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,_$(0)))
|
||||
endef
|
||||
|
||||
|
||||
define __mb_flow_proj_module_run
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
|
||||
$(1)/@run: $(1)/@build
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_run_gui,$(1),$(2))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/@run,"Run manually with gui.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_run,$(1)/@run,"Run manually with gui.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@run)
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_proj_module_run
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg1,$(0),$(1))
|
||||
$(MB_ᕽᕽᕽ )$(if $(filter $(1)/@run,$(MB_PROJ_FIRE_MODULE_RUN)),,$(eval $(call mb_make_call,__$(0),$(1),$(2))))
|
||||
$(MB_ᕽᕽᕽ )$(eval MB_PROJ_FIRE_MODULE_RUN +$(MB_MAKE_EQUALS) $(1)/@run)
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_proj_module_run,"Inject flow module @run.","<bin-dir> [machine]")
|
||||
|
||||
|
||||
define __mb_flow_proj_prepare_packages
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
|
||||
$(1)/@@prepare-deps:: $(1)/@msxhub/$(2)
|
||||
$(1)/@msxhub/$(2):
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)$$(if $(3),/$(3))),,$$(call mb_make_call,mb_os_dir_create,$(1)$$(if $(3),/$(3))))
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxhub_get_$(2),$(1)$$(if $(3),/$(3)))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@msxhub/$(2))
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_proj_prepare_packages
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg2,$(0),$(1),$(2))
|
||||
$(MB_ᕽᕽᕽ )$(foreach _pack,$(2),$(eval $(call mb_make_call,__$(0),$(1),$(_pack),$(3))))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_proj_prepare_packages,"Inject package fetch flow for module.","<bin-dir> <packages> [dest-dir]")
|
||||
|
||||
|
|
|
|||
|
|
@ -2,39 +2,30 @@
|
|||
define __mb_flow_sdcc_bdos_mono
|
||||
.RECIPEPREFIX := $(MB_@RECIPE)
|
||||
|
||||
$(1): | @init
|
||||
$(MB_@RECIPE)$$(if $$(wildcard $(1)),,$$(call mb_make_call,mb_os_dir_create,$(1)))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1))
|
||||
|
||||
$(1)/$(3).rel: $(2)/$(3).asm | $(1)
|
||||
$(1)/@@compile-deps:: $(1)/$(3).rel
|
||||
$(1)/$(3).rel: $(2)/$(3).asm | $(1)/@prepare
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_sdcc_compile_asm,$$<,$$@)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).rel)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@compile,$(1)/$(3).rel)
|
||||
|
||||
$(1)/@@link-deps:: $(1)/$(3).hex
|
||||
$(1)/$(3).hex: $(1)/$(3).rel
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_sdcc_link_asm_bdos,$$<,$$@)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).hex)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@link,$(1)/$(3).hex)
|
||||
|
||||
$(1)/@@build-deps:: $(1)/$(3).com
|
||||
$(1)/$(3).com: $(1)/$(3).hex
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_sdcc_objcopy,$$<,$$@)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_deep,$(1)/$(3).com)
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_proj_grow_deps_phase,@build,$(1)/$(3).com)
|
||||
|
||||
$(1)/@build: $(1)/$(3).com
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target,$(1)/@build,"Builds the $(1) module.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@build)
|
||||
|
||||
$(1)/@run: $(1)/@build
|
||||
$(MB_@RECIPE)$$(call mb_make_call,mb_msxpipe_run_gui,$(1))
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_doc_target_run,$(1)/@run,"Run $(3).com manually with gui.")
|
||||
$(MB_ᕽᕽᕽ )$$(call mb_make_call,mb_make_target_phony,$(1)/@run)
|
||||
|
||||
.RECIPEPREFIX := $(MB_@RECIPEPREFIX)
|
||||
endef
|
||||
define mb_flow_sdcc_bdos_mono
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_make_check_arg3,$(0),$(1),$(2),$(3))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_setup,$(1),@init,$(1))
|
||||
$(MB_ᕽᕽᕽ )$(call mb_make_call,mb_flow_proj_module_run,$(1))
|
||||
$(MB_ᕽᕽᕽ )$(eval $(call mb_make_call,__$(0),$(1),$(2),$(3)))
|
||||
endef
|
||||
$(call mb_make_call,mb_doc_function_flow,mb_flow_sdcc_bdos_mono,"Inject flow of sdcc toolchain bdos mono file module.","<bin-dir> <src-dir> <objname>")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue