Makefile: ensure system is built even if no filesystem image is selected
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fri, 28 Feb 2014 20:05:27 +0000 (21:05 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 1 Mar 2014 11:53:28 +0000 (12:53 +0100)
commitfbb3b862025dc29e8889a7958a6c918873192273
tree3f9ebd2192062f0fe1b65bd7029ff1903e45879c
parentd4252841355f2bc81edde6ff0fbf7b440a3e1fd1
Makefile: ensure system is built even if no filesystem image is selected

The parallel build patch series has significantly reworked how some of
the core dependencies are expressed. We now have the following
dependencies:

 all: world
 world: target-post-image
 target-post-image: $(TARGETS_ROOTFS)

with TARGETS_ROOTFS containing the list of root filesystem image
targets, each having the following dependencies:

 $$(BINARIES_DIR)/rootfs.$(1): target-finalize $$(ROOTFS_$(2)_DEPENDENCIES)

The bottom line is that the "target-finalize" target, which in turns
ensures that all packages are built, is only triggered if at least one
filesystem image is enabled.

As we want to support builds with no filesystem image selected, this
is not acceptable. As a fix, we change the target-post-image target
to:

 target-post-image: $(TARGETS_ROOTFS) target-finalize

This way, target-finalize will be triggered even if TARGETS_ROOTFS is
empty. This is still correct for parallel build, as the individual
root filesystem image targets still depend on target-finalize.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Makefile