rpms/perl-forks/F-12 perl-forks-assertion.patch, NONE, 1.1 perl-forks.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Bernard Johnson bjohnson at fedoraproject.org
Mon Feb 1 20:55:26 UTC 2010


Author: bjohnson

Update of /cvs/pkgs/rpms/perl-forks/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv27468/F-12

Modified Files:
	.cvsignore sources 
Added Files:
	perl-forks-assertion.patch perl-forks.spec 
Log Message:
copy from devel branch


perl-forks-assertion.patch:
 signals.pm |   22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

--- NEW FILE perl-forks-assertion.patch ---
diff -urN forks-0.33/lib/forks/signals.pm forks-0.33-patch/lib/forks/signals.pm
--- forks-0.33/lib/forks/signals.pm	2009-03-27 19:13:59.000000000 +0200
+++ forks-0.33-patch/lib/forks/signals.pm	2009-08-19 11:31:00.000000000 +0300
@@ -109,14 +109,20 @@
 # Note: custom handler flags only currently applied to ifndef, as use with ifdef might
 # unexpectedly overwrite user flags, if user is using POSIX::sigaction to set signals.
 
-    if (defined $flags && ref($sig->{$k}) eq 'CODE') {
-        untie %SIG;
-        set_sig_handler($k, $sig->{$k}, {
-            flags => $flags,
-            safe  => $] < 5.008002 ? 0 : 1
-        });
-        tie %SIG, __PACKAGE__;
-    }
+
+#
+# SOMEHOW THIS F*CK UPS openSUSE 10.3 -> 11.1 perl (Some memory stuff?).
+# I don't know why this work on Ubuntu or anyone else?
+# If removed everything seems to work as expected.
+#
+    #if (defined $flags && ref($sig->{$k}) eq 'CODE') {
+    #    untie %SIG;
+    #    set_sig_handler($k, $sig->{$k}, {
+    #        flags => $flags,
+    #        safe  => $] < 5.008002 ? 0 : 1
+    #    });
+    #    tie %SIG, __PACKAGE__;
+    #}
     
     return $s;
 }


--- NEW FILE perl-forks.spec ---
Name:           perl-forks
Version:        0.33
Release:        3%{?dist}
Summary:        A drop-in replacement for Perl threads using fork()

Group:          Development/Libraries
License:        (GPL+ or Artistic) and (GPLv2+ or Artistic)
URL:            http://search.cpan.org/~rybskej/%{name}-%{version}/
Source0:        http://search.cpan.org/CPAN/authors/id/R/RY/RYBSKEJ/forks-%{version}.tar.gz
# https://bugzilla.novell.com/show_bug.cgi?id=527537
# https://bugzillafiles.novell.org/attachment.cgi?id=313860
# http://rt.cpan.org/Public/Bug/Display.html?id=49878
Patch0:         perl-forks-assertion.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  perl(ExtUtils::MakeMaker), perl(List::MoreUtils)
BuildRequires:  perl(Sys::SigAction) >= 0.11, perl(Acme::Damn)
BuildRequires:  perl(Devel::Symdump), perl(Test::More)
Requires:  perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))

# This provides is not getting picked up
Provides:       perl(forks::Devel::Symdump) = %{version}

%description
The forks.pm module is a drop-in replacement for threads.pm.  It has the
same syntax as the threads.pm module (it even takes over its namespace) but
has some significant differences:

- you do _not_ need a special (threaded) version of Perl
- it is _much_ more economic with memory usage on OS's that support COW
- it is more efficient in the startup of threads
- it is slightly less efficient in the stopping of threads
- it is less efficient in inter-thread communication

If for nothing else, it allows you to use the Perl threading model in
non-threaded Perl builds and in older versions of Perl (5.6.0 and
higher are supported).


%prep
%setup -q -n forks-%{version}

# see comments above for origin and upstream bug report
%if 0%{fedora} < 13
%patch0 -p1 -b .perl-forks-assertion
%endif


%build
find . -type f -print | xargs chmod a-x
%{__perl} Makefile.PL INSTALLDIRS=vendor OPTIMIZE="$RPM_OPT_FLAGS"
make %{?_smp_mflags}


%install
rm -rf $RPM_BUILD_ROOT
make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
find $RPM_BUILD_ROOT -type f -name '*.bs' -a -size 0 -exec rm -f {} ';'
find $RPM_BUILD_ROOT -depth -type d -exec rmdir {} 2>/dev/null ';'
chmod -R u+w $RPM_BUILD_ROOT/*


%check
make test


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root,-)
%doc CHANGELOG CREDITS README TODO
%{perl_vendorarch}/*
%exclude %dir %{perl_vendorarch}/auto/
%{_mandir}/man3/*.3*


%changelog
* Sun Jan 31 2010 Bernard Johnson <bjohnson at symetrix.com> - 0.33-3
- fix permissions in build to squelch rpmlint complaints
- add version to provides

* Tue Jan 19 2010 Bernard Johnson <bjohnson at symetrix.com> - 0.33-2
- fix BR
- add patch from novell site to fix assertion in fedora < 13
- change references of forks::Devel::Symdump to Devel::Symdump

* Fri Jun 06 2009 Bernard Johnson <bjohnson at symetrix.com> - 0.33-1
- initial release


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/perl-forks/F-12/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- .cvsignore	1 Feb 2010 20:49:54 -0000	1.1
+++ .cvsignore	1 Feb 2010 20:55:26 -0000	1.2
@@ -0,0 +1 @@
+forks-0.33.tar.gz


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/perl-forks/F-12/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- sources	1 Feb 2010 20:49:54 -0000	1.1
+++ sources	1 Feb 2010 20:55:26 -0000	1.2
@@ -0,0 +1 @@
+1f7a23987abd6df7ed5735badacffe99  forks-0.33.tar.gz



More information about the scm-commits mailing list