Message ID | 20250918034613.2714914-1-jiaying.song.cn@windriver.com |
---|---|
State | New |
Headers | show |
Series | [meta-oe,walnascar,1/2] webkitgtk3: fix build failure with DEBUG_BUILD enabled | expand |
On 9/18/25 05:46, Song, Jiaying (CN) via lists.openembedded.org wrote: > diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > index b03ed3cbb9..c3d2169102 100644 > --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > @@ -21,6 +21,7 @@ SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \ > file://0001-Fix-build-errors-on-RISCV-https-bugs.webkit.org-show.patch \ > file://fix-typo-denormaldisabler.patch \ > file://fix-ftbfs-riscv64.patch \ > + file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \ > " > SRC_URI[sha256sum] = "98efdf21c4cdca0fe0b73ab5a8cb52093b5aa52d9b1b016a93f71dbfa1eb258f" > > @@ -99,7 +100,8 @@ EXTRA_OECMAKE = " \ > -DUSE_GTK4=OFF \ > ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ > ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ > - -DENABLE_MINIBROWSER=ON \ > + ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFFF', d)} \ This seems to have an extra F (OFFF). It seems to be present in the patch for master branch aswell. > + -DENABLE_MINIBROWSER=ON \ > -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ > " > # pass -g1 to massively reduce the size of the debug symbols (4.3GB to 700M at time of writing) > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#119514): https://lists.openembedded.org/g/openembedded-devel/message/119514 > Mute This Topic: https://lists.openembedded.org/mt/115304633/6084445 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [skandigraun@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
Thanks for your feedback. I’ve already sent a new patch to walnascar and fixed the typo in the master branch as well. Thanks, Jiaying. -----Original Message----- From: Gyorgy Sarvari <skandigraun@gmail.com> Sent: Thursday, September 18, 2025 12:30 PM To: Song, Jiaying (CN) <Jiaying.Song.CN@windriver.com>; ankur.tyagi85@gmail.com; openembedded-devel@lists.openembedded.org Subject: Re: [oe] [meta-oe][walnascar][PATCH 1/2] webkitgtk3: fix build failure with DEBUG_BUILD enabled CAUTION: This email comes from a non Wind River email account! Do not click links or open attachments unless you recognize the sender and know the content is safe. On 9/18/25 05:46, Song, Jiaying (CN) via lists.openembedded.org wrote: > diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > index b03ed3cbb9..c3d2169102 100644 > --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb > @@ -21,6 +21,7 @@ SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \ > file://0001-Fix-build-errors-on-RISCV-https-bugs.webkit.org-show.patch \ > file://fix-typo-denormaldisabler.patch \ > file://fix-ftbfs-riscv64.patch \ > + > + file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.pat > + ch \ > " > SRC_URI[sha256sum] = "98efdf21c4cdca0fe0b73ab5a8cb52093b5aa52d9b1b016a93f71dbfa1eb258f" > > @@ -99,7 +100,8 @@ EXTRA_OECMAKE = " \ > -DUSE_GTK4=OFF \ > ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ > ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ > - -DENABLE_MINIBROWSER=ON \ > + ${@oe.utils.vartrue('DEBUG_BUILD', > + '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFFF', d)} > + \ This seems to have an extra F (OFFF). It seems to be present in the patch for master branch aswell. > + -DENABLE_MINIBROWSER=ON \ > -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ > " > # pass -g1 to massively reduce the size of the debug symbols (4.3GB > to 700M at time of writing) > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#119514): > https://lists.openembedded.org/g/openembedded-devel/message/119514 > Mute This Topic: https://lists.openembedded.org/mt/115304633/6084445 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub > [skandigraun@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On 9/18/25 07:59, Song, Jiaying (CN) wrote: > Thanks for your feedback. I’ve already sent a new patch to walnascar and fixed the typo in the master branch as well. Thank you - but v2 seems to still have the same typo :) > > Thanks, > Jiaying. > > -----Original Message----- > From: Gyorgy Sarvari <skandigraun@gmail.com> > Sent: Thursday, September 18, 2025 12:30 PM > To: Song, Jiaying (CN) <Jiaying.Song.CN@windriver.com>; ankur.tyagi85@gmail.com; openembedded-devel@lists.openembedded.org > Subject: Re: [oe] [meta-oe][walnascar][PATCH 1/2] webkitgtk3: fix build failure with DEBUG_BUILD enabled > > CAUTION: This email comes from a non Wind River email account! > Do not click links or open attachments unless you recognize the sender and know the content is safe. > > On 9/18/25 05:46, Song, Jiaying (CN) via lists.openembedded.org wrote: >> diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb >> b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb >> index b03ed3cbb9..c3d2169102 100644 >> --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb >> +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb >> @@ -21,6 +21,7 @@ SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \ >> file://0001-Fix-build-errors-on-RISCV-https-bugs.webkit.org-show.patch \ >> file://fix-typo-denormaldisabler.patch \ >> file://fix-ftbfs-riscv64.patch \ >> + >> + file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.pat >> + ch \ >> " >> SRC_URI[sha256sum] = "98efdf21c4cdca0fe0b73ab5a8cb52093b5aa52d9b1b016a93f71dbfa1eb258f" >> >> @@ -99,7 +100,8 @@ EXTRA_OECMAKE = " \ >> -DUSE_GTK4=OFF \ >> ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ >> ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ >> - -DENABLE_MINIBROWSER=ON \ >> + ${@oe.utils.vartrue('DEBUG_BUILD', >> + '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFFF', d)} >> + \ > This seems to have an extra F (OFFF). It seems to be present in the patch for master branch aswell. > >> + -DENABLE_MINIBROWSER=ON \ >> -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ >> " >> # pass -g1 to massively reduce the size of the debug symbols (4.3GB >> to 700M at time of writing) >> >> -=-=-=-=-=-=-=-=-=-=-=- >> Links: You receive all messages sent to this group. >> View/Reply Online (#119514): >> https://lists.openembedded.org/g/openembedded-devel/message/119514 >> Mute This Topic: https://lists.openembedded.org/mt/115304633/6084445 >> Group Owner: openembedded-devel+owner@lists.openembedded.org >> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub >> [skandigraun@gmail.com] >> -=-=-=-=-=-=-=-=-=-=-=- >>
diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3/0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch new file mode 100644 index 0000000000..b1139b857e --- /dev/null +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3/0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch @@ -0,0 +1,74 @@ +From bbf661310448d430350eb2ad8c5869ace648dcf8 Mon Sep 17 00:00:00 2001 +From: Kai Kang <kai.kang@windriver.com> +Date: Fri, 11 Aug 2023 14:20:48 +0800 +Subject: [PATCH] Add a variable to control macro + __PAS_ALWAYS_INLINE_BUT_NOT_INLINE + https://bugs.webkit.org/show_bug.cgi?id=260065 + +Reviewed by NOBODY (OOPS!). + +It fails to compile webkitgtk with option `-Og` of gcc/g++: + +| In file included from Source/bmalloc/libpas/src/libpas/pas_heap_page_provider.h:30, +| from Source/bmalloc/libpas/src/libpas/pas_bootstrap_heap_page_provider.h:29, +| from Source/bmalloc/libpas/src/libpas/pas_large_heap_physical_page_sharing_cache.h:29, +| from Source/bmalloc/libpas/src/libpas/pas_basic_heap_page_caches.h:29, +| from Source/bmalloc/libpas/src/libpas/pas_heap_config_utils.h:32, +| from Source/bmalloc/libpas/src/libpas/bmalloc_heap_config.h:34, +| from Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h:34, +| from Source/bmalloc/bmalloc/bmalloc.h:39, +| from Source/bmalloc/bmalloc/bmalloc.cpp:26: +| In function 'pas_allocation_result pas_local_allocator_try_allocate(pas_local_allocator*, size_t, size_t, pas_heap_config, pas_allocator_counts*, pas_allocation_result_filter)', +| inlined from 'pas_allocation_result pas_try_allocate_common_impl_fast(pas_heap_config, pas_allocator_counts*, pas_allocation_result_filter, pas_local_allocator*, size_t, size_t)' at webkitgtk-2.40.2/Source/bmalloc/libpas/src/libpas/pas_try_allocate_common.h:85:46, +| inlined from 'pas_allocation_result bmalloc_try_allocate_with_alignment_impl_impl_fast(pas_local_allocator*, size_t, size_t)' at webkitgtk-2.40.2/Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h:59:1, +| inlined from 'pas_allocation_result pas_try_allocate_intrinsic_impl_casual_case(__pas_heap*, size_t, size_t, pas_intrinsic_heap_support*, pas_heap_config, pas_try_allocate_common_fast, pas_try_allocate_common_slow, pas_intrinsic_heap_designation_mode)' at webkitgtk-2.40.2/Source/bmalloc/libpas/src/libpas/pas_try_allocate_intrinsic.h:167:44, +| inlined from 'pas_allocation_result bmalloc_try_allocate_with_alignment_impl_casual_case(size_t, size_t)' at webkitgtk-2.40.2/Source/bmalloc/libpas/src/libpas/bmalloc_heap_inlines.h:59:1: +| webkitgtk-2.40.2/Source/bmalloc/libpas/src/libpas/pas_allocation_result.h:76:1: error: inlining failed in call to 'always_inline' 'pas_allocation_result pas_allocation_result_identity(pas_allocation_result)': function not considered for inlining +| 76 | pas_allocation_result_identity(pas_allocation_result result) +| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Add an variable `WEBKIT_NO_INLINE_HINTS` to control macro +__PAS_ALWAYS_INLINE_BUT_NOT_INLINE whether includes function attribute +`always_inline`. It could set the variable to make compilation pass when +gcc option `-Og` is used. + +* Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h: +* Source/cmake/WebKitCompilerFlags.cmake: + +Upstream-Status: Submitted [https://github.com/WebKit/WebKit/pull/16601] + +Signed-off-by: Kai Kang <kai.kang@windriver.com> +Signed-off-by: Jiaying Song <jiaying.song.cn@windriver.com> +--- + Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h | 2 +- + Source/cmake/WebKitCompilerFlags.cmake | 7 +++++++ + 2 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h b/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h +index 5d5fb38c..a554f700 100644 +--- a/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h ++++ b/Source/bmalloc/libpas/src/libpas/pas_utils_prefix.h +@@ -44,7 +44,7 @@ __PAS_BEGIN_EXTERN_C; + #define __SUSPICIOUS__ + #define __BROKEN__ + +-#ifdef __OPTIMIZE__ ++#if defined(__OPTIMIZE__) && !defined(WEBKIT_NO_INLINE_HINTS) + #define __PAS_ALWAYS_INLINE_BUT_NOT_INLINE __attribute__((__always_inline__)) + #else + #define __PAS_ALWAYS_INLINE_BUT_NOT_INLINE +diff --git a/Source/cmake/WebKitCompilerFlags.cmake b/Source/cmake/WebKitCompilerFlags.cmake +index f5ec0a55..dfd741e7 100644 +--- a/Source/cmake/WebKitCompilerFlags.cmake ++++ b/Source/cmake/WebKitCompilerFlags.cmake +@@ -503,3 +503,10 @@ endif () + + # FIXME: Enable pre-compiled headers for all ports <https://webkit.org/b/139438> + set(CMAKE_DISABLE_PRECOMPILE_HEADERS ON) ++ ++# It fails to compile with `gcc -Og` ++set(WEBKIT_NO_INLINE_HINTS OFF CACHE BOOL "Disable funtion attribute always_inline for WebKit") ++ ++if (WEBKIT_NO_INLINE_HINTS) ++ add_definitions(-DWEBKIT_NO_INLINE_HINTS) ++endif () diff --git a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb index b03ed3cbb9..c3d2169102 100644 --- a/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb +++ b/meta-oe/recipes-support/webkitgtk/webkitgtk3_2.48.1.bb @@ -21,6 +21,7 @@ SRC_URI = "https://www.webkitgtk.org/releases/webkitgtk-${PV}.tar.xz \ file://0001-Fix-build-errors-on-RISCV-https-bugs.webkit.org-show.patch \ file://fix-typo-denormaldisabler.patch \ file://fix-ftbfs-riscv64.patch \ + file://0001-CMake-Add-a-variable-to-control-macro-__PAS_ALWAYS_I.patch \ " SRC_URI[sha256sum] = "98efdf21c4cdca0fe0b73ab5a8cb52093b5aa52d9b1b016a93f71dbfa1eb258f" @@ -99,7 +100,8 @@ EXTRA_OECMAKE = " \ -DUSE_GTK4=OFF \ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ ${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '-DENABLE_DOCUMENTATION=ON', '-DENABLE_DOCUMENTATION=OFF', d)} \ - -DENABLE_MINIBROWSER=ON \ + ${@oe.utils.vartrue('DEBUG_BUILD', '-DWEBKIT_NO_INLINE_HINTS=ON', '-DWEBKIT_NO_INLINE_HINTS=OFFF', d)} \ + -DENABLE_MINIBROWSER=ON \ -DCMAKE_EXPORT_COMPILE_COMMANDS=OFF \ " # pass -g1 to massively reduce the size of the debug symbols (4.3GB to 700M at time of writing)