git: 8456566af4bd - main - devel/p5-Data-MessagePack-Stream: Update to 1.05

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Tue, 26 Apr 2022 15:06:46 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8456566af4bd2dfb3c9ad5fc33e1017cf2db7d46

commit 8456566af4bd2dfb3c9ad5fc33e1017cf2db7d46
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2022-04-26 14:56:12 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2022-04-26 15:01:45 +0000

    devel/p5-Data-MessagePack-Stream: Update to 1.05
    
    - Add RUN_DEPENDS
    - Strip shared library
    
    Changes:        https://metacpan.org/dist/Data-MessagePack-Stream/changes
---
 devel/p5-Data-MessagePack-Stream/Makefile          | 30 ++++++++----
 devel/p5-Data-MessagePack-Stream/distinfo          |  5 +-
 .../files/patch-builder-MyBuilder.pm               | 53 ++++++++++++++++++++++
 3 files changed, 77 insertions(+), 11 deletions(-)

diff --git a/devel/p5-Data-MessagePack-Stream/Makefile b/devel/p5-Data-MessagePack-Stream/Makefile
index daf1eb6b5eb4..1a94b9b73720 100644
--- a/devel/p5-Data-MessagePack-Stream/Makefile
+++ b/devel/p5-Data-MessagePack-Stream/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	Data-MessagePack-Stream
-PORTVERSION=	0.07
-PORTREVISION=	2
+PORTVERSION=	1.05
 CATEGORIES=	devel perl5
 MASTER_SITES=	CPAN
 PKGNAMEPREFIX=	p5-
@@ -8,20 +7,33 @@ PKGNAMEPREFIX=	p5-
 MAINTAINER=	perl@FreeBSD.org
 COMMENT=	Perl extension for yet another messagepack streaming deserializer
 
-BROKEN_mips=		fails to build: atomic operations are not found
-BROKEN_mips64=		fails to build: atomic operations are not found
-BROKEN_sparc64=		fails to build: atomic operations are not found
+BROKEN_mips=	fails to build: atomic operations are not found
+BROKEN_mips64=	fails to build: atomic operations are not found
+BROKEN_sparc64=	fails to build: atomic operations are not found
 
-BUILD_DEPENDS=	p5-Data-MessagePack>0:devel/p5-Data-MessagePack
+BUILD_DEPENDS=	msgpack>=3.3.0:devel/msgpack \
+		p5-File-Which>=0:sysutils/p5-File-Which \
+		p5-Module-Build-XSUtil>=0:devel/p5-Module-Build-XSUtil \
+		${RUN_DEPENDS}
+LIB_DEPENDS=	libmsgpackc.so:devel/msgpack
+RUN_DEPENDS=	p5-Data-MessagePack>=0:devel/p5-Data-MessagePack
 
-USES=		perl5
-USE_PERL5=	configure
-MAKE_JOBS_UNSAFE=	yes
+USES=		localbase:ldflags perl5
+USE_PERL5=	modbuild
 
 CFLAGS_aarch64=	-fPIC
 CFLAGS_armv7=	-fPIC
 CFLAGS_i386=	-fPIC
 CFLAGS_powerpc=	-fPIC
 CFLAGS_riscv64=	-fPIC
+MAKE_JOBS_UNSAFE=	yes
+
+post-patch:
+	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/builder/MyBuilder.pm
+# Clean up bundled libraries
+	@${RM} -r ${WRKSRC}/msgpack-3.3.0/
+
+post-install:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Data/MessagePack/Stream/Stream.so
 
 .include <bsd.port.mk>
diff --git a/devel/p5-Data-MessagePack-Stream/distinfo b/devel/p5-Data-MessagePack-Stream/distinfo
index 0559ffdae947..69ef2ace2303 100644
--- a/devel/p5-Data-MessagePack-Stream/distinfo
+++ b/devel/p5-Data-MessagePack-Stream/distinfo
@@ -1,2 +1,3 @@
-SHA256 (Data-MessagePack-Stream-0.07.tar.gz) = ee74d16e39bef749d2d0c77e4ecdd9ff5fd476f805a834ed03ca38ce2841f382
-SIZE (Data-MessagePack-Stream-0.07.tar.gz) = 487074
+TIMESTAMP = 1650970283
+SHA256 (Data-MessagePack-Stream-1.05.tar.gz) = a7472ec1419d15b94e3b7b521587e5d89a06781df336c08e25a4c2fb01276bb4
+SIZE (Data-MessagePack-Stream-1.05.tar.gz) = 497270
diff --git a/devel/p5-Data-MessagePack-Stream/files/patch-builder-MyBuilder.pm b/devel/p5-Data-MessagePack-Stream/files/patch-builder-MyBuilder.pm
new file mode 100644
index 000000000000..9f090ca6b948
--- /dev/null
+++ b/devel/p5-Data-MessagePack-Stream/files/patch-builder-MyBuilder.pm
@@ -0,0 +1,53 @@
+--- builder/MyBuilder.pm.orig	2021-04-20 02:08:16 UTC
++++ builder/MyBuilder.pm
+@@ -9,48 +9,24 @@ use Config;
+ 
+ my $MSGPACK_VERSION = '3.3.0';
+ 
+-__PACKAGE__->add_property(_cmake => undef);
+-
+ sub new {
+     my ($class, %argv) = @_;
+ 
+-    my $cmake = which 'cmake';
+-    if (!$cmake) {
+-        die "Need 'cmake' command for building Data::MessagePack::Stream\n";
+-    }
+     my $self = $class->SUPER::new(
+         %argv,
+-        include_dirs => [catdir("msgpack-$MSGPACK_VERSION", 'include')],
++        include_dirs => [catdir('%%LOCALBASE%%', 'include')],
+         generate_ppport_h => catfile('lib', 'Data', 'MessagePack', 'ppport.h'),
+         cc_warnings => 1,
+     );
+-    $self->_cmake($cmake);
+     $self;
+ }
+ 
+-sub _build_msgpack {
+-    my $self = shift;
+-
+-    my @opt = qw(
+-        -DMSGPACK_ENABLE_SHARED=OFF
+-        -DMSGPACK_ENABLE_CXX=OFF
+-        -DMSGPACK_BUILD_EXAMPLES=OFF
+-        -DCMAKE_POSITION_INDEPENDENT_CODE=ON
+-    );
+-    chdir "msgpack-$MSGPACK_VERSION";
+-    my $ok = $self->do_system($self->_cmake, @opt, ".");
+-    $ok &&= $self->do_system($Config{make});
+-    chdir "..";
+-    $ok;
+-}
+-
+ sub ACTION_code {
+     my ($self, @argv) = @_;
+ 
+     my $spec = $self->_infer_xs_spec(catfile("lib", "Data", "MessagePack", "Stream.xs"));
+-    my $archive = catfile("msgpack-$MSGPACK_VERSION", "libmsgpackc.a");
++    my $archive = catfile("%%LOCALBASE%%/lib", "libmsgpackc.so");
+     if (!$self->up_to_date($archive, $spec->{lib_file})) {
+-        $self->_build_msgpack or die;
+         push @{$self->{properties}{objects}}, $archive; # XXX
+     }
+