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

Reply via email to