fs/iso9660: add dependencies for make source
PATCH v2 1/1 fs/iso9660: add dependencies for make source
The "iso image" rootfs target is a special one, as it does not use the ROOTFS_TARGET infrastructure. The absence of ROOTFS_*_DEPENDENCIES variable makes "make source" to skip this target's dependencies (namely host-cdrkit and it's children) obstructing an offline build.
---
Changes v1 -> v2:
- Changed local target's dependencies to variable
- Changed dependencies order to alphabetical
fs/iso9660/iso9660.mk | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
fs/iso9660/iso9660.mk +3 -1
@@ -10,7 +10,9 @@ ISO9660_TARGET_DIR = $(BUILD_DIR)/iso9660 ISO9660_BOOT_MENU := $(call qstrip,$(BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU)) -$(BINARIES_DIR)/rootfs.iso9660: host-cdrkit host-fakeroot linux rootfs-cpio grub +ROOTFS_ISO9660_DEPENDENCIES = grub host-cdrkit host-fakeroot linux rootfs-cpio + +$(BINARIES_DIR)/rootfs.iso9660: $(ROOTFS_ISO9660_DEPENDENCIES) @$(call MESSAGE,"Generating root filesystem image rootfs.iso9660") mkdir -p $(ISO9660_TARGET_DIR) mkdir -p $(ISO9660_TARGET_DIR)/boot/grub
Signature · 1 line
1.7.10.4
Thomas Petazzoni
AppliedPATCH v2 1/1 fs/iso9660: add dependencies for make source
Dear Karoly Kasza,
Quoted 6 lines · Karoly Kasza
The "iso image" rootfs target is a special one, as it does not use the
ROOTFS_TARGETinfrastructure. The absence of ROOTFS_*_DEPENDENCIES variable makes "make source" to skip this target's dependencies (namely host-cdrkit and it's children) obstructing an offline build.Signed-off-by Karoly Kasza <[email protected]>
Thanks applied. Two notes:
* I've added a rootfs-iso9660-show-depends target, otherwise 'make graph-depends' was failing when iso9660 was selected.
* The solution you've used, to add the ROOTFS_ISO9660_DEPENDENCIES really only works because of the way the main Makefile gets the dependencies for host packages. But as we've discussed in a separate way, this mechanism is broken, and should be replaced by a mechanism that relies on the package infrastructure. And when that will be done, iso9660 will break again. We should probably at some point figure out a way of getting the iso9660 support properly integrated as a normal filesystem type.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com