mirror of
https://git.yoctoproject.org/poky
synced 2026-05-09 05:29:32 +00:00
autotools: Fix interaction with bitbake -b
If you run bitbake -b on something using autotools with dependencies on m4 files, it currently fails as the TASKDEPDATA is incomplete for bitbake -b and this means the relevant macros aren't found. Work around this by adding *all* m4 files for the -b case (and show a warning). [YOCTO #8890] (From OE-Core rev: 60207e0cf3a5bce9123d3631a10a9540c72a9034) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -148,12 +148,18 @@ python autotools_copy_aclocals () {
|
|||||||
bb.utils.mkdirhier(aclocaldir)
|
bb.utils.mkdirhier(aclocaldir)
|
||||||
start = None
|
start = None
|
||||||
configuredeps = []
|
configuredeps = []
|
||||||
|
# Detect bitbake -b usage
|
||||||
|
# Everything but quilt-native would have dependencies
|
||||||
|
nodeps = (pn != "quilt-native")
|
||||||
|
|
||||||
for dep in taskdepdata:
|
for dep in taskdepdata:
|
||||||
data = taskdepdata[dep]
|
data = taskdepdata[dep]
|
||||||
if data[1] == "do_configure" and data[0] == pn:
|
if data[1] == "do_configure" and data[0] == pn:
|
||||||
start = dep
|
start = dep
|
||||||
|
if not nodeps and start:
|
||||||
break
|
break
|
||||||
|
if nodeps and data[0] != pn:
|
||||||
|
nodeps = False
|
||||||
if start is None:
|
if start is None:
|
||||||
bb.fatal("Couldn't find ourself in BB_TASKDEPDATA?")
|
bb.fatal("Couldn't find ourself in BB_TASKDEPDATA?")
|
||||||
|
|
||||||
@@ -188,6 +194,11 @@ python autotools_copy_aclocals () {
|
|||||||
#bb.warn(str(configuredeps2))
|
#bb.warn(str(configuredeps2))
|
||||||
|
|
||||||
cp = []
|
cp = []
|
||||||
|
if nodeps:
|
||||||
|
bb.warn("autotools: Unable to find task dependencies, -b being used? Pulling in all m4 files")
|
||||||
|
for l in [d.expand("${STAGING_DATADIR_NATIVE}/aclocal/"), d.expand("${STAGING_DATADIR}/aclocal/")]:
|
||||||
|
cp.extend(os.path.join(l, f) for f in os.listdir(l))
|
||||||
|
|
||||||
for c in configuredeps:
|
for c in configuredeps:
|
||||||
if c.endswith("-native"):
|
if c.endswith("-native"):
|
||||||
manifest = d.expand("${SSTATE_MANIFESTS}/manifest-${BUILD_ARCH}-%s.populate_sysroot" % c)
|
manifest = d.expand("${SSTATE_MANIFESTS}/manifest-${BUILD_ARCH}-%s.populate_sysroot" % c)
|
||||||
|
|||||||
Reference in New Issue
Block a user