# # 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_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 # OS cmds ifeq ($(OS),Windows_NT) MB_RM = del /F /Q MB_RMDIR = RMDIR /S /Q MB_MKDIR = mkdir MB_COPY = copy MB_ERRIGNORE = 2>NUL || true MB_SEP=\\ MB_CACHE ?= %LOCALAPPDATA% MB_COLORS ?= -1 else MB_RM = rm -f MB_RMDIR = rm -rf MB_MKDIR = mkdir -p MB_COPY = cp 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_SPACE := $(subst ,, ) define mb_clean $(call mb_make_call,mb_make_echo_good,Cleaning build folder $(1)) $(MB_RMDIR) $(1) endef MB_DOC_FIRE_FUNCTION += $(call mb_make_call,mb_doc_function,mb_clean,"Removed the full folder.","