Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package pocl for openSUSE:Factory checked in at 2026-08-19 17:59:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/pocl (Old) and /work/SRC/openSUSE:Factory/.pocl.new.1258 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pocl" Wed Aug 19 17:59:46 2026 rev:38 rq:1371947 version:7.1 Changes: -------- --- /work/SRC/openSUSE:Factory/pocl/pocl.changes 2026-01-12 10:32:25.540920172 +0100 +++ /work/SRC/openSUSE:Factory/.pocl.new.1258/pocl.changes 2026-08-19 18:02:12.935383870 +0200 @@ -1,0 +2,13 @@ +Wed Aug 5 13:08:38 UTC 2026 - JS <[email protected]> + +- Fix build + * Use a suffixed llvm-config symlink to help the build system + find the suffixed LLVM binaries. The suffix becomes necessary + probably due to the libalternatives migration of LLVM. + * Add 0000-handle-required-flags-with-CMake-4.4.patch to backport + a fix for building with CMake 4.4.0. + * Force GCC 13 on SLE 15. + * Add "-msse2" to CFLAGS in i586. +- Enable building with LLVM 21. + +------------------------------------------------------------------- New: ---- 0000-handle-required-flags-with-CMake-4.4.patch ----------(New B)---------- New: probably due to the libalternatives migration of LLVM. * Add 0000-handle-required-flags-with-CMake-4.4.patch to backport a fix for building with CMake 4.4.0. ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pocl.spec ++++++ --- /var/tmp/diff_new_pack.vYTknK/_old 2026-08-19 18:02:13.939419939 +0200 +++ /var/tmp/diff_new_pack.vYTknK/_new 2026-08-19 18:02:13.944420119 +0200 @@ -38,6 +38,12 @@ %bcond_with vulkan +%if 0%{?suse_version} < 1600 +# GCC 9.3+ fixed GCC#81429. +# GCC 13 is the build compiler of SLES 16.0 so hopefully can have a longer life. +%global force_gcc_version 13 +%endif + Name: pocl Version: 7.1 Release: 0 @@ -50,10 +56,11 @@ Source0: https://github.com/pocl/pocl/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source98: maint.README Source99: pocl-rpmlintrc -# Version 7.0: Supports LLVM versions 19 and 20 -BuildRequires: ((clang-devel >= 19 with clang-devel < 21) or clang20-devel) +Patch0: 0000-handle-required-flags-with-CMake-4.4.patch +# Version 7.1: Supports LLVM versions 19, 20 and 21 +BuildRequires: (clang19-devel or clang20-devel or clang21-devel) BuildRequires: cmake >= 3.15 -BuildRequires: gcc-c++ +BuildRequires: gcc%{?force_gcc_version}-c++ >= 9.3 BuildRequires: ninja BuildRequires: opencl-headers BuildRequires: pkgconfig @@ -141,11 +148,28 @@ %autosetup -p1 %build + +%if 0%{?force_gcc_version} +export CC=gcc-%{?force_gcc_version} +export CXX=g++-%{?force_gcc_version} +%endif + +%ifarch %{ix86} +# Avoid errors like `inlining failed in call to ‘always_inline’ ‘_MM_SET_FLUSH_ZERO_MODE’: target specific option mismatch` +# 32-bit Tumbleweed requires i686 + SSE2 anyway: https://en.opensuse.org/Lifetime#:~:text=32%2Dbit%20Tumbleweed +export CFLAGS="${CFLAGS} -msse2" +%endif + +# The build system determines LLVM binaries suffix from the suffix of llvm-config. +SUFFIXED_LLVM_CONFIG=%{_builddir}/bin/llvm-config-$(llvm-config --version | cut -d'.' -f1) +mkdir %{_builddir}/bin +ln -s %{_bindir}/llvm-config ${SUFFIXED_LLVM_CONFIG} + %global __builder ninja %cmake \ -DPOCL_INSTALL_ICD_VENDORDIR=%{_datadir}/OpenCL/vendors \ -DENABLE_LLVM=ON \ - -DWITH_LLVM_CONFIG=%{_bindir}/llvm-config \ + -DWITH_LLVM_CONFIG=${SUFFIXED_LLVM_CONFIG} \ -DENABLE_ICD=ON \ -DSTATIC_LLVM=OFF \ -DENABLE_REMOTE_DISCOVERY_AVAHI=ON \ ++++++ 0000-handle-required-flags-with-CMake-4.4.patch ++++++ >From 50b876600df580fec8b4fe5050229160e88eb388 Mon Sep 17 00:00:00 2001 From: Tim Besard <[email protected]> Date: Fri, 10 Jul 2026 15:01:40 +0200 Subject: [PATCH] CMake: handle required flags with CMake 4.4 References: https://github.com/pocl/pocl/pull/2234 CMAKE_REQUIRED_FLAGS must be a single space-separated string for try_compile. Passing FORBID_IMPLICIT_FUNCTIONS as an expanded CMake list makes CMake 4.4 interpret -Werror=incompatible-pointer-types as its own warning-control option instead of forwarding it to the C compiler, aborting the fork probe during configuration. Join the flags before assigning the variable so both checks reach the compiler. (cherry picked from commit 566d6c839c303232abe7906cb2732f31e9dfa404) --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8c3fbe7a2..66d64cc4c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -816,7 +816,7 @@ if(UNIX OR MINGW) include(CheckSymbolExists) # don't allow implicit function declarations - set(CMAKE_REQUIRED_FLAGS "-std=c99 ${FORBID_IMPLICIT_FUNCTIONS}") + string(JOIN " " CMAKE_REQUIRED_FLAGS "-std=c99" ${FORBID_IMPLICIT_FUNCTIONS}) if (CMAKE_SYSTEM_NAME MATCHES "Linux") set(CMAKE_REQUIRED_LIBRARIES "rt") endif () -- 2.54.0
