diff mbox series

uninative: show errors if installing fails

Message ID 20250423172641.502356-1-ross.burton@arm.com
State New
Headers show
Series uninative: show errors if installing fails | expand

Commit Message

Ross Burton April 23, 2025, 5:26 p.m. UTC
We call the installer script but if it fails the user doesn't see the
reason, which makes resolving the problem hard.  Capture both stdout and
stderr as text, and display it to the user when it fails.

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 meta/classes-global/uninative.bbclass | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/meta/classes-global/uninative.bbclass b/meta/classes-global/uninative.bbclass
index d2297b53f55..75e0c19704d 100644
--- a/meta/classes-global/uninative.bbclass
+++ b/meta/classes-global/uninative.bbclass
@@ -109,7 +109,7 @@  ${UNINATIVE_STAGING_DIR}-uninative/relocate_sdk.py \
   ${UNINATIVE_LOADER} \
   ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/${bindir_native}/patchelf-uninative \
   ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux${base_libdir_native}/libc*.so*" % chksum)
-        subprocess.check_output(cmd, shell=True)
+        subprocess.check_output(cmd, shell=True, text=True, stderr=subprocess.STDOUT)
 
         with open(loaderchksum, "w") as f:
             f.write(chksum)
@@ -122,7 +122,9 @@  ${UNINATIVE_STAGING_DIR}-uninative/relocate_sdk.py \
         bb.warn("Disabling uninative as unable to fetch uninative tarball: %s" % str(exc))
         bb.warn("To build your own uninative loader, please bitbake uninative-tarball and set UNINATIVE_TARBALL appropriately.")
     except subprocess.CalledProcessError as exc:
-        bb.warn("Disabling uninative as unable to install uninative tarball: %s" % str(exc))
+        bb.warn("Disabling uninative as unable to install uninative tarball:")
+        bb.warn(str(exc))
+        bb.warn(exc.stdout)
         bb.warn("To build your own uninative loader, please bitbake uninative-tarball and set UNINATIVE_TARBALL appropriately.")
     finally:
         os.chdir(olddir)