]> code.ossystems Code Review - openembedded-core.git/commitdiff
scripts/oe-debuginfod: script that fetches package manager directory
authorDorinda <dorindabassey@gmail.com>
Mon, 1 Mar 2021 14:42:56 +0000 (15:42 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 2 Mar 2021 20:35:08 +0000 (20:35 +0000)
Added a script that fetches the package manager directory and runs the elfutils-native debuginfod on DEPLOY_DIR
Added a check to ensure that PACKAGECONFIG options is set in local.conf

Signed-off-by: Dorinda Bassey <dorindabassey@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
scripts/oe-debuginfod [new file with mode: 0755]

diff --git a/scripts/oe-debuginfod b/scripts/oe-debuginfod
new file mode 100755 (executable)
index 0000000..967dd58
--- /dev/null
@@ -0,0 +1,31 @@
+#!/usr/bin/env python3
+#
+# SPDX-License-Identifier: MIT
+#
+
+import os
+import sys
+scripts_path = os.path.dirname(os.path.realpath(__file__))
+lib_path = scripts_path + "/lib"
+sys.path.insert(0, lib_path)
+import scriptpath
+scriptpath.add_bitbake_lib_path()
+
+import bb.tinfoil
+import subprocess
+
+if __name__ == "__main__":
+    with bb.tinfoil.Tinfoil() as tinfoil:
+        tinfoil.prepare(config_only=True)
+        package_classes_var = "DEPLOY_DIR_" + tinfoil.config_data.getVar("PACKAGE_CLASSES").split()[0].replace("package_", "").upper()
+        feed_dir = tinfoil.config_data.getVar(package_classes_var, expand=True)
+
+    try:
+        if package_classes_var == "DEPLOY_DIR_RPM":
+            subprocess.check_output(subprocess.run(['oe-run-native', 'elfutils-native', 'debuginfod', '--verbose', '-R', feed_dir]))
+        else:
+            subprocess.check_output(subprocess.run(['oe-run-native', 'elfutils-native', 'debuginfod', '--verbose', '-U', feed_dir]))
+    except subprocess.CalledProcessError:
+        print("\nTo use the debuginfod server Please ensure that this variable PACKAGECONFIG_pn-elfutils-native = \"debuginfod libdebuginfod\" is set in the local.conf")
+    except KeyboardInterrupt:
+            sys.exit(1)