Source: jsonnet
Version: 0.20.0+ds-3.1
Severity: normal
Tags: patch
User: [email protected]
Usertags: loong64
Dear maintainers,
Compiling the jsonnet failed for loong64 in the Debian Package
Auto-Building environment.
The error log is as follows,
```
......
In file included from
/<<PKGBUILDDIR>>/third_party/rapidyaml/rapidyaml.cpp:2:
/<<PKGBUILDDIR>>/third_party/rapidyaml/ryml_all.hpp:509:5: error: #error
"unknown CPU architecture"
509 | #error "unknown CPU architecture"
| ^~~~~
......
```
The full build log can be found at
https://buildd.debian.org/status/logs.php?pkg=jsonnet&arch=loong64.
jsonnet 0.20.0+ds-2.1 can be built successfully for loong64.
But jsonnet 0.20.0+ds-3.1 includes third_party/rapidyaml/ryml_all.hpp
which lacks of loongarch64 support.
Please consider the patch I attached.
Based on attached patch, I have built jsonnet (0.20.0+ds-3.1+loong64)
successfully on locally.
```
......
dpkg-deb: building package 'python3-jsonnet' in
'../python3-jsonnet_0.20.0+ds-3.1+loong64_loong64.deb'.
dpkg-deb: building package 'python3-jsonnet-dbgsym' in
'../python3-jsonnet-dbgsym_0.20.0+ds-3.1+loong64_loong64.deb'.
dpkg-genbuildinfo -O../jsonnet_0.20.0+ds-3.1+loong64_loong64.buildinfo
dpkg-genchanges -O../jsonnet_0.20.0+ds-3.1+loong64_loong64.changes
```
Your opinions are welcome.
Best regards,
Dandan Zhang
diff -Nru jsonnet-0.20.0+ds/debian/changelog jsonnet-0.20.0+ds/debian/changelog
--- jsonnet-0.20.0+ds/debian/changelog 2025-06-30 13:31:34.000000000 +0000
+++ jsonnet-0.20.0+ds/debian/changelog 2025-08-20 07:36:01.000000000 +0000
@@ -1,3 +1,9 @@
+jsonnet (0.20.0+ds-3.1+loong64) unstable; urgency=medium
+
+ * third_party/rapidyaml: Add loongarch64 support.
+
+ -- Dandan Zhang <[email protected]> Wed, 20 Aug 2025 15:36:01 +0800
+
jsonnet (0.20.0+ds-3.1) unstable; urgency=medium
* Non-maintainer upload.
diff -Nru
jsonnet-0.20.0+ds/debian/patches/jsonnet-third_party-rapidyaml-add-loongarch64-support.patch
jsonnet-0.20.0+ds/debian/patches/jsonnet-third_party-rapidyaml-add-loongarch64-support.patch
---
jsonnet-0.20.0+ds/debian/patches/jsonnet-third_party-rapidyaml-add-loongarch64-support.patch
1970-01-01 00:00:00.000000000 +0000
+++
jsonnet-0.20.0+ds/debian/patches/jsonnet-third_party-rapidyaml-add-loongarch64-support.patch
2025-08-20 07:36:01.000000000 +0000
@@ -0,0 +1,24 @@
+Description: <short summary of the patch>
+ .
+ jsonnet (0.20.0+ds-3.1+loong64) unstable; urgency=medium
+ .
+ * third_party/rapidyaml: Add loongarch64 support.
+Author: Dandan Zhang <[email protected]>
+
+---
+Last-Update: 2025-08-20
+
+--- jsonnet-0.20.0+ds.orig/third_party/rapidyaml/ryml_all.hpp
++++ jsonnet-0.20.0+ds/third_party/rapidyaml/ryml_all.hpp
+@@ -502,6 +502,11 @@ C4_FOR_EACH(PRN_STRUCT_OFFSETS, a, b, c)
+ # define C4_BYTE_ORDER _C4EL
+ # define C4_WORDSIZE 4
+
++#elif defined(__loongarch64)
++# define C4_CPU_LOONGARCH64
++# define C4_WORDSIZE 8
++# define C4_BYTE_ORDER _C4EL
++
+ #elif defined(SWIG)
+ #error "please define CPU architecture macros when compiling with swig"
+
diff -Nru jsonnet-0.20.0+ds/debian/patches/series
jsonnet-0.20.0+ds/debian/patches/series
--- jsonnet-0.20.0+ds/debian/patches/series 2025-03-19 13:57:48.000000000
+0000
+++ jsonnet-0.20.0+ds/debian/patches/series 2025-08-20 07:36:01.000000000
+0000
@@ -3,3 +3,4 @@
0003-switch-to-the-single-header-Rapid-YAML-upgrade-to-v0.patch
0004-correct-spelling-error-catched-caught.patch
0005-Add-manpages-for-commands-automatically.patch
+jsonnet-third_party-rapidyaml-add-loongarch64-support.patch