yaml_pp: new perl module recipe (version 0.39.0)

This commit is contained in:
Joachim Mairböck
2025-12-26 13:18:40 +01:00
parent f111939d2b
commit 4f9c86cf74

View File

@@ -0,0 +1,69 @@
SUMMARY="YAML 1.2 processor"
DESCRIPTION="YAML::PP is a modular YAML processor.
It aims to support YAML 1.2 and YAML 1.1. See https://yaml.org/. Some (rare) syntax elements are \
not yet supported and documented below.
YAML is a serialization language. The YAML input is called \"YAML Stream\". A stream consists of \
one or more \"Documents\", separated by a line with a document start marker ---. A document \
optionally ends with the document end marker ....
This allows one to process continuous streams additionally to a fixed input file or string.
The YAML::PP frontend will currently load all documents, and return only the first if called with \
scalar context.
The YAML backend is implemented in a modular way that allows one to add custom handling of YAML \
tags, perl objects and data types. The inner API is not yet stable. Suggestions welcome.
You can check out all current parse and load results from the yaml-test-suite here: \
https://perlpunk.github.io/YAML-PP-p5/test-suite.html"
HOMEPAGE="https://metacpan.org/pod/YAML::PP"
COPYRIGHT="2017-2022 by Tina Müller"
LICENSE="Artistic"
REVISION="1"
SOURCE_URI="https://cpan.metacpan.org/authors/id/T/TI/TINITA/YAML-PP-v$portVersion.tar.gz"
CHECKSUM_SHA256="32f53c65781277dcbe50827b4cbf217eceeff264779e3a6c98c94229eb149f58"
SOURCE_DIR="YAML-PP-v$portVersion"
ARCHITECTURES="any"
PROVIDES="
yaml_pp = $portVersion
cmd:yamlpp_events
cmd:yamlpp_highlight
cmd:yamlpp_load
cmd:yamlpp_load_dump
cmd:yamlpp_parse_emit
"
REQUIRES="
haiku
vendor_perl
"
BUILD_REQUIRES="
haiku_devel
"
BUILD_PREREQUIRES="
cmd:make
cmd:perl
"
TEST_REQUIRES="
test_warn
"
BUILD()
{
perl Makefile.PL PREFIX=$prefix
make
}
INSTALL()
{
make pure_install
# remove architecture-specific files
cd $prefix
rm -r $(perl -V:vendorarch | cut -d\' -f2 | cut -d/ -f5-)
# cut extracts the quoted string and strips the prefix (which is perl's and not ours)
}
TEST()
{
make test
}