mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-05 05:04:44 +02:00

Storing the data files under $HOME can be unreliable if debuginfod is used for several projects, especially if $HOME is shared between machines. We provide an option to save files under the project directory. The default behavior is unchanged. (From OE-Core rev: e1e0cf82f559077e2a51447baf137086202c0c4a) Signed-off-by: Joe Slater <joe.slater@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
44 lines
1.4 KiB
Python
Executable File
44 lines
1.4 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
#
|
|
# Copyright OpenEmbedded Contributors
|
|
#
|
|
# 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
|
|
import argparse
|
|
|
|
if __name__ == "__main__":
|
|
p = argparse.ArgumentParser()
|
|
p.add_argument("-d", action='store_true', \
|
|
help="store debuginfod files in project sub-directory")
|
|
|
|
args = p.parse_args()
|
|
|
|
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)
|
|
|
|
opts = [ '--verbose', '-R', '-U', feed_dir ]
|
|
|
|
if args.d:
|
|
fdir = os.path.join(os.getcwd(), 'oedid-files')
|
|
os.makedirs(fdir, exist_ok=True)
|
|
opts += [ '-d', os.path.join(fdir, 'did.sqlite') ]
|
|
|
|
subprocess.call(['bitbake', '-c', 'addto_recipe_sysroot', 'elfutils-native'])
|
|
|
|
subprocess.call(['oe-run-native', 'elfutils-native', 'debuginfod'] + opts)
|
|
# we should not get here
|
|
print("\nTo use the debuginfod server please ensure that this variable PACKAGECONFIG:pn-elfutils-native = \"debuginfod libdebuginfod\" is set in the local.conf")
|