Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package wasi-libc for openSUSE:Factory 
checked in at 2026-04-18 21:31:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wasi-libc (Old)
 and      /work/SRC/openSUSE:Factory/.wasi-libc.new.11940 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "wasi-libc"

Sat Apr 18 21:31:24 2026 rev:10 rq:1338970 version:31

Changes:
--------
--- /work/SRC/openSUSE:Factory/wasi-libc/wasi-libc.changes      2025-09-14 
18:50:33.047040181 +0200
+++ /work/SRC/openSUSE:Factory/.wasi-libc.new.11940/wasi-libc.changes   
2026-04-18 21:31:57.150766654 +0200
@@ -1,0 +2,14 @@
+Fri Mar 13 17:02:21 UTC 2026 - Aaron Puchert <[email protected]>
+
+- Update to version (wasi-sdk-)31.
+  * Support for wasip2 and wasip3.
+  * Compatibility with LLVM 22.
+  * Switch build system to CMake.
+  * Add shared libraries.
+- For now, we build the default target wasm32-wasip1.
+- Use binary version of builtins library until we can build it
+  ourselves (using the URL from cmake/builtins.cmake).
+- Drop obsolete workaround-broken-makefile.patch.
+- Clean up rpmlintrc.
+
+-------------------------------------------------------------------

Old:
----
  wasi-libc-27.tar.gz
  workaround-broken-makefile.patch

New:
----
  libclang_rt.builtins-wasm32-wasi-25.0.tar.gz
  wasi-libc-31.tar.gz

----------(Old B)----------
  Old:  ourselves (using the URL from cmake/builtins.cmake).
- Drop obsolete workaround-broken-makefile.patch.
- Clean up rpmlintrc.
----------(Old E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ wasi-libc.spec ++++++
--- /var/tmp/diff_new_pack.3ThjXy/_old  2026-04-18 21:31:57.758791386 +0200
+++ /var/tmp/diff_new_pack.3ThjXy/_new  2026-04-18 21:31:57.762791548 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package wasi-libc
 #
-# Copyright (c) 2025 SUSE LLC and contributors
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,40 +17,51 @@
 
 
 Name:           wasi-libc
-Version:        27
+Version:        31
 Release:        0
 Summary:        WASI libc implementation for WebAssembly
 # FIXME: Select a correct license from 
https://github.com/openSUSE/spec-cleaner#spdx-licenses
 License:        MIT
 URL:            https://github.com/WebAssembly/wasi-libc
 Source:         
https://github.com/WebAssembly/wasi-libc/archive/refs/tags/wasi-sdk-%{version}.tar.gz#/%{name}-%{version}.tar.gz
-Source1:        wasi-libc-rpmlintrc
-Patch1:         workaround-broken-makefile.patch
+# FIXME: This should come from LLVM.
+Source1:        
https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-25/libclang_rt.builtins-wasm32-wasi-25.0.tar.gz
+Source100:      wasi-libc-rpmlintrc
 # Build uses LLVM option -wasm-enable-sjlj, which was introduced in LLVM 14.
 # 
(https://github.com/llvm/llvm-project/commit/77b921b870aacfd531ff449166937e0de6a377bc)
-BuildRequires:  clang > 14
-BuildRequires:  llvm > 14
+BuildRequires:  clang >= 14
+BuildRequires:  cmake >= 3.26
+BuildRequires:  lld
+BuildRequires:  llvm >= 14
 BuildArch:      noarch
 
 %description
 WASI libc allows cross platform binaries to be created and executed on a 
variety of platforms
 
 %prep
-%autosetup -p1 -n wasi-libc-wasi-sdk-%{version}
+%autosetup -p1 -n wasi-libc-wasi-sdk-%{version} -a1
 
 %build
-export CC=clang
-export AR=llvm-ar
-export NM=llvm-nm
-%make_build
+# Building libsetjmp.so fails with LTO:
+# wasm-ld: error: symbol type mismatch: __c_longjmp
+# >>> defined as WASM_SYMBOL_TYPE_FUNCTION in 
CMakeFiles/setjmp.dir/musl/src/setjmp/wasm32/rt.c.obj
+# >>> defined as WASM_SYMBOL_TYPE_TAG in 
CMakeFiles/setjmp.dir/musl/src/setjmp/wasm32/libsetjmp.so.lto.rt.c.o
+%global _lto_cflags %{nil}
+
+# Removing all default compiler and linker flags and turning off linker 
dependency
+# generation is necessary because they don't generally make sense for 
WebAssembly.
+# Most of them don't work or are ignored, the remainder is added by CMake (-O2 
-g).
+%cmake \
+    -DCMAKE_C_COMPILER=clang \
+    -DCMAKE_C_FLAGS="" \
+    -DCMAKE_SHARED_LINKER_FLAGS="" \
+    -DCMAKE_LINK_DEPENDS_USE_LINKER:BOOL=OFF \
+    -DCMAKE_INSTALL_PREFIX:PATH=%{_datadir}/wasi-sysroot \
+    
-DBUILTINS_LIB=%{_builddir}/%{buildsubdir}/libclang_rt.builtins-wasm32-wasi-25.0/libclang_rt.builtins-wasm32.a
+%cmake_build
 
 %install
-export CC=clang
-export AR=llvm-ar
-export NM=llvm-nm
-# The makefile is stupid and compiles everything again if we do `make 
install`, so we
-# do it only once
-%make_install INSTALL_DIR="%{buildroot}/%{_datadir}/wasi-sysroot"
+%cmake_install
 # brp-15-strip-debug and -ar call system-strip and ar, which are not 
wasm-aware, so they will break wasm-files
 export NO_BRP_AR=true
 export NO_BRP_STRIP_DEBUG=true

++++++ wasi-libc-27.tar.gz -> wasi-libc-31.tar.gz ++++++
++++ 74812 lines of diff (skipped)

++++++ wasi-libc-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.3ThjXy/_old  2026-04-18 21:31:59.506862487 +0200
+++ /var/tmp/diff_new_pack.3ThjXy/_new  2026-04-18 21:31:59.518862975 +0200
@@ -1,13 +1,7 @@
 # Those files ARE arch-independent, but named like they are not (*.a, etc.) so 
the script is wrong here
 addFilter("files-duplicate .*")
-addFilter("static-library-without-symtab .*")
-addFilter("static-library-without-debuginfo .*")
-addFilter("readelf-failed .*")
 addFilter("zero-length .*")
-addFilter("arch-dependent-file-in-usr-share .*")
 addFilter("arch-independent-package-contains-binary-or-object .*")
-# There are empty dummy-files in the sysroot
-addFilter('lto-no-text-in-archive .*')
 addFilter('devel-file-in-non-devel-package .*')
 
 

Reply via email to