From c6444a4a7267406c52516cd46ab9bede43ea48c9 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Sun, 23 Nov 2025 20:00:50 +0100 Subject: [PATCH] projects-dir-minimal.mk: Improve on link-makefile.done - Make PROJECTS_MAKEFILE_NAME point to first in $(MAKEFILE_LIST) - Allow to include projects-dir-minimal.mk in hand-written Makefile without fear that its going to be overwritten with a link Signed-off-by: Jan Lindemann --- make/projects-dir-minimal.mk | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/make/projects-dir-minimal.mk b/make/projects-dir-minimal.mk index e93c515f..d4f777d5 100644 --- a/make/projects-dir-minimal.mk +++ b/make/projects-dir-minimal.mk @@ -13,7 +13,7 @@ # take you there semi-automatically. # -PROJECTS_MAKEFILE_NAME := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) +PROJECTS_MAKEFILE_NAME := $(firstword $(MAKEFILE_LIST)) -include local.mk @@ -69,11 +69,13 @@ ifneq ($(findstring proactiveAuth,$(GIT_GLOBAL_OPTS)),) endif make $(MAKECMDGOALS) +RANDOM_STRING := some-random-string-to-id-this-makefile all: link-makefile.done link-makefile.done: | $(JWBDIR) - [ -L $(PROJECTS_MAKEFILE_NAME) ] || \ - ln -sf `git -C $(JWBDIR) ls-files | sed '/\.mk$$/ !d; s|^|$(JWBDIR)/|' | xargs grep -l some-random-string-to-id-this-makefile` \ - $(PROJECTS_MAKEFILE_NAME) + if [ ! -L $(PROJECTS_MAKEFILE_NAME) ] && grep -q $(RANDOM_STRING) $(PROJECTS_MAKEFILE_NAME); then \ + ln -sf `git -C $(JWBDIR) ls-files | sed '/\.mk$$/ !d; s|^|$(JWBDIR)/|' | xargs grep -l $(RANDOM_STRING)` \ + $(PROJECTS_MAKEFILE_NAME) ;\ + fi touch $@ clean: clean.link-makefile clean.link-makefile: