From c4fa7f34565bd823ee3748d6f54020f552ec127e Mon Sep 17 00:00:00 2001 From: eabdullin Date: Wed, 14 May 2025 16:12:42 +0000 Subject: [PATCH] import UBI graphene-1.10.6-10.el10 --- .gitignore | 2 +- .graphene.metadata | 1 - graphene-1.10.6-perf-aarch64.patch | 83 ++++++++++++++++++++++++++++ graphene-1.10.6-perf.patch | 26 +++++++++ SPECS/graphene.spec => graphene.spec | 52 +++++++++++------ sources | 1 + 6 files changed, 146 insertions(+), 19 deletions(-) delete mode 100644 .graphene.metadata create mode 100644 graphene-1.10.6-perf-aarch64.patch create mode 100644 graphene-1.10.6-perf.patch rename SPECS/graphene.spec => graphene.spec (75%) create mode 100644 sources diff --git a/.gitignore b/.gitignore index 1dbbe0a..4274d37 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/graphene-1.10.6.tar.xz +graphene-1.10.6.tar.xz diff --git a/.graphene.metadata b/.graphene.metadata deleted file mode 100644 index de0fa9c..0000000 --- a/.graphene.metadata +++ /dev/null @@ -1 +0,0 @@ -0bce9014096441fb771db0bc66587d7440190fa5 SOURCES/graphene-1.10.6.tar.xz diff --git a/graphene-1.10.6-perf-aarch64.patch b/graphene-1.10.6-perf-aarch64.patch new file mode 100644 index 0000000..a64620a --- /dev/null +++ b/graphene-1.10.6-perf-aarch64.patch @@ -0,0 +1,83 @@ +From 2aae5d2280d02812669ac38e3981692b98de7c10 Mon Sep 17 00:00:00 2001 +From: Dor Askayo +Date: Sat, 3 Apr 2021 16:37:30 +0300 +Subject: [PATCH 1/2] graphene-config: Enable NEON for AArch64 on Linux + +NEON is fully supported by AArch64. However, GCC doesn't seem to define +__ARM_NEON__ or _M_ARM64 for AArch64. + +Using __aarch64__ should allow a proper detection of this case. +--- + include/graphene-config.h.meson | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/graphene-config.h.meson b/include/graphene-config.h.meson +index 949eee7..96192cc 100644 +--- a/include/graphene-config.h.meson ++++ b/include/graphene-config.h.meson +@@ -19,7 +19,7 @@ extern "C" { + #mesondefine GRAPHENE_HAS_SSE + # endif + +-# if defined(__ARM_NEON__) || defined (_M_ARM64) ++# if defined(__ARM_NEON__) || defined (_M_ARM64) || defined (__aarch64__) + #mesondefine GRAPHENE_HAS_ARM_NEON + # endif + +-- +2.31.1 + +From fbfbdad5a3f38ddbe543ee8c236b4315bba111b9 Mon Sep 17 00:00:00 2001 +From: Dor Askayo +Date: Sat, 3 Apr 2021 16:40:30 +0300 +Subject: [PATCH 2/2] meson: Fix detection of AArch64 on Linux + +Neither __ARM_EABI__ nor __ARM_NEON__ are defined by GCC for AArch64, +and -mfpu=neon is not required as NEON is always supported in AArch64. +--- + meson.build | 15 +++++++++------ + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git a/meson.build b/meson.build +index c96aded..86d8eb8 100644 +--- a/meson.build ++++ b/meson.build +@@ -10,6 +10,7 @@ project('graphene', 'c', + + cc = meson.get_compiler('c') + host_system = host_machine.system() ++host_cpu_family = host_machine.cpu_family() + + add_project_arguments([ '-D_GNU_SOURCE' ], language: 'c') + +@@ -352,11 +353,13 @@ neon_cflags = [] + if get_option('arm_neon') + neon_prog = ''' + #if !defined (_MSC_VER) || defined (__clang__) +-# ifndef __ARM_EABI__ +-# error "EABI is required (to be sure that calling conventions are compatible)" +-# endif +-# ifndef __ARM_NEON__ +-# error "No ARM NEON instructions available" ++# if !defined (_M_ARM64) && !defined (__aarch64__) ++# ifndef __ARM_EABI__ ++# error "EABI is required (to be sure that calling conventions are compatible)" ++# endif ++# ifndef __ARM_NEON__ ++# error "No ARM NEON instructions available" ++# endif + # endif + #endif + #include +@@ -376,7 +379,7 @@ int main () { + + test_neon_cflags = [] + +- if cc.get_id() != 'msvc' ++ if cc.get_id() != 'msvc' and host_cpu_family != 'aarch64' + test_neon_cflags += ['-mfpu=neon'] + endif + +-- +2.31.1 + diff --git a/graphene-1.10.6-perf.patch b/graphene-1.10.6-perf.patch new file mode 100644 index 0000000..7f6a66e --- /dev/null +++ b/graphene-1.10.6-perf.patch @@ -0,0 +1,26 @@ +From 3b3e316908e4fb15056d10fb9d5271eed6f65051 Mon Sep 17 00:00:00 2001 +From: q66 +Date: Wed, 9 Jun 2021 15:47:14 +0200 +Subject: [PATCH] meson: fix gcc vector 64-bit check + +the previous behavior only ever enabled gcc vectors no x86_64 +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 5dbfb63..fd37036 100644 +--- a/meson.build ++++ b/meson.build +@@ -328,7 +328,7 @@ if get_option('gcc_vector') + # error "GCC vector intrinsics are disabled on GCC prior to 4.9" + # elif defined(__arm__) + # error "GCC vector intrinsics are disabled on ARM" +-# elif !defined(__x86_64__) ++# elif (__SIZEOF_POINTER__ < 8) + # error "GCC vector intrinsics are disabled on 32bit" + # endif + #else +-- +2.31.1 + diff --git a/SPECS/graphene.spec b/graphene.spec similarity index 75% rename from SPECS/graphene.spec rename to graphene.spec index 69b5d3a..b8d0afa 100644 --- a/SPECS/graphene.spec +++ b/graphene.spec @@ -1,14 +1,19 @@ Name: graphene Version: 1.10.6 -Release: 2%{?dist} +Release: 10%{?dist} Summary: Thin layer of types for graphic libraries License: MIT URL: https://github.com/ebassi/graphene Source: %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz +# https://github.com/ebassi/graphene/commit/3b3e316908e4fb15056d10fb9d5271eed6f65051 +# https://github.com/ebassi/graphene/commit/fbfbdad5a3f38ddbe543ee8c236b4315bba111b9 +Patch0: graphene-1.10.6-perf-aarch64.patch +# https://github.com/ebassi/graphene/commit/3b3e316908e4fb15056d10fb9d5271eed6f65051 +Patch1: graphene-1.10.6-perf.patch BuildRequires: gcc -BuildRequires: gobject-introspection-devel >= 1.68.0-3.el9 +BuildRequires: gobject-introspection-devel BuildRequires: gtk-doc BuildRequires: meson >= 0.50.1 BuildRequires: pkgconfig(gobject-2.0) >= 2.30.0 @@ -73,24 +78,37 @@ the functionality of the installed %{name} package. %{_datadir}/installed-tests/ %changelog -* Mon Aug 09 2021 Mohan Boddu - 1.10.6-2 -- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags - Related: rhbz#1991688 +* Tue Oct 29 2024 Troy Dawson - 1.10.6-10 +- Bump release for October 2024 mass rebuild: + Resolves: RHEL-64018 -* Fri May 07 2021 Kalev Lember - 1.10.6-1 +* Mon Jun 24 2024 Troy Dawson - 1.10.6-9 +- Bump release for June 2024 mass rebuild + +* Wed Jan 24 2024 Fedora Release Engineering - 1.10.6-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jan 20 2024 Fedora Release Engineering - 1.10.6-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Jul 20 2023 Fedora Release Engineering - 1.10.6-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu Jan 19 2023 Fedora Release Engineering - 1.10.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 1.10.6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jul 22 2021 Fedora Release Engineering - 1.10.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jul 16 2021 Dan Horák - 1.10.6-2 +- upstream perfomance fixes for non-x86 arches + +* Tue Apr 06 2021 Kalev Lember - 1.10.6-1 - Update to 1.10.6 -* Mon May 03 2021 Jonas Ådahl - 1.10.4-5 -- Fix ray intersection bug causing picking errors in mutter - Resolves: #1956294 - -* Tue Apr 27 2021 Matthias Clasen - 1.10.4-4 -- Rebuild with newer gobject-introspection to fix multilib conflict -- Related: rhbz#1915340 - -* Thu Apr 15 2021 Mohan Boddu - 1.10.4-3 -- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 - * Tue Mar 09 2021 Nicolas Chauvet - 1.10.4-2 - Disable neon for graphene on armv7hl - Add meson_test diff --git a/sources b/sources new file mode 100644 index 0000000..ed01a89 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (graphene-1.10.6.tar.xz) = 075e8c712509655d0614258a7fd2943e67a9642334cdabdc15d2489a88c961e278f7464a513080cd287f5371c7ece8ceb7565d1718a8b71fea4a4977f82aeb72