summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libsigsegv')
-rw-r--r--dev-libs/libsigsegv/Manifest2
-rw-r--r--dev-libs/libsigsegv/files/libsigsegv-2.14-c99.patch79
-rw-r--r--dev-libs/libsigsegv/libsigsegv-2.12-r1.ebuild38
-rw-r--r--dev-libs/libsigsegv/libsigsegv-2.13.ebuild2
-rw-r--r--dev-libs/libsigsegv/libsigsegv-2.14-r1.ebuild40
-rw-r--r--dev-libs/libsigsegv/libsigsegv-2.14.ebuild36
-rw-r--r--dev-libs/libsigsegv/metadata.xml2
7 files changed, 158 insertions, 41 deletions
diff --git a/dev-libs/libsigsegv/Manifest b/dev-libs/libsigsegv/Manifest
index 8af76bb8dc6f..6f944b7a9ffe 100644
--- a/dev-libs/libsigsegv/Manifest
+++ b/dev-libs/libsigsegv/Manifest
@@ -1,2 +1,2 @@
-DIST libsigsegv-2.12.tar.gz 451408 BLAKE2B 3f2f37965dfdd5f8a7db3d5baff975003200e7ab157498524f8c99c60c285a5a8a1cf978ff3a69977d52604dc44493ac6d6d00476fca3380b285282b35873f99 SHA512 27986e8aaf4357ed131032aa7c281a5a28c5759530c62bb76f034aea33959547dcaae805e06347a1f532f0488b72fbbbdac4400f74e8d3f2128511526e8a5913
DIST libsigsegv-2.13.tar.gz 460736 BLAKE2B 2202ef92e96b2b46d7496a69427159b06b0413e9610daa9bc035dd18f193fd650a06dcc5a2db3b36b6c68f95593f2da047579e644d5ca4e54bc17160a57dac8f SHA512 9c0cf01ee2a39f77f2e42eb06a2aa60644e10fe2cd39089de58f6206baf7fe7d61fe0ec6bf187276fcfccf61585154ce904fe374b474b7ba9fa050a61a2f3918
+DIST libsigsegv-2.14.tar.gz 464658 BLAKE2B 1b6d93dc5414c686de458cc62412c95ebf8932aac3aa463bb76da67e1b25779880d760b229d9a2c6ee0a2a22c2d3c7a81a364e8731fe5a4f1f639a0f68d6ea57 SHA512 423dade56636fe38356f0976e1288178cb1c7c059615e9f70ad693a1e4194feba47a583b0804717e95a866da271b1ea5f80083c54a121577983dd23e5aa9f056
diff --git a/dev-libs/libsigsegv/files/libsigsegv-2.14-c99.patch b/dev-libs/libsigsegv/files/libsigsegv-2.14-c99.patch
new file mode 100644
index 000000000000..73eb0ab8ca9b
--- /dev/null
+++ b/dev-libs/libsigsegv/files/libsigsegv-2.14-c99.patch
@@ -0,0 +1,79 @@
+https://bugs.gentoo.org/855953
+https://bugs.gentoo.org/893896
+https://git.savannah.gnu.org/gitweb/?p=libsigsegv.git;a=commit;h=3030c472c9d7e1ffb2c6ce8c815545146a6ff8b8
+https://git.savannah.gnu.org/gitweb/?p=libsigsegv.git;a=commit;h=bfa4d54ddbd8caabbe2e9a943395905e40f45f00
+
+From 3030c472c9d7e1ffb2c6ce8c815545146a6ff8b8 Mon Sep 17 00:00:00 2001
+From: Bruno Haible <bruno@clisp.org>
+Date: Sat, 11 Feb 2023 18:43:46 +0100
+Subject: [PATCH] Don't let configure tests fail due to the picky clang 16
+ compiler.
+
+clang 16 will report an error for -Wincompatible-function-pointer-types
+by default.
+
+Reported by Sam James <sam@gentoo.org> in
+<https://savannah.gnu.org/bugs/index.php?63788>.
+
+* configure.ac (MacOSX/Darwin7 PowerPC): Add a cast when assigning to
+action.sa_sigaction.
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,7 +1,7 @@
+ dnl Autoconf configuration for libsigsegv.
+ dnl Process this file with autoconf to produce a configure script.
+ dnl
+-dnl Copyright (C) 2002-2022 Bruno Haible <bruno@clisp.org>
++dnl Copyright (C) 2002-2023 Bruno Haible <bruno@clisp.org>
+ dnl
+ dnl This program is free software: you can redistribute it and/or modify
+ dnl it under the terms of the GNU General Public License as published by
+@@ -238,7 +238,7 @@ SV_TRY_FAULT([MacOSX/Darwin7 PowerPC], sv_cv_fault_macosdarwin7_ppc,
+ [#include "$srcdir/src/fault-macosdarwin7-powerpc.c"],
+ [int sig, siginfo_t *sip, ucontext_t *ucp],
+ [get_fault_addr (sip, ucp)],
+- [action.sa_sigaction = &sigsegv_handler;
++ [action.sa_sigaction = (void (*) (int, siginfo_t *, void *)) &sigsegv_handler;
+ action.sa_flags = SA_SIGINFO;])
+
+ if test "$sv_cv_fault_macosdarwin7_ppc" != yes; then
+--
+2.17.1
+
+From bfa4d54ddbd8caabbe2e9a943395905e40f45f00 Mon Sep 17 00:00:00 2001
+From: Bruno Haible <bruno@clisp.org>
+Date: Thu, 29 Jun 2023 11:24:26 +0200
+Subject: [PATCH] Make the autoconf tests more robust.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf8
+Content-Transfer-Encoding: 8bit
+
+Triggered by
+https://gitlab.com/redhat/centos-stream/rpms/libsigsegv/-/blob/c9s/configure.patch
+from Petr Å abata <contyk@redhat.com>.
+
+* m4/fault.m4 (SV_TRY_FAULT): Mark the variables that are accessed by
+the signal handler as 'volatile'.
+--- 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 <bruno@clisp.org>
++# fault.m4 serial 10 (libsigsegv-2.15)
++dnl Copyright (C) 2002-2003, 2011, 2017, 2023 Bruno Haible <bruno@clisp.org>
+ 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);
+--
+2.17.1
diff --git a/dev-libs/libsigsegv/libsigsegv-2.12-r1.ebuild b/dev-libs/libsigsegv/libsigsegv-2.12-r1.ebuild
deleted file mode 100644
index fa9e96f3ff2d..000000000000
--- a/dev-libs/libsigsegv/libsigsegv-2.12-r1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools
-
-DESCRIPTION="Library for handling page faults in user mode"
-HOMEPAGE="https://www.gnu.org/software/libsigsegv/"
-SRC_URI="mirror://gnu/libsigsegv/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
-IUSE=""
-
-PATCHES=(
- # Bug #363503
- "${FILESDIR}/${P}-skip-stackoverflow-tests.patch"
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-src_configure() {
- econf --enable-shared
-}
-
-src_test() {
- emake check
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- dodoc AUTHORS ChangeLog* NEWS PORTING README
-}
diff --git a/dev-libs/libsigsegv/libsigsegv-2.13.ebuild b/dev-libs/libsigsegv/libsigsegv-2.13.ebuild
index 39ea9cb5d0b9..9fdfa95ea4b3 100644
--- a/dev-libs/libsigsegv/libsigsegv-2.13.ebuild
+++ b/dev-libs/libsigsegv/libsigsegv-2.13.ebuild
@@ -11,7 +11,7 @@ SRC_URI="mirror://gnu/libsigsegv/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
PATCHES=(
# Bug #363503
diff --git a/dev-libs/libsigsegv/libsigsegv-2.14-r1.ebuild b/dev-libs/libsigsegv/libsigsegv-2.14-r1.ebuild
new file mode 100644
index 000000000000..fe96f4358062
--- /dev/null
+++ b/dev-libs/libsigsegv/libsigsegv-2.14-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Library for handling page faults in user mode"
+HOMEPAGE="https://www.gnu.org/software/libsigsegv/"
+SRC_URI="mirror://gnu/libsigsegv/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-c99.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf --enable-shared
+
+ if tc-is-cross-compiler && [[ ${CHOST} == sparc64* ]] ; then
+ # Tries to use fault-linux-sparc-old.h otherwise which is
+ # for non-POSIX systems.
+ # bug #833469
+ sed -i -e "s:fault-linux-sparc-old.h:fault-linux-sparc.h:" config.status config.h.in config.h || die
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ rm -f "${ED}/usr/$(get_libdir)"/*.la || die
+ dodoc AUTHORS ChangeLog* NEWS PORTING README
+}
diff --git a/dev-libs/libsigsegv/libsigsegv-2.14.ebuild b/dev-libs/libsigsegv/libsigsegv-2.14.ebuild
new file mode 100644
index 000000000000..8d7a00e8165c
--- /dev/null
+++ b/dev-libs/libsigsegv/libsigsegv-2.14.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Library for handling page faults in user mode"
+HOMEPAGE="https://www.gnu.org/software/libsigsegv/"
+SRC_URI="mirror://gnu/libsigsegv/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf --enable-shared --disable-static
+
+ if tc-is-cross-compiler && [[ ${CHOST} == sparc64* ]] ; then
+ # Tries to use fault-linux-sparc-old.h otherwise which is
+ # for non-POSIX systems.
+ # bug #833469
+ sed -i -e "s:fault-linux-sparc-old.h:fault-linux-sparc.h:" config.status config.h.in config.h || die
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ rm -f "${ED}/usr/$(get_libdir)"/*.la || die
+ dodoc AUTHORS ChangeLog* NEWS PORTING README
+}
diff --git a/dev-libs/libsigsegv/metadata.xml b/dev-libs/libsigsegv/metadata.xml
index 12e1f06e4ed5..8d664c540edc 100644
--- a/dev-libs/libsigsegv/metadata.xml
+++ b/dev-libs/libsigsegv/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>common-lisp@gentoo.org</email>