perl-Pegex/perl-Pegex.spec

60 lines
2.0 KiB
RPMSpec
Raw Normal View History

%define perl_major_ver %(eval `perl -V:version`; echo ${version%*.[0-9]*}.0)
Name: perl-Pegex
Version: 0.75
Release: 1mamba
Summary: Pegex::Parser - Pegex Parser Runtime
Group: System/Libraries/Perl
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://www.cpan.org
Source: https://cpan.metacpan.org/authors/id/I/IN/INGY/Pegex-%{version}.tar.gz
License: GPL, Artistic
## AUTOBUILDREQ-BEGIN
BuildRequires: libperl
BuildRequires: perl-Scalar-List-Utils
BuildRequires: perl-devel
## AUTOBUILDREQ-END
BuildRequires: perl-YAML-PP
Requires: perl >= %perl_major_ver
%description
Pegex::Parser is the Pegex component that provides the parsing engine runtime. It requires a Grammar object and a Receiver object. It's parse() method takes an input that is expected to be matched by the grammar, and applies the grammar rules to the input. As the grammar is applied, the receiver is notified of matches. The receiver is free to do whatever it wishes, but often times it builds the data into a structure that is commonly known as a Parse Tree.
%prep
%setup -q -n Pegex-%{version}
%build
%{__perl} Makefile.PL PREFIX=%{_prefix} INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
%make
%make test
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall_perl
packlist=`find %{buildroot} -name .packlist`
[ -z "$packlist" ] && exit 1 || cat $packlist | \
sed "s,%{buildroot},,g;s,.*/man/.*,&.gz,g" | \
sort -u > .packlist && rm -f $packlist
strid=`echo $packlist | sed 's,.*auto\(.*\)/.packlist,\1,'`
for dir in `find %{buildroot} -type d | grep $strid`; do
echo "%dir ${dir#%buildroot}" >> .packlist
done
#find %{buildroot} -name *.so -exec chmod u+w {} \;
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%files -f .packlist
%defattr(-,root,root)
%doc LICENSE
%changelog
* Fri Oct 04 2024 Silvan Calarco <silvan.calarco@mambasoft.it> 0.75-1mamba
- package created using the webbuild interface