ports/146972: New Port: devel/p5-ReadOnly-XS Companion to Readonly.pm

Ashish SHUKLA wahjava at gmail.com
Tue May 25 16:40:02 UTC 2010


>Number:         146972
>Category:       ports
>Synopsis:       New Port: devel/p5-ReadOnly-XS Companion to Readonly.pm
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue May 25 16:40:01 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Ashish SHUKLA
>Release:        FreeBSD 8.0-RELEASE-p2 amd64
>Organization:
N/A
>Environment:
System: FreeBSD chateau.d.if 8.0-RELEASE-p2 FreeBSD 8.0-RELEASE-p2 #3: Tue Mar 2 01:06:00 IST 2010 root at chateau.d.if:/usr/obj/usr/src/sys/CHATEAU amd64


>Description:
The Readonly module (q.v.) is an effective way to
create non-modifiable variables. However, it's
relatively slow.

The reason it's slow is that is implements the
read-only-ness of variables via tied objects.
This mechanism is inherently slow. Perl simply
has to do a lot of work under the hood to make
tied variables work.

This module corrects the speed problem, at least
with respect to scalar variables. When Readonly::XS
is installed, Readonly uses it to access the internals
of scalar variables. Instead of creating a scalar
variable object and tying it, Readonly simply flips the
SvREADONLY bit in the scalar's FLAGS structure.

WWW:	http://search.cpan.org/dist/Readonly-XS/
>How-To-Repeat:
>Fix:
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	p5-Readonly-XS
#	p5-Readonly-XS/pkg-descr
#	p5-Readonly-XS/Makefile
#	p5-Readonly-XS/pkg-plist
#	p5-Readonly-XS/distinfo
#
echo c - p5-Readonly-XS
mkdir -p p5-Readonly-XS > /dev/null 2>&1
echo x - p5-Readonly-XS/pkg-descr
sed 's/^X//' >p5-Readonly-XS/pkg-descr << 'af138cd451ff64c0c88e1d8c6755bd9b'
XThe Readonly module (q.v.) is an effective way to
Xcreate non-modifiable variables. However, it's
Xrelatively slow.
X
XThe reason it's slow is that is implements the
Xread-only-ness of variables via tied objects.
XThis mechanism is inherently slow. Perl simply
Xhas to do a lot of work under the hood to make
Xtied variables work.
X
XThis module corrects the speed problem, at least
Xwith respect to scalar variables. When Readonly::XS
Xis installed, Readonly uses it to access the internals
Xof scalar variables. Instead of creating a scalar
Xvariable object and tying it, Readonly simply flips the
XSvREADONLY bit in the scalar's FLAGS structure.
X
XWWW:	http://search.cpan.org/dist/Readonly-XS/
af138cd451ff64c0c88e1d8c6755bd9b
echo x - p5-Readonly-XS/Makefile
sed 's/^X//' >p5-Readonly-XS/Makefile << '1a36d454f7b29c8ffecbb5ee42dc362b'
X# New ports collection makefile for:	p5-Readonly-XS
X# Date created:		2010-05-25
X# Whom:			Ashish SHUKLA <wahjava at gmail.com>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	Readonly-XS
XPORTVERSION=	1.05
XCATEGORIES=	devel perl5
XMASTER_SITES=	CPAN
XPKGNAMEPREFIX=	p5-
X
XMAINTAINER=	wahjava at gmail.com
XCOMMENT=	Companion module for Readonly.pm
X
XPERL_CONFIGURE=	5.008+
X
XMAN3=	Readonly::XS.3
X
X.include <bsd.port.mk>
1a36d454f7b29c8ffecbb5ee42dc362b
echo x - p5-Readonly-XS/pkg-plist
sed 's/^X//' >p5-Readonly-XS/pkg-plist << 'e2bddfbf16193b13562b5c1fac4a205e'
X%%SITE_PERL%%/%%PERL_ARCH%%/Readonly/XS.pm
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/Readonly/XS/.packlist
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/Readonly/XS/XS.bs
X%%SITE_PERL%%/%%PERL_ARCH%%/auto/Readonly/XS/XS.so
X at dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Readonly/XS
X at dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Readonly
X at dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/Readonly
e2bddfbf16193b13562b5c1fac4a205e
echo x - p5-Readonly-XS/distinfo
sed 's/^X//' >p5-Readonly-XS/distinfo << '8346fc6a91d0779c985bed05dd492e85'
XMD5 (Readonly-XS-1.05.tar.gz) = df71f29abfcbd14c963f912d6d6ded6b
XSHA256 (Readonly-XS-1.05.tar.gz) = 8ae5c4e85299e5c8bddd1b196f2eea38f00709e0dc0cb60454dc9114ae3fff0d
XSIZE (Readonly-XS-1.05.tar.gz) = 8849
8346fc6a91d0779c985bed05dd492e85
exit

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list