aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/autotools.bbclass
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2014-10-24 15:15:50 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-10-30 13:03:54 +0000
commitc2f761e2010857e2a2aad1dccf06ec39d15c1c86 (patch)
treefd95f13a55d721ac9a20193c44ade3a76945f99d /meta/classes/autotools.bbclass
parent3822f8a7b33da56ecd9144b4bcae50734fb1af81 (diff)
downloadopenembedded-core-contrib-c2f761e2010857e2a2aad1dccf06ec39d15c1c86.tar.gz
autotools: Use make clean for builds not supporting B != S
If the build doesn't support B != S, we can try running "make clean" instead to try and clean up previous objects if the hash for the task has changed. This tries to ensure that when variables like ${baselib} change, the changes are correctly accounted for. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/autotools.bbclass')
-rw-r--r--meta/classes/autotools.bbclass6
1 files changed, 5 insertions, 1 deletions
diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass
index 6b99bddd5d..bed8a835d4 100644
--- a/meta/classes/autotools.bbclass
+++ b/meta/classes/autotools.bbclass
@@ -109,7 +109,11 @@ autotools_preconfigure() {
else
# At least remove the .la files since automake won't automatically
# regenerate them even if CFLAGS/LDFLAGS are different
- cd ${S}; find ${S} -name \*.la -delete
+ cd ${S}
+ if [ -e Makefile -o -e makefile -o -e GNUmakefile ]; then
+ ${MAKE} clean
+ fi
+ find ${S} -name \*.la -delete
fi
fi
fi