aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2024-02-21 14:12:43 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2024-02-21 15:06:03 +0000
commit8f5ec999b4169a39c7489bae766529621affcdeb (patch)
treefce262de2dca47b87ec0eebd278579cc151785ea
parent38e70588aad9d77e8d41511c778bf835d2af8786 (diff)
downloadports-8f5ec999b4169a39c7489bae766529621affcdeb.tar.gz
ports-8f5ec999b4169a39c7489bae766529621affcdeb.zip
devel/p5-meta: Add p5-meta 0.004
meta provides an API for metaprogramming; that is, allowing code to inspect or manipulate parts of its own program structure. Parts of the perl interpreter itself can be accessed by means of "meta"-objects provided by this package. Methods on these objects allow inspection of details, as well as creating new items or removing existing ones. The intention of this API is to provide a nicer replacement for existing tricks such as no strict 'refs' and using globrefs, and also to be a more consistent place to add new abilities, such as more APIs for inspection and alteration of internal structures, metaprogramming around the new 'class' feature, and other such uses.
-rw-r--r--devel/Makefile1
-rw-r--r--devel/p5-meta/Makefile24
-rw-r--r--devel/p5-meta/distinfo3
-rw-r--r--devel/p5-meta/pkg-descr11
-rw-r--r--devel/p5-meta/pkg-plist3
5 files changed, 42 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index e8744e049fed..8ccf2748b117 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -3846,6 +3846,7 @@
SUBDIR += p5-match-simple
SUBDIR += p5-match-simple-XS
SUBDIR += p5-mem
+ SUBDIR += p5-meta
SUBDIR += p5-mixin
SUBDIR += p5-mocked
SUBDIR += p5-multidimensional
diff --git a/devel/p5-meta/Makefile b/devel/p5-meta/Makefile
new file mode 100644
index 000000000000..75634d65b6a1
--- /dev/null
+++ b/devel/p5-meta/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= meta
+PORTVERSION= 0.004
+CATEGORIES= devel perl5
+MASTER_SITES= CPAN
+MASTER_SITE_SUBDIR= CPAN:PEVANS
+PKGNAMEPREFIX= p5-
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Meta-programming API
+WWW= https://metacpan.org/dist/meta
+
+LICENSE= ART10 GPLv1+
+LICENSE_COMB= dual
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+TEST_DEPENDS= p5-Test2-Suite>=0:devel/p5-Test2-Suite
+
+USES= perl5
+USE_PERL5= modbuild
+
+post-install:
+ ${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/meta/meta.so
+
+.include <bsd.port.mk>
diff --git a/devel/p5-meta/distinfo b/devel/p5-meta/distinfo
new file mode 100644
index 000000000000..91a64f08b0fe
--- /dev/null
+++ b/devel/p5-meta/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1708448810
+SHA256 (meta-0.004.tar.gz) = b609dc92075a8d0cea481e9f2a2b60270e949a43bf9f4cbe288a7e9cf30d4fb8
+SIZE (meta-0.004.tar.gz) = 23256
diff --git a/devel/p5-meta/pkg-descr b/devel/p5-meta/pkg-descr
new file mode 100644
index 000000000000..65ce8e5c56e4
--- /dev/null
+++ b/devel/p5-meta/pkg-descr
@@ -0,0 +1,11 @@
+meta provides an API for metaprogramming; that is, allowing code to inspect or
+manipulate parts of its own program structure. Parts of the perl interpreter
+itself can be accessed by means of "meta"-objects provided by this package.
+Methods on these objects allow inspection of details, as well as creating new
+items or removing existing ones.
+
+The intention of this API is to provide a nicer replacement for existing tricks
+such as no strict 'refs' and using globrefs, and also to be a more consistent
+place to add new abilities, such as more APIs for inspection and alteration of
+internal structures, metaprogramming around the new 'class' feature, and other
+such uses.
diff --git a/devel/p5-meta/pkg-plist b/devel/p5-meta/pkg-plist
new file mode 100644
index 000000000000..2611561c7511
--- /dev/null
+++ b/devel/p5-meta/pkg-plist
@@ -0,0 +1,3 @@
+%%SITE_ARCH%%/auto/meta/meta.so
+%%SITE_ARCH%%/meta.pm
+%%PERL5_MAN3%%/meta.3.gz