msxbuild/lib/make/msxbuild.mk
Willem Cazander f7324721c2
All checks were successful
Run test asserts / Test-Asserts (push) Successful in -1s
Added project phases and flow generators.
2024-07-07 04:33:03 +02:00

67 lines
2.3 KiB
Makefile

#
# msxbuild.mk - Makefile helper to use with msx projects.
#
# Setup default tools paths
PATH_SDCC ?= /usr/bin
PATH_OPENMSX ?= /usr/bin
PATH_MSXBUILD ?= $(dir $(lastword $(MAKEFILE_LIST)))../..
PATH_MSXBUILD_REAL := $(if $(realpath $(PATH_MSXBUILD)),$(realpath $(PATH_MSXBUILD)),$(PATH_MSXBUILD))
# 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_conv.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
include $(PATH_MSXBUILD)/lib/make/mb_msxhub.mk
include $(PATH_MSXBUILD)/lib/make/mb_msxpipe.mk
include $(PATH_MSXBUILD)/lib/make/mb_openmsx.mk
include $(PATH_MSXBUILD)/lib/make/mb_autoexec.mk
include $(PATH_MSXBUILD)/lib/make/mb_assert.mk
include $(PATH_MSXBUILD)/lib/make/mb_tool.mk
include $(PATH_MSXBUILD)/lib/make/mb_proj.mk
include $(PATH_MSXBUILD)/lib/make/mb_os.mk
# Below mb_doc.mk for white space...
MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,PATH_SDCC,"Path where SDCC binaries are located.")
MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,PATH_OPENMSX,"Path where openMSX binary is located.")
MB_DOC_FIRE_VARIABLE_DEEP += $(call mb_make_call,mb_doc_variable_deep,PATH_MSXBUILD,"Path where msxbuild lib folder is located.")
MB_DOC_FIRE_VARIABLE_ROCK += $(call mb_make_call,mb_doc_variable_rock,PATH_MSXBUILD_REAL,"Resolved real path of msxbuild.")
define mb_clean
$(MB_OS_RMDIR) $(1)
endef
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_clean,"Removed the full folder.","<dir>")
define mb_mkdir
$(MB_OS_MKDIR) $(1)
endef
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_mkdir,"Creates an folder.","<dir>")
define mb_delete
$(MB_OS_RM) $(1)
endef
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_delete,"Deletes an file.","<file>")
define mb_copy
$(MB_OS_COPY) $(1) $(2)
endef
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_copy,"Copy an file.","<in> <out>")
define mb_create_dist
$(call mb_make_call,mb_make_echo_command,Creating distribution archive $(2))
tar -czf $(2) -C $(1) `ls $(1)`
endef
MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_create_dist,"Create an distribution archive.","<dir> <artifact>")