[oe-commits] Ross Burton : oeqa/runtime/multilib: add test for libc

git at git.openembedded.org git at git.openembedded.org
Sun Aug 30 11:48:26 UTC 2015


Module: openembedded-core.git
Branch: master
Commit: 51e9f90b3b61e34603bc02bf4cfcbd0243686798
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=51e9f90b3b61e34603bc02bf4cfcbd0243686798

Author: Ross Burton <ross.burton at intel.com>
Date:   Sat Aug 29 00:39:55 2015 +0100

oeqa/runtime/multilib: add test for libc

Add a basic test to verify that /lib/libc.so.6 and /lib32/libc.so.6 have the
right ELF class.

Signed-off-by: Ross Burton <ross.burton at intel.com>

---

 meta/lib/oeqa/runtime/multilib.py | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/runtime/multilib.py b/meta/lib/oeqa/runtime/multilib.py
index 1c1729b..e1bcc42 100644
--- a/meta/lib/oeqa/runtime/multilib.py
+++ b/meta/lib/oeqa/runtime/multilib.py
@@ -20,8 +20,25 @@ class MultilibTest(oeRuntimeTest):
         else:
             self.fail("Cannot parse readelf output\n" + s)
 
-    @testcase('279')
     @skipUnlessPassed('test_ssh')
+    def test_check_multilib_libc(self):
+        """
+        Check that a multilib image has both 32-bit and 64-bit libc in.
+        """
+
+        (status, output) = self.target.run("readelf -h /lib/libc.so.6")
+        self.assertEqual(status, 0, "Failed to readelf /lib/libc.so.6")
+        class32 = self.parse(output)
+
+        (status, output) = self.target.run("readelf -h /lib64/libc.so.6")
+        self.assertEqual(status, 0, "Failed to readelf /lib64/libc.so.6")
+        class64 = self.parse(output)
+
+        self.assertEqual(class32, "ELF32", msg="/lib/libc.so.6 isn't ELF32 (is %s)" % class32)
+        self.assertEqual(class64, "ELF64", msg="/lib64/libc.so.6 isn't ELF64 (is %s)" % class64)
+
+    @testcase('279')
+    @skipUnlessPassed('test_check_multilib_libc')
     def test_file_connman(self):
         self.assertTrue(oeRuntimeTest.hasPackage('lib32-connman-gnome'), msg="This test assumes lib32-connman-gnome is installed")
 



More information about the Openembedded-commits mailing list