diff mbox series

[meta-oe,109/109] libstemmer: fix buildpaths QA warning in libstemmer-dbg package

Message ID 20260815025044.437694-10-khem.raj@oss.qualcomm.com
State New
Headers show
Series [meta-python] python3-pystemd: add python3-wheel-native to DEPENDS | expand

Commit Message

Khem Raj Aug. 15, 2026, 2:50 a.m. UTC
GNUmakefile hardcodes its own CFLAGS= assignment (patched by
0001-Build-so-lib.patch to add -fPIC for the shared-lib build). As a
plain makefile variable, that assignment overrides the CFLAGS bitbake
exports into the build environment -- including the -ffile-prefix-map
flags from DEBUG_PREFIX_MAP. Without those, -g debug info in the
compiled snowball/stemwords/libstemmer.so binaries embeds the absolute
build-tree path, tripping the buildpaths QA check on the -dbg package:

  ERROR: libstemmer-3.1.1-r0 do_package_qa: QA Issue: File
  /usr/bin/.debug/snowball in package libstemmer-dbg contains
  reference to TMPDIR [buildpaths]

Pass CFLAGS via EXTRA_OEMAKE instead, which oe_runmake places on the
make command line and therefore does take precedence over the
makefile's own CFLAGS= assignment.

Verified via cleansstate rebuild: log.do_package_qa no longer contains
any buildpaths warnings, and `strings` on the rebuilt snowball debug
binary no longer contains any build/tmp/work host paths.

AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
---
 meta-oe/recipes-support/libstemmer/libstemmer_3.1.1.bb | 9 +++++++++
 1 file changed, 9 insertions(+)
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/libstemmer/libstemmer_3.1.1.bb b/meta-oe/recipes-support/libstemmer/libstemmer_3.1.1.bb
index 784b5b402d..0e74366268 100644
--- a/meta-oe/recipes-support/libstemmer/libstemmer_3.1.1.bb
+++ b/meta-oe/recipes-support/libstemmer/libstemmer_3.1.1.bb
@@ -12,6 +12,15 @@  SRCREV = "cd195b51e948a902a4312f023f4a14392516a543"
 
 LIBVER = "0.0.0"
 
+# GNUmakefile hardcodes its own CFLAGS= assignment (patched to add -fPIC for
+# the shared lib build), which as a plain makefile variable overrides the
+# CFLAGS bitbake exports in the environment -- including the
+# -ffile-prefix-map flags from DEBUG_PREFIX_MAP. Without those, -g debug
+# info embeds the absolute build-tree path, tripping the buildpaths QA
+# check. Pass CFLAGS on the make command line instead, which does take
+# precedence over the makefile's own assignment.
+EXTRA_OEMAKE += "'CFLAGS=${CFLAGS} -fPIC'"
+
 inherit lib_package
 
 do_compile:prepend:class-target() {