# # spec file for package perl-Map-Tube # # Copyright (c) 2025 SUSE LLC # # 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 https://bugs.opensuse.org/ # %define cpan_name Map-Tube Name: perl-Map-Tube Version: 4.100.0 Release: 0 # 4.10 -> normalize -> 4.100.0 %define cpan_version 4.10 License: Artistic-2.0 Summary: Lightweight Routing Framework URL: https://metacpan.org/release/%{cpan_name} Source0: https://cpan.metacpan.org/authors/id/M/MA/MANWAR/%{cpan_name}-%{cpan_version}.tar.gz Source1: cpanspec.yml Source100: README.md BuildArch: noarch BuildRequires: perl BuildRequires: perl-macros BuildRequires: perl(Data::Compare) >= 1.250 BuildRequires: perl(File::ShareDir) >= 1.114 BuildRequires: perl(File::ShareDir::Install) >= 0.130 BuildRequires: perl(Graph) BuildRequires: perl(JSON::MaybeXS) BuildRequires: perl(Map::Tube::Exception) >= 3.240 BuildRequires: perl(Map::Tube::Plugin::Formatter) >= 0.160 BuildRequires: perl(Module::Pluggable) >= 5.100 BuildRequires: perl(Moo) >= 2.000000 BuildRequires: perl(Moo::Role) >= 2.000000 BuildRequires: perl(MooX::Options) >= 4.23.0 BuildRequires: perl(Role::Tiny) >= 2.000000 BuildRequires: perl(Test::Exception) BuildRequires: perl(Test::Lib) BuildRequires: perl(Test::More) >= 1.001014 BuildRequires: perl(Throwable) BuildRequires: perl(Try::Tiny) BuildRequires: perl(Type::Tiny) >= 1.000005 BuildRequires: perl(XML::Parser) >= 2.230 BuildRequires: perl(XML::Twig) >= 3.480 BuildRequires: perl(namespace::autoclean) >= 0.280 Requires: perl(Data::Compare) >= 1.250 Requires: perl(File::ShareDir) >= 1.114 Requires: perl(JSON::MaybeXS) Requires: perl(Map::Tube::Exception) >= 3.240 Requires: perl(Map::Tube::Plugin::Formatter) >= 0.160 Requires: perl(Module::Pluggable) >= 5.100 Requires: perl(Moo) >= 2.000000 Requires: perl(Moo::Role) >= 2.000000 Requires: perl(MooX::Options) >= 4.23.0 Requires: perl(Role::Tiny) >= 2.000000 Requires: perl(Throwable) Requires: perl(Try::Tiny) Requires: perl(Type::Tiny) >= 1.000005 Requires: perl(XML::Parser) >= 2.230 Requires: perl(XML::Twig) >= 3.480 Requires: perl(namespace::autoclean) >= 0.280 Provides: perl(Map::Tube) = %{version} Provides: perl(Map::Tube::Cookbook) = %{version} Provides: perl(Map::Tube::Line) = %{version} Provides: perl(Map::Tube::Node) = %{version} Provides: perl(Map::Tube::Pluggable) = %{version} Provides: perl(Map::Tube::Route) = %{version} Provides: perl(Map::Tube::Table) = %{version} Provides: perl(Map::Tube::Types) = %{version} Provides: perl(Map::Tube::Utils) = %{version} Provides: perl(Test::Map::Tube) = %{version} %undefine __perllib_provides %{perl_requires} %description The core module defined as Role (Moo) to process the map data. It provides the interface to find the shortest route in terms of stoppage between two nodes.Also you can get all possible routes between two given nodes. If you are keen to know the internals of Map::Tube then please follow the note documented in Map::Tube::Cookbook. %prep %autosetup -n %{cpan_name}-%{cpan_version} -p1 find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644 %build perl Makefile.PL INSTALLDIRS=vendor %make_build %check make test %install %perl_make_install %perl_process_packlist %perl_gen_filelist %files -f %{name}.files %doc Changes README %license LICENSE %changelog