File perl-App-Info.spec of Package perl-App-Info
#
# spec file for package perl-App-Info
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: perl-App-Info
Version: 0.57
Release: 0
%define cpan_name App-Info
Summary: Information about software packages on a system
License: Artistic-1.0 or GPL-1.0+
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/App-Info/
Source0: http://www.cpan.org/authors/id/D/DW/DWHEELER/%{cpan_name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(Module::Build) >= 0.270100
Recommends: perl(Test::Pod) >= 1.41
%{perl_requires}
%description
App::Info is an abstract base class designed to provide a generalized
interface for subclasses that provide meta data about software packages
installed on a system. The idea is that these classes can be used in Perl
application installers in order to determine whether software dependencies
have been fulfilled, and to get necessary meta data about those software
packages.
App::Info provides an event model for handling events triggered by
App::Info subclasses. The events are classified as "info", "error",
"unknown", and "confirm" events, and multiple handlers may be specified to
handle any or all of these event types. This allows App::Info clients to
flexibly handle events in any way they deem necessary. Implementing new
event handlers is straight-forward, and use the triggering of events by
App::Info subclasses is likewise kept easy-to-use.
A few sample subclasses are provided with the distribution, but others are
invited to write their own subclasses and contribute them to the CPAN.
Contributors are welcome to extend their subclasses to provide more
information relevant to the application for which data is to be provided
(see App::Info::HTTPD::Apache for an example), but are encouraged to, at a
minimum, implement the abstract methods defined here and in the category
abstract base classes (e.g., App::Info::HTTPD and App::Info::Lib). See
Subclassing for more information on implementing new subclasses.
%prep
%setup -q -n %{cpan_name}-%{version}
find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
%build
%{__perl} Build.PL installdirs=vendor optimize="%{optflags}"
./Build build flags=%{?_smp_mflags}
%check
./Build test
%install
./Build install destdir=%{buildroot} create_packlist=0
%perl_gen_filelist
%files -f %{name}.files
%defattr(-,root,root,755)
%doc Changes README.md
%changelog