diff --git a/YAML-PP-0.029.tar.gz b/YAML-PP-0.029.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..5b0f6280a073d504c95edb5c0feba757c6d9c10e Binary files /dev/null and b/YAML-PP-0.029.tar.gz differ diff --git a/perl-YAML-PP.spec b/perl-YAML-PP.spec new file mode 100644 index 0000000000000000000000000000000000000000..d61aa6c8169b596f1485d4d765e7dcd4505ed22d --- /dev/null +++ b/perl-YAML-PP.spec @@ -0,0 +1,137 @@ +Name: perl-YAML-PP +Version: 0.029 +Release: 1 +Summary: YAML 1.2 processor +License: GPL+ or Artistic +URL: https://metacpan.org/release/YAML-PP/ +Source0: https://cpan.metacpan.org/authors/id/T/TI/TINITA/YAML-PP-%{version}.tar.gz +BuildArch: noarch +BuildRequires: coreutils +BuildRequires: findutils +BuildRequires: make +BuildRequires: perl-generators +BuildRequires: perl-interpreter +BuildRequires: perl(:VERSION) >= 5.8.0 +BuildRequires: perl(Config) +BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76 +BuildRequires: perl(strict) +BuildRequires: perl(warnings) +# Run-time +BuildRequires: perl(B) +BuildRequires: perl(B::Deparse) +BuildRequires: perl(base) +BuildRequires: perl(boolean) +BuildRequires: perl(Carp) +BuildRequires: perl(constant) +BuildRequires: perl(Data::Dumper) +BuildRequires: perl(Encode) +BuildRequires: perl(Exporter) +BuildRequires: perl(File::Basename) +BuildRequires: perl(Getopt::Long) +BuildRequires: perl(HTML::Entities) +BuildRequires: perl(JSON::PP) +BuildRequires: perl(MIME::Base64) +BuildRequires: perl(Module::Load) +BuildRequires: perl(overload) +BuildRequires: perl(Scalar::Util) >= 1.07 +BuildRequires: perl(Term::ANSIColor) >= 4.02 +BuildRequires: perl(Tie::Array) +BuildRequires: perl(Tie::Hash) +BuildRequires: perl(Tie::StdArray) +BuildRequires: perl(Tie::StdHash) +# Tests +BuildRequires: perl(blib) >= 1.01 +BuildRequires: perl(File::Spec) +BuildRequires: perl(FindBin) +BuildRequires: perl(IO::File) +BuildRequires: perl(IO::Handle) +BuildRequires: perl(IPC::Open3) +BuildRequires: perl(lib) +BuildRequires: perl(Test::Deep) +BuildRequires: perl(Test::More) >= 0.98 +BuildRequires: perl(Test::Warn) +BuildRequires: perl(Tie::IxHash) +Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) +Requires: perl(boolean) +Requires: perl(B::Deparse) +Requires: perl(Cpanel::JSON::XS) +Requires: perl(HTML::Entities) +Requires: perl(JSON::PP) +Requires: perl(JSON::XS) +Requires: perl(Scalar::Util) >= 1.07 +Requires: perl(Term::ANSIColor) +Requires: perl(Tie::IxHash) +Requires: perl(YAML::PP::Schema::Include) +Requires: perl-Test-Harness +# bin/yamlpp-load can use various YAML implementations on user's request: +Suggests: perl(YAML) +Suggests: perl(YAML::PP::LibYAML) +Suggests: perl(YAML::PP::LibYAML::Parser) +Suggests: perl(YAML::Syck) +Suggests: perl(YAML::Tiny) +Suggests: perl(YAML::XS) + +%global __requires_exclude %{?__requires_exclude:__requires_exclude|}^perl\\(Scalar::Util\\)$ +%global __requires_exclude %{__requires_exclude}|^perl\\(YAML::PP::Test)\s*$ +%global __provides_exclude_from %{?__provides_exclude_from:%__provides_exclude_from|}^%{_libexecdir} + +%description +YAML::PP is a modern, modular YAML processor. +It aims to support YAML 1.2 and YAML 1.1. See http://yaml.org/. + + +%prep +%setup -q -n YAML-PP-%{version} + +for i in $(find e* -type f); do + chmod -x "$i" + perl -i -MConfig -pe 's{\A#!.*perl}{$Config{startperl}}' "$i" +done + +# Help file to recognise the Perl scripts +for F in t/*.t; do + perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!.*perl\b}{$Config{startperl}}' "$F" + chmod +x "$F" +done + +%build +perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 +%{make_build} + +%install +%{make_install} +%{_fixperms} %{buildroot}/* + +# Install tests +mkdir -p %{buildroot}%{_libexecdir}/%{name} +cp -a t examples ext %{buildroot}%{_libexecdir}/%{name} +perl -i -pe 's{\$Bin/data/simple-out.yaml}{/tmp/simple-out.yaml}' %{buildroot}%{_libexecdir}/%{name}/t/19.file.t +perl -i -pe 's{\$Bin/data/simple.yaml.copy}{/tmp/simple.yaml.copy}' %{buildroot}%{_libexecdir}/%{name}/t/30.legacy.t + +# t/00.compile.t examines ./bin +mkdir -p %{buildroot}%{_libexecdir}/%{name}/bin +for F in yamlpp-events yamlpp-highlight yamlpp-load yamlpp-load-dump yamlpp-parse-emit; do + ln -s %{_bindir}/"$F" %{buildroot}%{_libexecdir}/%{name}/bin +done + +cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF' +#!/bin/sh +cd %{_libexecdir}/%{name} && exec prove -I . -j "$(getconf _NPROCESSORS_ONLN)" +EOF +chmod +x %{buildroot}%{_libexecdir}/%{name}/test + +%check +export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}') +make test + +%files +%license LICENSE +%doc Changes CONTRIBUTING.md etc examples README.md +%{_bindir}/* +%{perl_vendorlib}/* +%{_mandir}/man3/* +%{_libexecdir}/%{name} + +%changelog +* Mon Apr 18 2022 liweiganga - 0.029-1 +- init package diff --git a/perl-YAML-PP.yaml b/perl-YAML-PP.yaml new file mode 100644 index 0000000000000000000000000000000000000000..5098af532a65dcaec71664a1eba5c789fb444635 --- /dev/null +++ b/perl-YAML-PP.yaml @@ -0,0 +1,4 @@ +version_control: metacpan +src_repo: YAML-PP +tag_prefix: "^" +separator: "." \ No newline at end of file