* [PATCH] vte: fix build failed for ppc64
@ 2025-12-23 8:54 Hongxu Jia
2025-12-23 10:27 ` [OE-core] " Alexander Kanavin
0 siblings, 1 reply; 3+ messages in thread
From: Hongxu Jia @ 2025-12-23 8:54 UTC (permalink / raw)
To: openembedded-core
$ echo 'MACHINE = "qemuppc64"' >> conf/local.conf
$ bitbake vte
...
|subprojects/simdutf/simdutf.cpp:20533:7: error: there are no arguments to 'write_v_u16_11bits_to_utf8' that depend on a template parameter, so a declaration of 'write_v_u16_11bits_to_utf8' must be available [-Wtemplate-body]
|20533 | write_v_u16_11bits_to_utf8(
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~
|subprojects/simdutf/simdutf.cpp:20533:7: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
|subprojects/simdutf/simdutf.cpp:20559:7: error: there are no arguments to 'ppc64_convert_utf16_to_1_2_3_bytes_of_utf8' that depend on a template parameter, so a declaration of 'ppc64_convert_utf16_to_1_2_3_bytes_of_utf8' must be available [-Wtemplate-body]
|20559 | ppc64_convert_utf16_to_1_2_3_bytes_of_utf8(
| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|subprojects/simdutf/simdutf.cpp:20533:33: error: 'write_v_u16_11bits_to_utf8' was not declared in this scope
|20533 | write_v_u16_11bits_to_utf8(
| | ~~~~~~~~~~~~~~~~~~~~~~~~~~^
|20534 | in, utf8_output, as_vector_u8(one_byte_bytemask), one_byte_bitmask);
| | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
The source file subprojects/simdutf/simdutf.cpp is generated by python3
script singleheader/amalgamate.py and the definition of write_v_u16_11bits_to_utf8
for ppc64 requires option --with-utf16 and --with-latin1
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
.../0001-fix-compile-failed-on-ppc64.patch | 50 +++++++++++++++++++
meta/recipes-support/vte/vte_0.82.1.bb | 3 ++
2 files changed, 53 insertions(+)
create mode 100644 meta/recipes-support/vte/vte/0001-fix-compile-failed-on-ppc64.patch
diff --git a/meta/recipes-support/vte/vte/0001-fix-compile-failed-on-ppc64.patch b/meta/recipes-support/vte/vte/0001-fix-compile-failed-on-ppc64.patch
new file mode 100644
index 0000000000..24568f9b8c
--- /dev/null
+++ b/meta/recipes-support/vte/vte/0001-fix-compile-failed-on-ppc64.patch
@@ -0,0 +1,50 @@
+From de8a97d73613378fd86467c1323eac7aaaa3154d Mon Sep 17 00:00:00 2001
+From: Hongxu Jia <hongxu.jia@windriver.com>
+Date: Tue, 23 Dec 2025 16:18:52 +0800
+Subject: [PATCH] fix compile failed on ppc64
+
+...
+|subprojects/simdutf/simdutf.cpp:20533:7: error: there are no arguments to 'write_v_u16_11bits_to_utf8' that depend on a template parameter, so a declaration of 'write_v_u16_11bits_to_utf8' must be available [-Wtemplate-body]
+|20533 | write_v_u16_11bits_to_utf8(
+| | ^~~~~~~~~~~~~~~~~~~~~~~~~~
+|subprojects/simdutf/simdutf.cpp:20533:7: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
+|subprojects/simdutf/simdutf.cpp:20559:7: error: there are no arguments to 'ppc64_convert_utf16_to_1_2_3_bytes_of_utf8' that depend on a template parameter, so a declaration of 'ppc64_convert_utf16_to_1_2_3_bytes_of_utf8' must be available [-Wtemplate-body]
+|20559 | ppc64_convert_utf16_to_1_2_3_bytes_of_utf8(
+| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+|subprojects/simdutf/simdutf.cpp:20533:33: error: 'write_v_u16_11bits_to_utf8' was not declared in this scope
+|20533 | write_v_u16_11bits_to_utf8(
+| | ~~~~~~~~~~~~~~~~~~~~~~~~~~^
+|20534 | in, utf8_output, as_vector_u8(one_byte_bytemask), one_byte_bitmask);
+| | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+...
+
+Build failed on ppc64, the definition of write_v_u16_11bits_to_utf8 requires
+--with-utf16 and --with-latin1
+
+Upstream-Status: Inappropriate [Yocto specific for ppc64]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ meson.build | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 330ee89..a6c64ca 100644
+--- a/meson.build
++++ b/meson.build
+@@ -41,10 +41,11 @@ simdutf_amalgamate = [
+ '--no-zip',
+ '--no-readme',
+ '--with-utf8',
+- # '--with-utf16',
++ '--with-utf16',
+ '--with-utf32',
+ # '--with-base64',
+ # '--with-detect-enc',
++ '--with-latin1',
+ '--with-ascii',
+ ]
+
+--
+2.34.1
+
diff --git a/meta/recipes-support/vte/vte_0.82.1.bb b/meta/recipes-support/vte/vte_0.82.1.bb
index b5d6f2fb62..3179393bd4 100644
--- a/meta/recipes-support/vte/vte_0.82.1.bb
+++ b/meta/recipes-support/vte/vte_0.82.1.bb
@@ -20,6 +20,9 @@ inherit gnomebase gi-docgen features_check upstream-version-is-even gobject-intr
SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \
file://0001-support-reproducibility-for-debug-sources.patch;patchdir=./subprojects/simdutf \
"
+SRC_URI:append:class-target:powerpc64le = " \
+ file://0001-fix-compile-failed-on-ppc64.patch;patchdir=./subprojects/simdutf \
+"
SRC_URI[archive.sha256sum] = "79376d70402d271e2d38424418e1aea72357934d272e321e3906b71706a78e3a"
--
2.34.1
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [OE-core] [PATCH] vte: fix build failed for ppc64
2025-12-23 8:54 [PATCH] vte: fix build failed for ppc64 Hongxu Jia
@ 2025-12-23 10:27 ` Alexander Kanavin
2025-12-24 3:14 ` Hongxu Jia
0 siblings, 1 reply; 3+ messages in thread
From: Alexander Kanavin @ 2025-12-23 10:27 UTC (permalink / raw)
To: hongxu.jia; +Cc: openembedded-core
On Tue, 23 Dec 2025 at 09:55, hongxu via lists.openembedded.org
<hongxu.jia=windriver.com@lists.openembedded.org> wrote:
> +Upstream-Status: Inappropriate [Yocto specific for ppc64]
> +
> +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +---
> + meson.build | 3 ++-
> + 1 file changed, 2 insertions(+), 1 deletion(-)
> +
> +diff --git a/meson.build b/meson.build
> +index 330ee89..a6c64ca 100644
> +--- a/meson.build
> ++++ b/meson.build
> +@@ -41,10 +41,11 @@ simdutf_amalgamate = [
> + '--no-zip',
> + '--no-readme',
> + '--with-utf8',
> +- # '--with-utf16',
> ++ '--with-utf16',
> + '--with-utf32',
> + # '--with-base64',
> + # '--with-detect-enc',
> ++ '--with-latin1',
> + '--with-ascii',
Why these particular options are necessary on powerpc64 but not other
targets? They do not seem specific to that platform.
Also carrying conditional patches for configurations that aren't
tested in CI is prone to quiet regressions (including such patches
failing to apply after a version update). I'd say you need to both
investigate a bit deeper, and raise the issue with both vte and
simdutf upstreams.
Alex
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [OE-core] [PATCH] vte: fix build failed for ppc64
2025-12-23 10:27 ` [OE-core] " Alexander Kanavin
@ 2025-12-24 3:14 ` Hongxu Jia
0 siblings, 0 replies; 3+ messages in thread
From: Hongxu Jia @ 2025-12-24 3:14 UTC (permalink / raw)
To: Alexander Kanavin; +Cc: openembedded-core
[-- Attachment #1: Type: text/plain, Size: 1903 bytes --]
On 12/23/25 18:27, Alexander Kanavin wrote:
> 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 Tue, 23 Dec 2025 at 09:55, hongxu via lists.openembedded.org
> <hongxu.jia=windriver.com@lists.openembedded.org> wrote:
>> +Upstream-Status: Inappropriate [Yocto specific for ppc64]
>> +
>> +Signed-off-by: Hongxu Jia<hongxu.jia@windriver.com>
>> +---
>> + meson.build | 3 ++-
>> + 1 file changed, 2 insertions(+), 1 deletion(-)
>> +
>> +diff --git a/meson.build b/meson.build
>> +index 330ee89..a6c64ca 100644
>> +--- a/meson.build
>> ++++ b/meson.build
>> +@@ -41,10 +41,11 @@ simdutf_amalgamate = [
>> + '--no-zip',
>> + '--no-readme',
>> + '--with-utf8',
>> +- # '--with-utf16',
>> ++ '--with-utf16',
>> + '--with-utf32',
>> + # '--with-base64',
>> + # '--with-detect-enc',
>> ++ '--with-latin1',
>> + '--with-ascii',
> Why these particular options are necessary on powerpc64 but not other
> targets? They do not seem specific to that platform.
The upstream simdutf newly supports for ppc64 [1], and define
function write_v_u16_11bits_to_utf8 and
ppc64_convert_utf16_to_1_2_3_bytes_of_utf8 for ppc64,
and apply them with option --with-utf16 and --with-latin1
[1]
https://github.com/simdutf/simdutf/commit/497f4f29fe25a79af00ce25693a14682a5f669a5
> Also carrying conditional patches for configurations that aren't
> tested in CI is prone to quiet regressions (including such patches
> failing to apply after a version update). I'd say you need to both
> investigate a bit deeper, and raise the issue with both vte and
> simdutf upstreams.
File an issue for upstream vte
https://gitlab.gnome.org/GNOME/vte/-/issues/2926
Submitted a patch to add option --with-utf16 and --with-latin1 by default,
attached the patch along with the issue
//Hongxu
> Alex
[-- Attachment #2: Type: text/html, Size: 3387 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-12-24 3:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-23 8:54 [PATCH] vte: fix build failed for ppc64 Hongxu Jia
2025-12-23 10:27 ` [OE-core] " Alexander Kanavin
2025-12-24 3:14 ` Hongxu Jia
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox