This class adds a postfunc to do_install to remove all .la files installed by
libtool, so that they are absent from both the sysroots and target packages.

If a recipe needs these files to be installed then it can be overridden by
setting REMOVE_LIBTOOL_LA.

Note that this class isn't enabled by default.

[ YOCTO #2380 ]

Signed-off-by: Ross Burton <ross.bur...@intel.com>
Signed-off-by: Richard Purdie <richard.pur...@linuxfoundation.org>
---
 meta/classes/remove-libtool.bbclass | 11 +++++++++++
 1 file changed, 11 insertions(+)
 create mode 100644 meta/classes/remove-libtool.bbclass

diff --git a/meta/classes/remove-libtool.bbclass 
b/meta/classes/remove-libtool.bbclass
new file mode 100644
index 0000000..3fd0cd5
--- /dev/null
+++ b/meta/classes/remove-libtool.bbclass
@@ -0,0 +1,11 @@
+# This class removes libtool .la files after do_install
+
+REMOVE_LIBTOOL_LA ?= "1"
+
+remove_libtool_la() {
+       if [ "${REMOVE_LIBTOOL_LA}" != "0" ]; then
+               find "${D}" -ignore_readdir_race -name "*.la" -delete
+       fi
+}
+
+do_install[postfuncs] += "remove_libtool_la"
-- 
2.6.4

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to