Commit dfa7cca5f3b4f494aae785891ab4a42e66db77ef

Werner Lemberg 2021-02-16T14:29:45

* builds/toplevel.mk: Avoid side effects of `shell`. We use a dummy variable to catch its output. Otherwise the `make` program is going to interpret the return value of `shell`; this can cause obscure warning or error messages or even be harmful.

diff --git a/ChangeLog b/ChangeLog
index 2c228ff..a191af7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2021-02-16  Werner Lemberg  <wl@gnu.org>
 
+	* builds/toplevel.mk: Avoid side effects of `shell`.
+
+	We use a dummy variable to catch its output.  Otherwise the `make`
+	program is going to interpret the return value of `shell`; this can
+	cause obscure warning or error messages or even be harmful.
+
+2021-02-16  Werner Lemberg  <wl@gnu.org>
+
 	Move 'dlg' submodule to `subprojects` directory.
 
 	This is for future changes with Meson, which doesn't allow a
diff --git a/builds/toplevel.mk b/builds/toplevel.mk
index 08170bb..e9cb62d 100644
--- a/builds/toplevel.mk
+++ b/builds/toplevel.mk
@@ -118,17 +118,17 @@ ifdef check_platform
   ifeq ($(wildcard src/dlg/dlg.*),)
     ifeq ($(wildcard subprojects/dlg/*),)
       $(info Checking out submodule in `subprojects/dlg')
-      $(shell git submodule init)
-      $(shell git submodule update)
+      dummy := $(shell git submodule init)
+      dummy := $(shell git submodule update)
     endif
 
     $(info Copying files from `subprojects/dlg' to `src/dlg' and `include/dlg')
-    $(shell mkdir $(subst /,$(SEP),include/dlg) $(NO_OUTPUT))
-    $(shell $(COPY) \
+    dummy := $(shell mkdir $(subst /,$(SEP),include/dlg) $(NO_OUTPUT))
+    dummy := $(shell $(COPY) \
       $(subst /,$(SEP),subprojects/dlg/include/dlg/output.h include/dlg))
-    $(shell $(COPY) \
+    dummy := $(shell $(COPY) \
       $(subst /,$(SEP),subprojects/dlg/include/dlg/dlg.h include/dlg))
-    $(shell $(COPY) \
+    dummy := $(shell $(COPY) \
       $(subst /,$(SEP),subprojects/dlg/src/dlg/dlg.c src/dlg))
   endif