X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;f=Makefile.PL;h=e5063e7e909b02ad00e79b2e4ec1baef1e22b085;hb=53fe8e9a125021e64ad9e65eb5afccb527c96138;hp=73516964b9a18c123dfbb1be09f7280a3d9ace7c;hpb=4ad67bfdb941df3d6c1084b27ed5037247ed2c0e;p=app-musicexpo.git diff --git a/Makefile.PL b/Makefile.PL index 7351696..e5063e7 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -1,27 +1,50 @@ -use 5.014; +use 5.014000; use ExtUtils::MakeMaker; +my @optionals = ( + qw/Audio::FLAC::Header 0 + Audio::Opusfile 0 + MP3::Info 0 + MP4::Info 0 + Ogg::Vorbis::Header::PurePerl 0/, +); + +sub is_installed { + my ($module) = @_; + eval "require $module" +} + +my @extra_prereqs; + +unless (grep \&is_installed, @optionals) { + my $answer = ''; + while (!$answer) { + my $yn = lc prompt 'None of the optional dependencies are installed. Install all of them? (default: y) [y/n]', 'y'; + $answer = $yn if $yn eq 'y' || $yn eq 'n'; + } + @extra_prereqs = @optionals if $answer eq 'y'; +} + WriteMakefile( - NAME => 'App::MusicExpo', - VERSION_FROM => 'lib/App/MusicExpo.pm', - PREREQ_PM => { - 'Audio::FLAC::Header' => 0, - 'HTML::Template::Compiled' => 0, - 'Memoize' => 0, - 'MP3::Tag' => 1.12, - 'DB_File' => 0, - 'Ogg::Vorbis::Header::PurePerl' => 0, - }, + NAME => 'App::MusicExpo', + VERSION_FROM => 'lib/App/MusicExpo.pm', + ABSTRACT_FROM => 'lib/App/MusicExpo.pm', + AUTHOR => 'Marius Gavrilescu ', + EXE_FILES => [ 'musicexpo' ], MIN_PERL_VERSION => 5.014, - SIGN => 1, - EXE_FILES => [ 'musicexpo' ], - LICENSE => 'perl', - ABSTRACT_FROM => 'lib/App/MusicExpo.pm', - AUTHOR => 'Marius Gavrilescu ', - META_MERGE => { - resources => { + LICENSE => 'perl', + SIGN => 1, + PREREQ_PM => { + qw/HTML::Template::Compiled 0 + Memoize 0 + DB_File 0/, + @extra_prereqs + }, + META_MERGE => { + dynamic_config => 1, + resources => { repository => 'http://git.ieval.ro/?p=app-musicexpo.git' }, - dynamic_config => 0, + recommends => { @optionals }, } );