msxbuild/lib/make/प्रणाली/mb_doc.mk
Willem Cazander ded142d36e
All checks were successful
Run test asserts / Test-Asserts (push) Successful in -6s
Fixed autoexec boot and found bug in make in splitting folders.
2024-07-10 17:03:28 +02:00

298 lines
19 KiB
Makefile
Raw Blame History

This file contains invisible Unicode characters

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

MB_DOC_FIRE_VARIABLE_FLOW ?= \\n
#*** Recursive variable: MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_VARIABLE_FLOW,"Flow builder of fire flow variable data.")
MB_DOC_FIRE_VARIABLE ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_VARIABLE,"Flow builder of firemake variable data.")
MB_DOC_FIRE_VARIABLE_DEEP ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_VARIABLE_DEEP,"Flow builder of makefire deep variable data.")
MB_DOC_FIRE_VARIABLE_ROCK ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_VARIABLE_ROCK,"Flow builder of makefire rock variable data.")
MB_DOC_FIRE_VARIABLE_I18N ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_VARIABLE_I18N,"Flow builder of makefire i18n variable data.")
MB_DOC_FIRE_FUNCTION ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_FUNCTION,"Flow builder of firemake function data.")
MB_DOC_FIRE_FUNCTION_DEEP ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_FUNCTION_DEEP,"Flow builder of firemake deep function data.")
MB_DOC_FIRE_FUNCTION_FLOW ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_FUNCTION_FLOW,"Flow builder of firemake flow function data.")
MB_DOC_FIRE_TARGET ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_TARGET,"Flow builder of firemake target data.")
MB_DOC_FIRE_TARGET_DEEP ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_TARGET_DEEP,"Flow builder of firemake deep target data.")
MB_DOC_FIRE_TARGET_RUN ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_TARGET_RUN,"Flow builder of firemake run target data.")
MB_DOC_FIRE_TARGET_HELP ?= \\n
MB_DOC_FIRE_VARIABLE_FLOW += $(call mb_make_call,_mb_doc_variable4u_flow,MB_DOC_FIRE_TARGET_HELP,"Flow builder of firemake help data.")
MB_DOC_XML_ROOT := firemake
MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,_mb_doc_variable4u_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_variable4u_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_variable4u_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_variable4u_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_variable4u_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_variable4u_rock,MB_DOC_XML_TAG_VALUE,"XML value tag for firemake output.")
MB_DOC_FORMAT ?= txt
MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,_mb_doc_variable4u_deep,MB_DOC_FORMAT,"Output format of documention$(MB_MAKE_COMMA) only 'txt' or 'xml' is supported.")
define _escape
$(MB__    )$(subst <,"<",$(subst >,">",$(subst \\n,\\\n,$(subst ','"'"',$(1)))))
endef
define _mb_doc_variable_txt
$(MB__    )"* "$(2)$(MB_MAKE_EQUALS)$(call mb_make_call,_escape,$(4))\\n$(if $(3),\\t$(3)\\n)\\n
endef
define _mb_doc_variable_xml
$(MB__    )\\n\\t$(call mb_make_call,mb_make_xml_open,variable,$(MB_DOC_XML_ATTR_NAME),$(2),$(MB_DOC_XML_ATTR_LEVEL),$(1))\\n\\t\\t$(call mb_make_call,mb_make_xml_tag_value,$(MB_DOC_XML_TAG_VALUE),$(4))\\n\\t\\t$(call mb_make_call,mb_make_xml_tag_value,$(MB_DOC_XML_TAG_DESC),$(3))\\n\\t$(call mb_make_call,mb_make_xml_close,variable)
endef
define _mb_doc_variable4u_deep
$(MB__    )$(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),deep,$(1),$(2),$($(1)))
endef
define _mb_doc_variable4u_rock
$(MB__    )$(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),rock,$(1),$(2),$($(1)))
endef
define _mb_doc_variable4u_flow
$(MB__    )$(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),flow,$(1),$(2),$(words $($(1))))
endef
define _mb_doc_variable4u_i18n
$(MB__    )$(call mb_make_call,_mb_doc_variable_$(MB_DOC_FORMAT),i18n,$(1),$(2),$($(1)))
endef
define mb_doc_variable
$(MB__    )$(eval MB_DOC_FIRE_VARIABLE += $$(call mb_make_call,_mb_doc_variable_$$(MB_DOC_FORMAT),build,$(1),$(2),$($(1))))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_variable,"Saves formatted documention of an variable.","<name> [desc]")
define mb_doc_variable_deep
$(MB__    )$(eval MB_DOC_FIRE_VARIABLE_DEEP += $$(call mb_make_call,_mb_doc_variable4u_deep,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_variable_deep,"Saves formatted documention of an deep variable.","<name> [desc]")
define mb_doc_variable_rock
$(MB__    )$(eval MB_DOC_FIRE_VARIABLE_ROCK += $$(call mb_make_call,_mb_doc_variable4u_rock,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_variable_rock,"Saves formatted documention of an rock variable.","<name> [desc]")
define mb_doc_variable_flow
$(MB__    )$(eval MB_DOC_FIRE_VARIABLE_FLOW += $$(call mb_make_call,_mb_doc_variable4u_flow,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_variable_flow,"Saves formatted documention of an flow variable.","<name> [desc]")
define mb_doc_variable_i18n
$(MB__    )$(eval MB_DOC_FIRE_VARIABLE_I18N += $$(call mb_make_call,_mb_doc_variable4u_i18n,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_variable_i18n,"Saves formatted documention of an i18n variable.","<name> [desc]")
define _mb_doc_function_txt
$(MB__    )"* "$(2)$(if $(4), $(4))$(if $(3),\\n\\t$(3)\\n)\\n
endef
define _mb_doc_function_xml
$(MB__    )\\n\\t$(call mb_make_call,mb_make_xml_open,function,$(MB_DOC_XML_ATTR_NAME),$(2),$(MB_DOC_XML_ATTR_LEVEL),$(1))\\n\\t\\t$(call mb_make_call,mb_make_xml_tag_value,$(MB_DOC_XML_TAG_ARGS),$(4))\\n\\t\\t$(call mb_make_call,mb_make_xml_tag_value,$(MB_DOC_XML_TAG_DESC),$(3))\\n\\t$(call mb_make_call,mb_make_xml_close,function)
endef
define _mb_doc_function4u_deep
$(MB__    )$(call mb_make_call,_mb_doc_function_$(MB_DOC_FORMAT),deep,$(1),$(2),$(3))
endef
define _mb_doc_function4u_flow
$(MB__    )$(call mb_make_call,_mb_doc_function_$(MB_DOC_FORMAT),flow,$(1),$(2),$(3))
endef
define mb_doc_function
$(MB__    )$(eval MB_DOC_FIRE_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_function4u_deep,mb_doc_function,"Saves formatted documention of an function.","<name> [desc] [args]")
define mb_doc_function_deep
$(MB__    )$(eval MB_DOC_FIRE_FUNCTION_DEEP += $$(call mb_make_call,_mb_doc_function4u_deep,$(1),$(2),$(3)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_function_deep,"Saves formatted documention of an deep function.","<name> [desc] [args]")
define mb_doc_function_flow
$(MB__    )$(eval MB_DOC_FIRE_FUNCTION_FLOW += $$(call mb_make_call,_mb_doc_function4u_flow,$(1),$(2),$(3)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_function_flow,"Saves formatted documention of an flow function.","<name> [desc] [args]")
define _mb_doc_target_txt
$(MB__    )"* "$(2)$(if $(3),\\n\\t$(3))\\n\\n
endef
define _mb_doc_target_xml
$(MB__    )\\n\\t$(call mb_make_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_call,mb_make_xml_tag_value,$(MB_DOC_XML_TAG_DESC),$(3))\\n\\t$(call mb_make_call,mb_make_xml_close,target),\\n\\t$(call mb_make_call,mb_make_xml_close,target))
endef
define mb_doc_target
$(MB__    )$(eval MB_DOC_FIRE_TARGET += $$(call mb_make_call,_mb_doc_target_$$(MB_DOC_FORMAT),build,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_target,"Saves formatted documention of an target.","<name> [desc]")
define mb_doc_target_deep
$(MB__    )$(eval MB_DOC_FIRE_TARGET_DEEP += $$(call mb_make_call,_mb_doc_target_$$(MB_DOC_FORMAT),deep,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_target_deep,"Saves formatted documention of an deep target.","<name> [desc]")
define mb_doc_target_help
$(MB__    )$(eval MB_DOC_FIRE_TARGET_HELP += $$(call mb_make_call,_mb_doc_target_$(MB_DOC_FORMAT),help,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_target_help,"Saves formatted documention of an help target.","<name> [desc]")
define mb_doc_target_run
$(MB__    )$(eval MB_DOC_FIRE_TARGET_RUN += $$(call mb_make_call,_mb_doc_target_$$(MB_DOC_FORMAT),run,$(1),$(2)))
endef
MB_DOC_FIRE_FUNCTION_DEEP += $(call mb_make_call,_mb_doc_function4u_deep,mb_doc_target_run,"Saves formatted documention of an run target.","<name> [desc]")
define __mb_doc_flow_help
.RECIPEPREFIX := $(MB__RECIPE)
@help:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Welcome to the $$(if $(1),$(1),MSXBUILD) help system.\\n\\nFor detailed fire help use one of the following targets;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET_HELP)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help)
@help-variable:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the make fire variables;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-variable,"Lists build variables.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-variable)
@help-variable-deep:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the deep make variables;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_DEEP)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-variable-deep,"Lists deep variables.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-variable-deep)
@help-variable-rock:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the rock make variables;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_ROCK)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-variable-rock,"Lists rock variables.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-variable-rock)
@help-variable-flow:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the flow make variables;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_FLOW)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-variable-flow,"Lists flow variables.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-variable-flow)
@help-variable-i18n:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the i18n make variables;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_I18N)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-variable-i18n,"Lists i18n variables.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-variable-i18n)
@help-function:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the make fire functions;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_FUNCTION)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-function,"Lists build functions.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-function)
@help-function-deep:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the deep make functions;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_FUNCTION_DEEP)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-function-deep,"Lists deep functions.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-function-deep)
@help-function-flow:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Documention of the flow make functions;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_FUNCTION_FLOW)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-function-flow,"Lists flow functions.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-function-flow)
@help-target:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Build one of the following make fire targets;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-target,"Lists build targets.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-target)
@help-target-deep:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Build one of the following deep make targets;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET_DEEP)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-target-deep,"Lists deep targets.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-target-deep)
@help-target-run:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo "Build one of the following run make targets;")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET_RUN)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-target-run,"Lists runnable targets.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-target-run)
@help-all:
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),@echo -e "Documention of all fire functions/variables/targets;\\n")
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_open,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Variables"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Variables in the deep"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_DEEP)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Variables hard as rock"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_ROCK)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Variables defining flow"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_FLOW)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Variables for i18n letters"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_VARIABLE_I18N)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Functions"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_FUNCTION)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Functions in the deep"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_FUNCTION_DEEP)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Functions building flow"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_FUNCTION_FLOW)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Targets"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Targets in the deep"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET_DEEP)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Targets that run away"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET_RUN)
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,"Targets main project help"))
$(MB__RECIPE)@echo -e $$(MB_DOC_FIRE_TARGET_HELP)
$(MB__RECIPE)$$(if $$(filter xml,$$(MB_DOC_FORMAT)),@echo $$(call mb_make_call,mb_make_xml_close,$$(MB_DOC_XML_ROOT)))
$(MB__RECIPE)$$(if $$(filter txt,$$(MB_DOC_FORMAT)),$$(call mb_make_call,mb_os_echo_good,OK))
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-all,"Lists all documented information.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-all)
@help-firemake:
$(MB__RECIPE)MB_DOC_FORMAT$(MB_MAKE_EQUALS)xml $$(MAKE) -s @help-all
$(MB__    )$$(call mb_make_call,mb_doc_target_help,@help-firemake,"Output all documention in XML for IDE integration.")
$(MB__    )$$(call mb_make_call,mb_make_flag_phony,@help-firemake)
.RECIPEPREFIX := $(MB__RECIPEPREFIX)
endef
define mb_doc_flow_help
$(MB__    )$(if $(1),,$(error $(1) missing))
$(MB__    )$(eval $(call mb_make_call,__mb_doc_flow_help,$(1)))
$(MB__    )$(if $(.DEFAULT_GOAL),,$(eval .DEFAULT_GOAL :$(MB_MAKE_EQUALS) @help))
endef
MB_DOC_FIRE_FUNCTION_FLOW += $(call mb_make_call,_mb_doc_function4u_flow,mb_doc_flow_help,"Prints flow of fire help target.","[project-name]")