There is code to remove the prefix CMAKE_SOURCE_DIR from __FILENAME__ paths used for logging with LOGE() in the code. We need to make this match the value we use in the debug source remapping from CFLAGS We export the right path to use in the recipe with: EXTRA_OECMAKE = "-DCMAKE_DEBUG_SRCDIR=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/" and we then patch this into the code instead of the broken use of CMAKE_SOURCE_DIR since __FILENAME__ will match our path prefix changes. This also breaks reproducibility since the path length of the build directory will currently change the output! Upstream-Status: Pending [needs to be discussed upstream] Signed-off-by: Richard Purdie Index: git/bldsys/cmake/global_options.cmake =================================================================== --- git.orig/bldsys/cmake/global_options.cmake +++ git/bldsys/cmake/global_options.cmake @@ -47,7 +47,7 @@ set(CMAKE_CXX_STANDARD 14) set(CMAKE_DISABLE_SOURCE_CHANGES ON) set(CMAKE_DISABLE_IN_SOURCE_BUILD ON) -string(LENGTH "${CMAKE_SOURCE_DIR}/" ROOT_PATH_SIZE) +string(LENGTH "${CMAKE_DEBUG_SRCDIR}/" ROOT_PATH_SIZE) add_definitions(-DROOT_PATH_SIZE=${ROOT_PATH_SIZE}) set(CMAKE_C_FLAGS_DEBUG "-DDEBUG=0 ${CMAKE_C_FLAGS_DEBUG}")