瀏覽代碼

Clone chibios and ugfx if it's not already checked out. (#1651)

* Clone chibios and ugfx if it's not already checked out.

* update the submodule out of date message
skullydazed 7 年之前
父節點
當前提交
2b3803eb5e
共有 2 個文件被更改,包括 8 次插入2 次删除
  1. 7 0
      Makefile
  2. 1 2
      message.mk

+ 7 - 0
Makefile

@@ -514,6 +514,9 @@ $(SUBPROJECTS): %: %-allkm
 	cmp $(ROOT_DIR)/Makefile $(ROOT_DIR)/Makefile >/dev/null 2>&1; if [ $$? -gt 0 ]; then printf "$(MSG_NO_CMP)"; exit 1; fi;
 	cmp $(ROOT_DIR)/Makefile $(ROOT_DIR)/Makefile >/dev/null 2>&1; if [ $$? -gt 0 ]; then printf "$(MSG_NO_CMP)"; exit 1; fi;
 	# Check if the submodules are dirty, and display a warning if they are
 	# Check if the submodules are dirty, and display a warning if they are
 ifndef SKIP_GIT
 ifndef SKIP_GIT
+	if [ ! -e lib/chibios ]; then git submodule sync lib/chibios && git submodule update --init lib/chibios; fi
+	if [ ! -e lib/chibios-contrib ]; then git submodule sync lib/chibios-contrib && git submodule update --init lib/chibios-contrib; fi
+	if [ ! -e lib/ugfx ]; then git submodule sync lib/ugfx && git submodule update --init lib/ugfx; fi
 	git submodule status --recursive 2>/dev/null | \
 	git submodule status --recursive 2>/dev/null | \
 	while IFS= read -r x; do \
 	while IFS= read -r x; do \
 		case "$$x" in \
 		case "$$x" in \
@@ -551,6 +554,10 @@ test: test-all
 .PHONY: test-clean
 .PHONY: test-clean
 test-clean: test-all-clean
 test-clean: test-all-clean
 
 
+lib/%:
+	git submodule sync $?
+	git submodule update --init $?
+
 git-submodule:
 git-submodule:
 	git submodule sync --recursive
 	git submodule sync --recursive
 	git submodule update --init --recursive
 	git submodule update --init --recursive

+ 1 - 2
message.mk

@@ -56,8 +56,7 @@ MSG_CLEANING = Cleaning project:
 MSG_CREATING_LIBRARY = Creating library:
 MSG_CREATING_LIBRARY = Creating library:
 MSG_SUBMODULE_DIRTY = $(WARN_COLOR)WARNING:$(NO_COLOR)\n \
 MSG_SUBMODULE_DIRTY = $(WARN_COLOR)WARNING:$(NO_COLOR)\n \
 	Some git sub-modules are out of date or modified, please consider runnning:$(BOLD)\n\
 	Some git sub-modules are out of date or modified, please consider runnning:$(BOLD)\n\
-	git submodule sync --recursive\n\
-	git submodule update --init --recursive$(NO_COLOR)\n\n\
+        make git-submodule\n\
 	You can ignore this warning if you are not compiling any ChibiOS keyboards,\n\
 	You can ignore this warning if you are not compiling any ChibiOS keyboards,\n\
 	or if you have modified the ChibiOS libraries yourself. \n\n
 	or if you have modified the ChibiOS libraries yourself. \n\n
 MSG_NO_CMP = $(ERROR_COLOR)Error:$(NO_COLOR)$(BOLD) cmp command not found, please install diffutils\n$(NO_COLOR)
 MSG_NO_CMP = $(ERROR_COLOR)Error:$(NO_COLOR)$(BOLD) cmp command not found, please install diffutils\n$(NO_COLOR)