pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

p5-Perl-Unsafe-Signals: Import Perl::Unsafe::Signals v0.03 as wip/p5-Perl-Unsafe-Signals.



Module Name:	pkgsrc-wip
Committed By:	Brook Milligan <brook%nmsu.edu@localhost>
Pushed By:	brook
Date:		Mon Sep 13 14:32:27 2021 -0600
Changeset:	5317b0457a591de420edf901619f614f77582023

Modified Files:
	Makefile
Added Files:
	p5-Perl-Unsafe-Signals/DESCR
	p5-Perl-Unsafe-Signals/Makefile
	p5-Perl-Unsafe-Signals/distinfo

Log Message:
p5-Perl-Unsafe-Signals: Import Perl::Unsafe::Signals v0.03 as wip/p5-Perl-Unsafe-Signals.

Allows to enable unsafe signal delivery just for a short period of time.

In Perl 5.8.0 the so-called "safe signals" were introduced.  This
means that Perl no longer handles signals immediately but instead
"between opcodes", when it is safe to do so.  The earlier immediate
handling easily could corrupt the internal state of Perl, resulting in
mysterious crashes.

It's possible since perl 5.8.1 to globally disable this feature by
using the PERL_SIGNALS environment variables (as specified in
perlrun/PERL_SIGNALS); but there's no way to disable it locally, for a
short period of time. That's however something you might want to do,
if, for example, your Perl program calls a C routine that will
potentially run for a long time and for which you want to set a
timeout.

This module therefore allows you to define UNSAFE_SIGNALS blocks in
which signals will be handled "unsafely".

Note that, no matter how short you make the unsafe block, it will still
be unsafe. Use with caution.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=5317b0457a591de420edf901619f614f77582023

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                        |  1 +
 p5-Perl-Unsafe-Signals/DESCR    | 21 +++++++++++++++++++++
 p5-Perl-Unsafe-Signals/Makefile | 16 ++++++++++++++++
 p5-Perl-Unsafe-Signals/distinfo |  6 ++++++
 4 files changed, 44 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 8bfce28d0e..bb2b128dd2 100644
--- a/Makefile
+++ b/Makefile
@@ -2891,6 +2891,7 @@ SUBDIR+=	p5-PDL
 SUBDIR+=	p5-POD2-IT
 SUBDIR+=	p5-POSIX-strptime
 SUBDIR+=	p5-Packager-Utils
+SUBDIR+=	p5-Perl-Unsafe-Signals
 SUBDIR+=	p5-PerlIO-Layers
 SUBDIR+=	p5-Petal
 SUBDIR+=	p5-Plucene
diff --git a/p5-Perl-Unsafe-Signals/DESCR b/p5-Perl-Unsafe-Signals/DESCR
new file mode 100644
index 0000000000..799485d9cd
--- /dev/null
+++ b/p5-Perl-Unsafe-Signals/DESCR
@@ -0,0 +1,21 @@
+Allows to enable unsafe signal delivery just for a short period of time.
+
+In Perl 5.8.0 the so-called "safe signals" were introduced.  This
+means that Perl no longer handles signals immediately but instead
+"between opcodes", when it is safe to do so.  The earlier immediate
+handling easily could corrupt the internal state of Perl, resulting in
+mysterious crashes.
+
+It's possible since perl 5.8.1 to globally disable this feature by
+using the PERL_SIGNALS environment variables (as specified in
+perlrun/PERL_SIGNALS); but there's no way to disable it locally, for a
+short period of time. That's however something you might want to do,
+if, for example, your Perl program calls a C routine that will
+potentially run for a long time and for which you want to set a
+timeout.
+
+This module therefore allows you to define UNSAFE_SIGNALS blocks in
+which signals will be handled "unsafely".
+
+Note that, no matter how short you make the unsafe block, it will still
+be unsafe. Use with caution.
diff --git a/p5-Perl-Unsafe-Signals/Makefile b/p5-Perl-Unsafe-Signals/Makefile
new file mode 100644
index 0000000000..191383e21e
--- /dev/null
+++ b/p5-Perl-Unsafe-Signals/Makefile
@@ -0,0 +1,16 @@
+# $NetBSD$
+
+DISTNAME=	Perl-Unsafe-Signals-0.03
+PKGNAME=	p5-${DISTNAME}
+CATEGORIES=	devel perl5
+MASTER_SITES=	https://www.cpan.org/modules/by-module/Perl/
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	https://www.cpan.org/modules/by-module/Perl/
+COMMENT=	Enable unsafe signal delivery for short periods of time
+LICENSE=	${PERL5_LICENSE}
+
+PERL5_PACKLIST=	auto/Perl/Unsafe/Signals/.packlist
+
+.include "../../lang/perl5/module.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/p5-Perl-Unsafe-Signals/distinfo b/p5-Perl-Unsafe-Signals/distinfo
new file mode 100644
index 0000000000..12b295abf1
--- /dev/null
+++ b/p5-Perl-Unsafe-Signals/distinfo
@@ -0,0 +1,6 @@
+$NetBSD$
+
+SHA1 (Perl-Unsafe-Signals-0.03.tar.gz) = 7128b0822c0a906aa6a78653b828165ae19f4658
+RMD160 (Perl-Unsafe-Signals-0.03.tar.gz) = 6f65000df05106b5ebc21c185fcdc33510e852f1
+SHA512 (Perl-Unsafe-Signals-0.03.tar.gz) = 681d1cc8142ff39a4bfcf7066f3143428b9e54ed289f7bfd2adfdea3f5c8a9d77cad4f4c3116f262acf7964a15290e789146bbd747213fc83d8ccbeccb7abe6f
+Size (Perl-Unsafe-Signals-0.03.tar.gz) = 3157 bytes


Home | Main Index | Thread Index | Old Index