]> code.ossystems Code Review - openembedded-core.git/commitdiff
baremetal-image: Fix post process command rootfs_update_timestamp
authorAlejandro Hernandez Samaniego <alejandro@enedino.org>
Wed, 19 May 2021 15:59:53 +0000 (09:59 -0600)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 21 May 2021 14:15:15 +0000 (15:15 +0100)
When running:

execute_pre_post_process(d, d.getVar(ROOTFS_POSTPROCESS_COMMAND))

rootfs_update_timestamp is run, which assumes that rootfs/${sysconfdir}
is already created (usually done through the do_rootfs task on linux).

This causes the build to fail if ${sysconfdir} does not exist.

This may be overlooked if debug-tweaks is enabled since some other
commands are added, one of which creates the required path
(see postinst_enable_logging).

See [1] for more info:

[1] https://github.com/aehs29/meta-freertos/issues/4

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/baremetal-image.bbclass

index 319b61c7cd4ce93ebaa488b38fdcbf8761ab4dea..8708a54301c417d877cf54bed6282b194aa56959 100644 (file)
@@ -50,6 +50,10 @@ python do_rootfs(){
         if os.path.lexists(manifest_link):
             os.remove(manifest_link)
         os.symlink(os.path.basename(manifest_name), manifest_link)
+    # A lot of postprocess commands assume the existence of rootfs/etc
+    sysconfdir = d.getVar("IMAGE_ROOTFS") + d.getVar('sysconfdir')
+    bb.utils.mkdirhier(sysconfdir)
+
     execute_pre_post_process(d, d.getVar('ROOTFS_POSTPROCESS_COMMAND'))
 }