diff options
-rw-r--r-- | security/p5-Digest-Whirlpool/Makefile | 14 | ||||
-rw-r--r-- | security/p5-Digest-Whirlpool/files/extrapatch-Whirlpool.xs | 18 |
2 files changed, 30 insertions, 2 deletions
diff --git a/security/p5-Digest-Whirlpool/Makefile b/security/p5-Digest-Whirlpool/Makefile index 91bd99e637f2..1b7e4d3c79fd 100644 --- a/security/p5-Digest-Whirlpool/Makefile +++ b/security/p5-Digest-Whirlpool/Makefile @@ -13,12 +13,22 @@ PKGNAMEPREFIX= p5- MAINTAINER= gkovesdan@t-hosting.hu COMMENT= Perl extension for Whirlpool hash algorithm +BUILD_DEPENDS= ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 +RUN_DEPENDS= ${SITE_PERL}/${PERL_ARCH}/MIME/Base64.pm:${PORTSDIR}/converters/p5-MIME-Base64 + PERL_CONFIGURE= yes MAN3= Digest::Whirlpool.3 .include <bsd.port.pre.mk> -.if ${PERL_LEVEL} <= 500503 -IGNORE= requires Perl 5.6. Intall lang/perl5 or lang/perl5.8, and try again + +.if ${PERL_LEVEL} < 500600 +EXTRA_PATCHES= ${PATCHDIR}/extrapatch-Whirlpool.xs + +post-patch: + ${PERL} -pi -e 's/^our\s+([\$$\@\%]\w+)/use vars qw($$1); $$1/;' ${WRKSRC}/Whirlpool.pm + ${PERL} -pi -e '$$_="" if m{warnings}' ${WRKSRC}/Whirlpool.pm ${WRKSRC}/t/*.t + ${PERL} -pi -e 's/\)/, char **env\)/ if m{int main}' ${WRKSRC}/_whirlpool.c .endif + .include <bsd.port.post.mk> diff --git a/security/p5-Digest-Whirlpool/files/extrapatch-Whirlpool.xs b/security/p5-Digest-Whirlpool/files/extrapatch-Whirlpool.xs new file mode 100644 index 000000000000..ae8d00026cd8 --- /dev/null +++ b/security/p5-Digest-Whirlpool/files/extrapatch-Whirlpool.xs @@ -0,0 +1,18 @@ +--- Whirlpool.xs.orig Sat Dec 24 23:41:30 2005 ++++ Whirlpool.xs Sat Dec 24 23:42:16 2005 +@@ -4,6 +4,15 @@ + #include "ppport.h" + #include "_whirlpool.c" + ++/* try to be compatible with older perls */ ++/* SvPV_nolen() macro first defined in 5.005_55 */ ++/* this is slow, not threadsafe, but works */ ++#include "patchlevel.h" ++#if (PATCHLEVEL == 4) || ((PATCHLEVEL == 5) && (SUBVERSION < 55)) ++static STRLEN nolen_na; ++# define SvPV_nolen(sv) SvPV ((sv), nolen_na) ++#endif ++ + typedef struct whirlpool { + NESSIEstruct state; + }* Digest__Whirlpool; |