Until recently, target install used to recurse into target directories
in its recipe: it ran make install in a for-loop. Since target
install depends on target all, this trivially ensured we run the
sub-make install only after completing target all.
Commit 1338a4b "Makefile: Reuse all's recursion machinery for clean
and install" moved the target recursion to dependencies. That's good
(the commit message explains why), but I forgot to add dependencies to
ensure make runs the sub-make install only after completing target
all. Do that now.
Fixes: 1338a4b72659ce08eacb9de0205fe16202a22d9c
Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reported-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
Makefile | 1 +
1 file changed, 1 insertion(+)
diff --git a/Makefile b/Makefile
index 1fcbaed62c..09b77e8a7b 100644
--- a/Makefile
+++ b/Makefile
@@ -522,6 +522,7 @@ $(ROM_DIRS_RULES):
recurse-all: $(addsuffix /all, $(TARGET_DIRS) $(ROM_DIRS))
recurse-clean: $(addsuffix /clean, $(TARGET_DIRS) $(ROM_DIRS))
recurse-install: $(addsuffix /install, $(TARGET_DIRS))
+$(addsuffix /install, $(TARGET_DIRS)): all
$(BUILD_DIR)/version.o: $(SRC_PATH)/version.rc config-host.h
$(call quiet-command,$(WINDRES) -I$(BUILD_DIR) -o $@ $<,"RC","version.o")
--
2.21.0
On 12/07/2019 06:59, Markus Armbruster wrote: > Until recently, target install used to recurse into target directories > in its recipe: it ran make install in a for-loop. Since target > install depends on target all, this trivially ensured we run the > sub-make install only after completing target all. > > Commit 1338a4b "Makefile: Reuse all's recursion machinery for clean > and install" moved the target recursion to dependencies. That's good > (the commit message explains why), but I forgot to add dependencies to > ensure make runs the sub-make install only after completing target > all. Do that now. > > Fixes: 1338a4b72659ce08eacb9de0205fe16202a22d9c > Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> > Reported-by: Guenter Roeck <linux@roeck-us.net> > Tested-by: Guenter Roeck <linux@roeck-us.net> > Signed-off-by: Markus Armbruster <armbru@redhat.com> > --- > Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Makefile b/Makefile > index 1fcbaed62c..09b77e8a7b 100644 > --- a/Makefile > +++ b/Makefile > @@ -522,6 +522,7 @@ $(ROM_DIRS_RULES): > recurse-all: $(addsuffix /all, $(TARGET_DIRS) $(ROM_DIRS)) > recurse-clean: $(addsuffix /clean, $(TARGET_DIRS) $(ROM_DIRS)) > recurse-install: $(addsuffix /install, $(TARGET_DIRS)) > +$(addsuffix /install, $(TARGET_DIRS)): all > > $(BUILD_DIR)/version.o: $(SRC_PATH)/version.rc config-host.h > $(call quiet-command,$(WINDRES) -I$(BUILD_DIR) -o $@ $<,"RC","version.o") > I've just tried this on my faster workstation and it now works fine with all of -j2, -j4 and -j8. Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> ATB, Mark.
On Fri, Jul 12, 2019 at 07:59:35AM +0200, Markus Armbruster wrote: > Until recently, target install used to recurse into target directories > in its recipe: it ran make install in a for-loop. Since target > install depends on target all, this trivially ensured we run the > sub-make install only after completing target all. > > Commit 1338a4b "Makefile: Reuse all's recursion machinery for clean > and install" moved the target recursion to dependencies. That's good > (the commit message explains why), but I forgot to add dependencies to > ensure make runs the sub-make install only after completing target > all. Do that now. > > Fixes: 1338a4b72659ce08eacb9de0205fe16202a22d9c > Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> > Reported-by: Guenter Roeck <linux@roeck-us.net> > Tested-by: Guenter Roeck <linux@roeck-us.net> > Signed-off-by: Markus Armbruster <armbru@redhat.com> > --- > Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Makefile b/Makefile > index 1fcbaed62c..09b77e8a7b 100644 > --- a/Makefile > +++ b/Makefile > @@ -522,6 +522,7 @@ $(ROM_DIRS_RULES): > recurse-all: $(addsuffix /all, $(TARGET_DIRS) $(ROM_DIRS)) > recurse-clean: $(addsuffix /clean, $(TARGET_DIRS) $(ROM_DIRS)) > recurse-install: $(addsuffix /install, $(TARGET_DIRS)) > +$(addsuffix /install, $(TARGET_DIRS)): all > > $(BUILD_DIR)/version.o: $(SRC_PATH)/version.rc config-host.h > $(call quiet-command,$(WINDRES) -I$(BUILD_DIR) -o $@ $<,"RC","version.o") Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
On Fri, Jul 12, 2019 at 07:59:35AM +0200, Markus Armbruster wrote: > Until recently, target install used to recurse into target directories > in its recipe: it ran make install in a for-loop. Since target > install depends on target all, this trivially ensured we run the > sub-make install only after completing target all. > > Commit 1338a4b "Makefile: Reuse all's recursion machinery for clean > and install" moved the target recursion to dependencies. That's good > (the commit message explains why), but I forgot to add dependencies to > ensure make runs the sub-make install only after completing target > all. Do that now. > > Fixes: 1338a4b72659ce08eacb9de0205fe16202a22d9c > Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> > Reported-by: Guenter Roeck <linux@roeck-us.net> > Tested-by: Guenter Roeck <linux@roeck-us.net> > Signed-off-by: Markus Armbruster <armbru@redhat.com> > --- > Makefile | 1 + > 1 file changed, 1 insertion(+) Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
© 2016 - 2024 Red Hat, Inc.