]> code.ossystems Code Review - openembedded-core.git/commitdiff
pseudo: Add uninative configuration sanity check
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 10 Jul 2021 22:01:30 +0000 (23:01 +0100)
committerAnuj Mittal <anuj.mittal@intel.com>
Sat, 31 Jul 2021 06:32:10 +0000 (14:32 +0800)
When building pseudo-native to work with uninative, we need to ensure the
configuration will work on all supported target systems. This means
"new clone" semantics, xattr and statvfs support in particular. It is
extremely unlikely we'd run on a system without any of these but add
a check just to be sure when uninative is enabled.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ea5b208ee25752bea6037cd0f3b28da7d2c9905e)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
meta/recipes-devtools/pseudo/pseudo.inc

index 65d6e5068db7a40fedba7747faef210dab9d830c..e6512bc6e6846881e5c7dc7365bcfbe7671a8bf8 100644 (file)
@@ -112,6 +112,19 @@ do_compile_prepend_class-nativesdk () {
        fi
 }
 
+do_compile_append_class-native () {
+       if [ '${@bb.data.inherits_class('uninative', d)}' = 'True' ]; then
+               for i in PSEUDO_PORT_UNIX_SYNCFS PSEUDO_PORT_UIDS_GENERIC PSEUDO_PORT_LINUX_NEWCLONE PSEUDO_PORT_LINUX_XATTR PSEUDO_PORT_LINUX_STATVFS; do
+                       grep $i.1 ${S}/pseudo_ports.h
+                       if [ $? != 0 ]; then
+                               echo "$i not enabled in pseudo which is incompatible with uninative"
+                               exit 1
+                       fi
+               done
+       fi
+}
+
+
 do_install () {
        oe_runmake 'DESTDIR=${D}' ${MAKEOPTS} 'LIB=lib/pseudo/lib$(MARK64)' install
 }