diff --git a/Makefile b/Makefile index 48cf35248f..65b33105c4 100644 --- a/Makefile +++ b/Makefile @@ -19,8 +19,13 @@ endif # Otherwise the [OK], [ERROR] and [WARN] messages won't be displayed correctly override SILENT := false +ifeq ($(shell git rev-parse --is-inside-work-tree 2>/dev/null),) + export SKIP_GIT := yes + export NOT_REPO := yes +endif + ifdef SKIP_VERSION - SKIP_GIT := yes + export SKIP_GIT := yes endif ifndef SUB_IS_SILENT @@ -394,8 +399,11 @@ endef cmp $(ROOT_DIR)/Makefile $(ROOT_DIR)/Makefile >/dev/null 2>&1; if [ $$? -gt 0 ]; then printf "$(MSG_NO_CMP)"; exit 1; fi; # Ensure that $(QMK_BIN) works. if ! $(QMK_BIN) hello 1> /dev/null 2>&1; then printf "$(MSG_PYTHON_MISSING)"; exit 1; fi - # Check if the submodules are dirty, and display a warning if they are +ifdef NOT_REPO + printf "$(MSG_NOT_REPO)" +endif ifndef SKIP_GIT + # Check if the submodules are dirty, and display a warning if they are if [ ! -e lib/chibios ]; then git submodule sync lib/chibios && git submodule update --depth 50 --init lib/chibios; fi if [ ! -e lib/chibios-contrib ]; then git submodule sync lib/chibios-contrib && git submodule update --depth 50 --init lib/chibios-contrib; fi if [ ! -e lib/lufa ]; then git submodule sync lib/lufa && git submodule update --depth 50 --init lib/lufa; fi diff --git a/builddefs/message.mk b/builddefs/message.mk index 2bd01669f8..34a5e7da91 100644 --- a/builddefs/message.mk +++ b/builddefs/message.mk @@ -64,6 +64,8 @@ MSG_ASSEMBLING = Assembling: MSG_CLEANING = Cleaning project: MSG_CREATING_LIBRARY = Creating library: MSG_GENERATING = Generating: +MSG_NOT_REPO = $(WARN_COLOR)WARNING:$(NO_COLOR) Target folder is not a git repo, you probably downloaded a zip file instead of cloning.\n\ +Please consider following $(BOLD)https://docs.qmk.fm/\#/newbs_getting_started$(NO_COLOR).\n\n MSG_SUBMODULE_DIRTY = $(WARN_COLOR)WARNING:$(NO_COLOR) Some git submodules are out of date or modified.\n\ Please consider running $(BOLD)qmk git-submodule$(NO_COLOR).\n\n MSG_NO_CMP = $(ERROR_COLOR)Error:$(NO_COLOR)$(BOLD) cmp command not found, please install diffutils\n$(NO_COLOR)