diff --git a/src/Library/Library.code-workspace b/src/Library/Library.code-workspace index a76664f6..dc34b01d 100644 --- a/src/Library/Library.code-workspace +++ b/src/Library/Library.code-workspace @@ -31,7 +31,7 @@ "label": "make_all", "type": "shell", "windows": { - "command": "wsl make -f MakeAll.mk ${input:target} BUILD_PROFILE=${input:build cfg}", + "command": "wsl make -f MakeAll.mk ${input:target prefix}_${input:target} BUILD_PROFILE=${input:build cfg} CUSTOM_CONFIG=${input:config options}", }, "linux": { "command": "make -f MakeAll.mk ${input:target} BUILD_PROFILE=${input:build cfg}", @@ -64,6 +64,13 @@ "fieldSeparator": "|" } }, + { + "id": "target prefix", + "type": "pickString", + "options": ["jabyengine", "all_jabyengine"], + "default": "jabyengine", + "description": "To build JabyEngine or JabyEngine with all configs" + }, { "id": "target", "type": "pickString", diff --git a/src/Library/MakeAll.mk b/src/Library/MakeAll.mk index c2598f9c..71898e29 100644 --- a/src/Library/MakeAll.mk +++ b/src/Library/MakeAll.mk @@ -1,20 +1,26 @@ -define run_make +define make_one $(MAKE) $1 TV_FORMAT=PAL CUSTOM_CONFIG=$2 $(MAKE) $1 TV_FORMAT=NTSC CUSTOM_CONFIG=$2 endef -define do_target -$(call run_make,$1,) -$(foreach config,$2,$(call run_make,$1,$(config))) +define make_all +$(call make_one,$1,) +$(foreach config,$2,$(call make_one,$1,$(config))) endef config_files = $(shell cd ../../config && ls -d */) +jabyengine_%: + $(call make_one,$*,$(CUSTOM_CONFIG)) + +all_jabyengine_%: + $(call make_all,$*,$(config_files)) + all: - $(call do_target,all,$(config_files)) + $(call make_all,all,$(config_files)) clean: - $(call do_target,clean,$(config_files)) + $(call make_all,clean,$(config_files)) rebuild: - $(call do_target,rebuild,$(config_files)) \ No newline at end of file + $(call make_all,rebuild,$(config_files)) \ No newline at end of file