diff --git a/libsigsegv-2.14-lto.patch b/libsigsegv-2.14-lto.patch new file mode 100644 index 0000000000000000000000000000000000000000..8b019dd26613e9a05529e4275d877183671f08b2 --- /dev/null +++ b/libsigsegv-2.14-lto.patch @@ -0,0 +1,46 @@ +From bfa4d54ddbd8caabbe2e9a943395905e40f45f00 Mon Sep 17 00:00:00 2001 +From: Bruno Haible +Date: Thu, 29 Jun 2023 11:24:26 +0200 +Subject: Make the autoconf tests more robust. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Triggered by +https://gitlab.com/redhat/centos-stream/rpms/libsigsegv/-/blob/c9s/configure.patch +from Petr Ĺ abata . + +* m4/fault.m4 (SV_TRY_FAULT): Mark the variables that are accessed by +the signal handler as 'volatile'. +--- + m4/fault.m4 | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +(limited to 'm4/fault.m4') + +diff --git a/m4/fault.m4 b/m4/fault.m4 +index 13afff0..335d5e2 100644 +--- a/m4/fault.m4 ++++ b/m4/fault.m4 +@@ -1,5 +1,5 @@ +-# fault.m4 serial 9 (libsigsegv-2.12) +-dnl Copyright (C) 2002-2003, 2011, 2017 Bruno Haible ++# fault.m4 serial 10 (libsigsegv-2.15) ++dnl Copyright (C) 2002-2003, 2011, 2017, 2023 Bruno Haible + dnl This file is free software, distributed under the terms of the GNU + dnl General Public License. As a special exception to the GNU General + dnl Public License, this file may be distributed as part of a program +@@ -52,8 +52,8 @@ static int zero_fd; + #else + # define SIGSEGV_FAULT_ADDRESS_ROUNDOFF_BITS 0UL + #endif +-unsigned long page; +-int handler_called = 0; ++unsigned long volatile page; ++int volatile handler_called = 0; + void sigsegv_handler ($5) + { + void *fault_address = (void *) ($6); +-- +cgit v1.2.3-70-g09d2 + diff --git a/libsigsegv.spec b/libsigsegv.spec index 026ada0bd646c8bc55a71c35cc70fcc91c133507..9bedd400a570693a52e146001c071373d905f431 100644 --- a/libsigsegv.spec +++ b/libsigsegv.spec @@ -1,12 +1,14 @@ Name: libsigsegv Version: 2.14 -Release: 1 +Release: 2 Summary: library for handling page faults in user mode -License: GPLv2+ +License: GPL-2.0-or-later URL: https://www.gnu.org/software/libsigsegv/ Source0: https://ftp.gnu.org/gnu/libsigsegv/libsigsegv-%{version}.tar.gz +Patch6001: libsigsegv-2.14-lto.patch -BuildRequires: libtool automake +BuildRequires: gcc make +BuildRequires: autoconf automake libtool %description Libsigsegv is a library for handling page faults in user mode. A page fault occurs @@ -23,8 +25,7 @@ This library supports three sets of functions, all defined in . %package devel Summary: Development libraries for libsigsegv Requires: %{name} = %{version}-%{release} - -Provides: %{name}-static +Provides: %{name}-static = %{version}-%{release} Obsoletes: %{name}-static < %{version}-%{release} %description devel @@ -34,34 +35,32 @@ This package is the development libraries and header files for libsigsegv. %autosetup -n %{name}-%{version} -p1 %build +autoreconf -fi %configure --enable-static --enable-shared --disable-silent-rules %make_build %install %make_install - -rm -f $RPM_BUILD_ROOT%{_libdir}/libsigsegv.la +%delete_la %check -make check - -%ldconfig_scriptlets +%make_build check %files -%defattr(-,root,root) %doc README AUTHORS NEWS %license COPYING %doc ChangeLog ChangeLog.1 %{_libdir}/libsigsegv.so.2* %files devel -%defattr(-,root,root) %{_includedir}/sigsegv.h %{_libdir}/libsigsegv.so %{_libdir}/libsigsegv.a - %changelog +* Mon Oct 14 2024 Funda Wang - 2.14-2 +- add upstream patch fixing building with lto + * Thu Nov 03 2022 fuanan - 2.14-1 - Type:enhancement - ID:NA diff --git a/libsigsegv.yaml b/libsigsegv.yaml index 77f40bdca547a7fab8d0861d2504ce3c160455c9..f7d2946212011d8565e8cf876f1fa8b3843dd389 100644 --- a/libsigsegv.yaml +++ b/libsigsegv.yaml @@ -1,4 +1,4 @@ version_control: git src_repo: https://git.savannah.gnu.org/git/libsigsegv.git tag_prefix: ^v -seperator: . +separator: .