From 441873fdc536a35709f61c25ad03d811b0186269 Mon Sep 17 00:00:00 2001 From: Changqing Li Date: Sat, 11 Oct 2025 09:58:00 +0800 Subject: [PATCH] doxygen: fix reproducibility issue of doxygen-src [ snip of CMakeLists.txt ] BISON_TARGET(constexp ${CMAKE_CURRENT_LIST_DIR}/constexp.y ${GENERATED_SRC}/ce_parse.cpp COMPILE_FLAGS "${YACC_FLAGS}") [ end of snip ] bison embeds full paths in its generated headers, eg: bison -o /full/build/path/generated/example.cpp ... The header will include: #ifndef YY_FULL_BUILD_PATH_GENERATED_MSCGEN_LANGUAGE_HPP_INCLUDED #define YY_FULL_BUILD_PATH_GENERATED_MSCGEN_LANGUAGE_HPP_INCLUDED This make doxygen-src not reproducible, fix by replacing full build path Signed-off-by: Changqing Li Signed-off-by: Khem Raj --- meta-oe/conf/layer.conf | 1 - meta-oe/recipes-devtools/doxygen/doxygen_1.14.0.bb | 10 ++++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/meta-oe/conf/layer.conf b/meta-oe/conf/layer.conf index 5b9ceb424e..56aea73b15 100644 --- a/meta-oe/conf/layer.conf +++ b/meta-oe/conf/layer.conf @@ -138,7 +138,6 @@ OEQA_REPRODUCIBLE_EXCLUDED_PACKAGES += " \ dhrystone-src \ directfb \ directfb-dbg \ - doxygen-src \ edid-decode \ edid-decode-dbg \ editorconfig-core-c-dev \ diff --git a/meta-oe/recipes-devtools/doxygen/doxygen_1.14.0.bb b/meta-oe/recipes-devtools/doxygen/doxygen_1.14.0.bb index 512a63549e..73594fc09f 100644 --- a/meta-oe/recipes-devtools/doxygen/doxygen_1.14.0.bb +++ b/meta-oe/recipes-devtools/doxygen/doxygen_1.14.0.bb @@ -22,4 +22,14 @@ EXTRA_OECMAKE += "\ -DBISON_TARGET_ARG_COMPILE_FLAGS='--no-lines' \ " +do_install:append() { + sed -i -e 's;^#ifndef.*GENERATED_SRC_MSCGEN_LANGUAGE_HPP_INCLUDED$;#ifndef GENERATED_SRC_MSCGEN_LANGUAGE_HPP_INCLUDED;g' ${B}/generated_src/mscgen_language.hpp + sed -i -e 's;^# define.*GENERATED_SRC_MSCGEN_LANGUAGE_HPP_INCLUDED$;# define GENERATED_SRC_MSCGEN_LANGUAGE_HPP_INCLUDED;g' ${B}/generated_src/mscgen_language.hpp + sed -i -e 's;^#endif.*GENERATED_SRC_MSCGEN_LANGUAGE_HPP_INCLUDED.*$;#endif;g' ${B}/generated_src/mscgen_language.hpp + + sed -i -e 's;^#ifndef.*GENERATED_SRC_CE_PARSE_HPP_INCLUDED$;#ifndef GENERATED_SRC_CE_PARSE_HPP_INCLUDED;g' ${B}/generated_src/ce_parse.hpp + sed -i -e 's;^# define.*GENERATED_SRC_CE_PARSE_HPP_INCLUDED$;# define GENERATED_SRC_CE_PARSE_HPP_INCLUDED;g' ${B}/generated_src/ce_parse.hpp + sed -i -e 's;^#endif.*GENERATED_SRC_CE_PARSE_HPP_INCLUDED.*$;#endif;g' ${B}/generated_src/ce_parse.hpp +} + BBCLASSEXTEND = "native nativesdk"