commit d37512e6b183df91679f27530ab09f3199438ef8 Author: MSVSphere Packaging Team Date: Tue Nov 26 16:16:17 2024 +0300 import graphene-1.10.6-9.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1dbbe0a --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/graphene-1.10.6.tar.xz diff --git a/.graphene.metadata b/.graphene.metadata new file mode 100644 index 0000000..de0fa9c --- /dev/null +++ b/.graphene.metadata @@ -0,0 +1 @@ +0bce9014096441fb771db0bc66587d7440190fa5 SOURCES/graphene-1.10.6.tar.xz diff --git a/SOURCES/graphene-1.10.6-perf-aarch64.patch b/SOURCES/graphene-1.10.6-perf-aarch64.patch new file mode 100644 index 0000000..a64620a --- /dev/null +++ b/SOURCES/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/SOURCES/graphene-1.10.6-perf.patch b/SOURCES/graphene-1.10.6-perf.patch new file mode 100644 index 0000000..7f6a66e --- /dev/null +++ b/SOURCES/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/SPECS/graphene.spec new file mode 100644 index 0000000..dad9d1e --- /dev/null +++ b/SPECS/graphene.spec @@ -0,0 +1,203 @@ +Name: graphene +Version: 1.10.6 +Release: 9%{?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 +BuildRequires: gtk-doc +BuildRequires: meson >= 0.50.1 +BuildRequires: pkgconfig(gobject-2.0) >= 2.30.0 + +%description +Graphene provides a small set of mathematical types needed to implement graphic +libraries that deal with 2D and 3D transformations and projections. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%package tests +Summary: Tests for the %{name} package +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description tests +The %{name}-tests package contains tests that can be used to verify +the functionality of the installed %{name} package. + +%prep +%autosetup -p1 + +%build +# Disable neon +# https://github.com/ebassi/graphene/issues/215 +%meson -Dgtk_doc=true \ +%ifarch %{arm} + -Darm_neon=false \ +%endif + +%meson_build + +%install +%meson_install + +%check +%meson_test + +%files +%license LICENSE.txt +%doc README.md +%{_libdir}/girepository-1.0/ +%{_libdir}/libgraphene-1.0.so.0* + +%files devel +%{_includedir}/graphene-1.0/ +%dir %{_libdir}/graphene-1.0 +%{_libdir}/graphene-1.0/include/ +%{_libdir}/libgraphene-1.0.so +%{_libdir}/pkgconfig/graphene-1.0.pc +%{_libdir}/pkgconfig/graphene-gobject-1.0.pc +%{_datadir}/gir-1.0/ +%{_datadir}/gtk-doc/ + +%files tests +%{_libexecdir}/installed-tests/ +%{_datadir}/installed-tests/ + +%changelog +* 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 + +* Tue Mar 09 2021 Nicolas Chauvet - 1.10.4-2 +- Disable neon for graphene on armv7hl +- Add meson_test + +* Wed Feb 10 2021 Kalev Lember - 1.10.4-1 +- Update to 1.10.4 + +* Tue Jan 26 2021 Fedora Release Engineering - 1.10.2-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Sep 28 2020 Jeff Law - 1.10.2-5 +- Re-enable LTO as upstream GCC target/96939 has been fixed + +* Mon Aug 10 2020 Jeff Law - 1.10.2-4 +- Disable LTO for now + +* Sat Aug 01 2020 Fedora Release Engineering - 1.10.2-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 1.10.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jun 22 2020 Kalev Lember - 1.10.2-1 +- Update to 1.10.2 +- Enable gtk-doc support + +* Wed Jan 29 2020 Fedora Release Engineering - 1.10.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sun Sep 08 2019 Kalev Lember - 1.10.0-1 +- Update to 1.10.0 + +* Tue Aug 13 10:06:51 CEST 2019 Igor Gnatenko - 1.9.6-1 +- Update to 1.9.6 + +* Thu Jul 25 2019 Fedora Release Engineering - 1.9.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jun 19 2019 Kalev Lember - 1.9.4-1 +- Update to 1.9.4 + +* Tue May 14 2019 Kalev Lember - 1.9.2-1 +- Update to 1.9.2 + +* Tue May 07 2019 Kalev Lember - 1.9.1-0.1.git5a4531b +- Update to 1.9.1 git snapshot + +* Tue Mar 05 2019 Kalev Lember - 1.8.6-1 +- Update to 1.8.6 + +* Sun Feb 17 2019 Igor Gnatenko - 1.8.4-1 +- Update to 1.8.4 + +* Fri Feb 01 2019 Fedora Release Engineering - 1.8.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 1.8.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jun 26 2018 Kalev Lember - 1.8.2-1 +- Update to 1.8.2 + +* Fri Feb 23 2018 Kalev Lember - 1.8.0-1 +- Update to 1.8.0 +- Drop ldconfig scriptlets + +* Wed Feb 07 2018 Fedora Release Engineering - 1.6.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Aug 02 2017 Fedora Release Engineering - 1.6.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu Mar 02 2017 Kalev Lember - 1.6.0-1 +- Update to 1.6.0 + +* Mon Feb 27 2017 Kalev Lember - 1.5.4-3 +- Build for ppc64 again now that gcc ICE is fixed + +* Fri Feb 10 2017 Fedora Release Engineering - 1.5.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 10 2017 Kalev Lember - 1.5.4-1 +- Update to 1.5.4 + +* Mon Jan 02 2017 Igor Gnatenko - 1.5.2-1 +- Update to 1.5.2 + +* Tue Nov 22 2016 Kalev Lember - 1.5.1-0.2.git8a7a4a3 +- Install installed tests to libexecdir (#1397317) + +* Tue Nov 22 2016 Kalev Lember - 1.5.1-0.1.git8a7a4a3 +- Initial Fedora packaging