When running do_savedefconfig with a KCONFIG_CONFIG_ROOTDIR other than
B, this task runs oe_runmake in a directory different from the other
config-related tasks.
For example, in U-Boot with the new configuration flow from wrynose and
configs defined using the UBOOT_CONFIG_* variables, the project sources
and configs will be located in a subdirectory of ${B}. This will result
in the following error when running do_savedefconfig:
make: *** No rule to make target 'savedefconfig'. Stop.
Fix the do_savedefconfig task so it runs in KCONFIG_CONFIG_ROOTDIR.
Signed-off-by: Andreas Mützel <andreas.muetzel@emlix.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
addtask showconfig after do_configure
do_savedefconfig() {
- bbplain "Saving defconfig to:\n${B}/defconfig"
- oe_runmake -C ${B} savedefconfig
+ bbplain "Saving defconfig to:\n${KCONFIG_CONFIG_ROOTDIR}/defconfig"
+ oe_runmake -C ${KCONFIG_CONFIG_ROOTDIR} savedefconfig
}
do_savedefconfig[nostamp] = "1"
addtask savedefconfig after do_configure