]> git.decadent.org.uk Git - maypole.git/blobdiff - Makefile.PL
fixed apache_mvc.t to work with Apache2 (bug #29979 patch from Ben Hutchings)
[maypole.git] / Makefile.PL
index f6b9c7e9eeeec967d66c7655a784d4bf63fcbc83..5b7ca8b27547bd88f4a6fb4d81d6fa6fd15c08b2 100644 (file)
@@ -1,40 +1,66 @@
 use 5.006;
 use ExtUtils::MakeMaker;
+
 # See lib/ExtUtils/MakeMaker.pm for details of how to influence
 # the contents of the Makefile that is written.
 WriteMakefile(
-    NAME              => 'Maypole',
-    VERSION_FROM      => 'lib/Maypole.pm', # finds $VERSION
-    PREREQ_PM         => {
-        Class::DBI::Loader => '0.02',
-        Class::DBI::AbstractSearch => 0,
-        Class::DBI::Pager => 0,
-        Class::DBI::Plugin::RetrieveAll => 0,
-        Class::DBI::AsForm => 0,
-        Class::DBI::FromCGI => 0,
+    NAME         => 'Maypole',
+    VERSION_FROM => 'lib/Maypole.pm',    # finds $VERSION
+    PREREQ_PM    => {
+        Class::DBI::Loader               => '0.02',
+        Class::DBI::AbstractSearch       => 0,
+        Class::DBI::Pager                => 0,
+        Class::DBI::Plugin::RetrieveAll  => 0,
         Class::DBI::Loader::Relationship => 0,
-        CGI::Untaint => 0,
-        UNIVERSAL::moniker => 0,
-        UNIVERSAL::require => 0,
-        Apache::Request => 0,
-        Template => 0,
-    }, # e.g., Module::Name => 1.1
-    ($] >= 5.005 ?     ## Add these new keywords supported since 5.005
-      (ABSTRACT_FROM  => 'lib/Apache/MVC.pm', # retrieve abstract from module
-       AUTHOR         => 'Simon Cozens <simon@simon-cozens.org>') : ()),
+        Class::DBI                       => 0.96,
+        CGI::Untaint                     => 1.26,
+       CGI::Untaint::date               => 0,
+       CGI::Untaint::email              => 0,
+        UNIVERSAL::moniker               => 0,
+        UNIVERSAL::require               => 0,
+        URI                              => 0,
+        CGI::Simple                      => 0,
+       HTTP::Body                       => 0.5,
+       HTML::Tree                       => 0,
+        Template                         => 0,
+        Template::Plugin::Class          => 0,
+        Test::MockModule                 => 0,
+        Digest::MD5                     => 0,
+       File::MMagic::XS                 => 0.08,
+       Class::DBI::Plugin::Type         => 0,
+    },    # e.g., Module::Name => 1.1
+    (
+        $] >= 5.005
+        ?    ## Add these new keywords supported since 5.005
+          (
+            ABSTRACT_FROM => 'lib/Maypole.pm',   # retrieve abstract from module
+            AUTHOR => 'Aaron TEEJAY Trevena <aaron@aarontrevena.co.uk>'
+          )
+        : ()
+    ),
 );
 
-if (!-e "t/beerdb.db") {
+sub has_module {
+    my ($module, $version) = @_;
+    (my $file = "$module.pm") =~ s/::/\//g;
+    eval {require $file} or return;
+    return ($module->VERSION || 0) >= $version;
+}
+
+if ( !-e "t/beerdb.db" ) {
     print "Making SQLite DB\n";
-    eval { require DBD::SQLite };
-    die "No, wait, we don't have SQLite installed. Never mind\n" if $@;
+    my $driver = 'SQLite';
+    eval { require DBD::SQLite } or do {
+        print "Error loading DBD::SQLite, trying DBD::SQLite2\n";
+        eval {require DBD::SQLite2} ? $driver = 'SQLite2'
+            : die "DBD::SQLite2 is not installed";
+    };
     require DBI;
-    my $dbh = DBI->connect("dbi:SQLite:dbname=t/beerdb.db");
-
-    my $sql = join ( '', (<DATA>) );
+    my $dbh = DBI->connect("dbi:$driver:dbname=t/beerdb.db");
+    my $sql = join( '', (<DATA>) );
 
-    for my $statement (split /;/, $sql) {
-        $statement =~ s/\#.*$//mg; # strip # comments
+    for my $statement ( split /;/, $sql ) {
+        $statement =~ s/\#.*$//mg;           # strip # comments
         $statement =~ s/auto_increment//g;
         next unless $statement =~ /\S/;
         eval { $dbh->do($statement) };
@@ -53,12 +79,12 @@ create table brewery (
 
 create table beer (
     id integer auto_increment primary key,
-    brewery integereger,
-    style integereger, 
+    brewery integer,
+    style integer,
     name varchar(30),
     url varchar(120),
-#    tasted date,
-    score integereger(2),
+    tasted date,
+    score integer(2),
     price varchar(12),
     abv varchar(10),
     notes text
@@ -66,8 +92,8 @@ create table beer (
 
 create table handpump (
     id integer auto_increment primary key,
-    beer integereger,
-    pub integereger
+    beer integer,
+    pub integer
 );
 
 create table pub (