[prev in list] [next in list] [prev in thread] [next in thread]
List: openembedded-core
Subject: [OE-core] [PATCH 2/2] packages.bbclass: Break out the debug info styles to bitbake variables
From: "Peter Kjellerstedt" <peter.kjellerstedt () axis ! com>
Date: 2022-01-31 21:39:54
Message-ID: 20220131213954.29887-2-pkj () axis ! com
[Download RAW message or body]
Break out the hardcoded values for the various debug info styles from
split_and_strip_files() into bitbake variables. This allows the debug
info styles to be adopted, and also allows new styles to be added
(within the limits of the available variables).
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
---
meta/classes/package.bbclass | 95 ++++++++++++++++++++++--------------
1 file changed, 58 insertions(+), 37 deletions(-)
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 4927fb99ff..a5358d5851 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -1065,6 +1065,51 @@ python fixup_perms () {
fix_perms(each_file, fs_perms_table[dir].fmode, \
fs_perms_table[dir].fuid, fs_perms_table[dir].fgid, dir) }
+# Debug info
+PACKAGE_DEBUG_APPEND = "${@d.getVarFlag('PACKAGE_DEBUG_APPEND', \
d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" +PACKAGE_DEBUG_STATICAPPEND = \
"${@d.getVarFlag('PACKAGE_DEBUG_STATICAPPEND', \
d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" +PACKAGE_DEBUG_DIR = \
"${@d.getVarFlag('PACKAGE_DEBUG_DIR', d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" \
+PACKAGE_DEBUG_STATICDIR = "${@d.getVarFlag('PACKAGE_DEBUG_STATICDIR', \
d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" +PACKAGE_DEBUG_LIBDIR = \
"${@d.getVarFlag('PACKAGE_DEBUG_LIBDIR', d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" \
+PACKAGE_DEBUG_STATICLIBDIR = "${@d.getVarFlag('PACKAGE_DEBUG_STATICLIBDIR', \
d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" +PACKAGE_DEBUG_SRCDIR = \
"${@d.getVarFlag('PACKAGE_DEBUG_SRCDIR', d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))}" +
+# Original OE-core, a.k.a. ".debug", style debug info
+PACKAGE_DEBUG_APPEND[.debug] = ""
+PACKAGE_DEBUG_STATICAPPEND[.debug] = ""
+PACKAGE_DEBUG_DIR[.debug] = "/.debug"
+PACKAGE_DEBUG_STATICDIR[.debug] = "/.debug-static"
+PACKAGE_DEBUG_LIBDIR[.debug] = ""
+PACKAGE_DEBUG_STATICLIBDIR[.debug] = ""
+PACKAGE_DEBUG_SRCDIR[.debug] = "/usr/src/debug"
+
+# Single debug-file-directory style debug info
+PACKAGE_DEBUG_APPEND[debug-file-directory] = ".debug"
+PACKAGE_DEBUG_STATICAPPEND[debug-file-directory] = ""
+PACKAGE_DEBUG_DIR[debug-file-directory] = ""
+PACKAGE_DEBUG_STATICDIR[debug-file-directory] = ""
+PACKAGE_DEBUG_LIBDIR[debug-file-directory] = "/usr/lib/debug"
+PACKAGE_DEBUG_STATICLIBDIR[debug-file-directory] = "/usr/lib/debug-static"
+PACKAGE_DEBUG_SRCDIR[debug-file-directory] = "/usr/src/debug"
+
+# Debug info without sources in /usr/src/debug
+PACKAGE_DEBUG_APPEND[debug-without-src] = ""
+PACKAGE_DEBUG_STATICAPPEND[debug-without-src] = ""
+PACKAGE_DEBUG_DIR[debug-without-src] = "/.debug"
+PACKAGE_DEBUG_STATICDIR[debug-without-src] = "/.debug-static"
+PACKAGE_DEBUG_LIBDIR[debug-without-src] = ""
+PACKAGE_DEBUG_STATICLIBDIR[debug-without-src] = ""
+PACKAGE_DEBUG_SRCDIR[debug-without-src] = ""
+
+# Debug info with separate -src packages
+PACKAGE_DEBUG_APPEND[debug-with-srcpkg] = ""
+PACKAGE_DEBUG_STATICAPPEND[debug-with-srcpkg] = ""
+PACKAGE_DEBUG_DIR[debug-with-srcpkg] = "/.debug"
+PACKAGE_DEBUG_STATICDIR[debug-with-srcpkg] = "/.debug-static"
+PACKAGE_DEBUG_LIBDIR[debug-with-srcpkg] = ""
+PACKAGE_DEBUG_STATICLIBDIR[debug-with-srcpkg] = ""
+PACKAGE_DEBUG_SRCDIR[debug-with-srcpkg] = "/usr/src/debug"
+
python split_and_strip_files () {
import stat, errno
import subprocess
@@ -1076,42 +1121,18 @@ python split_and_strip_files () {
oldcwd = os.getcwd()
os.chdir(dvar)
- # We default to '.debug' style
- if d.getVar('PACKAGE_DEBUG_SPLIT_STYLE') == 'debug-file-directory':
- # Single debug-file-directory style debug info
- debugappend = ".debug"
- debugstaticappend = ""
- debugdir = ""
- debugstaticdir = ""
- debuglibdir = "/usr/lib/debug"
- debugstaticlibdir = "/usr/lib/debug-static"
- debugsrcdir = "/usr/src/debug"
- elif d.getVar('PACKAGE_DEBUG_SPLIT_STYLE') == 'debug-without-src':
- # Original OE-core, a.k.a. ".debug", style debug info, but without sources \
in /usr/src/debug
- debugappend = ""
- debugstaticappend = ""
- debugdir = "/.debug"
- debugstaticdir = "/.debug-static"
- debuglibdir = ""
- debugstaticlibdir = ""
- debugsrcdir = ""
- elif d.getVar('PACKAGE_DEBUG_SPLIT_STYLE') == 'debug-with-srcpkg':
- debugappend = ""
- debugstaticappend = ""
- debugdir = "/.debug"
- debugstaticdir = "/.debug-static"
- debuglibdir = ""
- debugstaticlibdir = ""
- debugsrcdir = "/usr/src/debug"
- else:
- # Original OE-core, a.k.a. ".debug", style debug info
- debugappend = ""
- debugstaticappend = ""
- debugdir = "/.debug"
- debugstaticdir = "/.debug-static"
- debuglibdir = ""
- debugstaticlibdir = ""
- debugsrcdir = "/usr/src/debug"
+ # Sanity test that PACKAGE_DEBUG_SPLIT_STYLE has a valid value.
+ if d.getVarFlag('PACKAGE_DEBUG_APPEND', d.getVar('PACKAGE_DEBUG_SPLIT_STYLE')) \
is None: + bb.fatal("Unknown PACKAGE_DEBUG_SPLIT_STYLE specified: %s" %
+ d.getVar('PACKAGE_DEBUG_SPLIT_STYLE'))
+
+ debugappend = d.getVar('PACKAGE_DEBUG_APPEND')
+ debugstaticappend = d.getVar('PACKAGE_DEBUG_STATICAPPEND')
+ debugdir = d.getVar('PACKAGE_DEBUG_DIR')
+ debugstaticdir = d.getVar('PACKAGE_DEBUG_STATICDIR')
+ debuglibdir = d.getVar('PACKAGE_DEBUG_LIBDIR')
+ debugstaticlibdir = d.getVar('PACKAGE_DEBUG_STATICLIBDIR')
+ debugsrcdir = d.getVar('PACKAGE_DEBUG_SRCDIR')
#
# First lets figure out all of the files we may have to process ... do this only \
once! @@ -1338,7 +1359,7 @@ python populate_packages () {
autodebug = not (d.getVar("NOAUTOPACKAGEDEBUG") or False)
- split_source_package = (d.getVar('PACKAGE_DEBUG_SPLIT_STYLE') == \
'debug-with-srcpkg') + split_source_package = \
(d.getVar('PACKAGE_DEBUG_SPLIT_STYLE').endswith('-with-srcpkg'))
# If debug-with-srcpkg mode is enabled then add the source package if it
# doesn't exist and add the source file contents to the source package.
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#161139): https://lists.openembedded.org/g/openembedded-core/message/161139
Mute This Topic: https://lists.openembedded.org/mt/88819087/4454766
Group Owner: openembedded-core+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [openembedded-core@marc.info]
-=-=-=-=-=-=-=-=-=-=-=-
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic