Unfortunately, a parallel build from clean can fail in the following manner:
xen.git$ make -j4 -C tools/firmware/xen-dir/
make: Entering directory '/local/xen.git/tools/firmware/xen-dir'
mkdir -p xen-root
make: *** No rule to make target 'xen-root/xen/arch/x86/configs/pvshim_defconfig', needed by 'xen-root/xen/.config'. Stop.
make: *** Waiting for unfinished jobs....
The rule for pvshim_defconfig needs to depend on the linkfarm, rather than
$(D)/xen/.config specifically.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
$(D): linkfarm.stamp
$(MAKE) -C $(D)/xen distclean
-$(D)/xen/.config: $(D) $(D)/xen/arch/x86/configs/pvshim_defconfig
+$(D)/xen/arch/x86/configs/pvshim_defconfig: $(D)
+
+$(D)/xen/.config: $(D)/xen/arch/x86/configs/pvshim_defconfig
$(MAKE) -C $(@D) KBUILD_DEFCONFIG=pvshim_defconfig XEN_CONFIG_EXPERT=y defconfig
xen-shim: $(D)/xen/.config