Switch all S::U::blessed() calls to length(ref()), equivalent in our case
[p5sagit/Class-Accessor-Grouped.git] / Makefile.PL
index 8b78312..c6ee9cc 100644 (file)
@@ -1,27 +1,45 @@
-# $Id$
 use strict;
 use warnings;
-use inc::Module::Install 0.65;
+use inc::Module::Install 1;
 
 name 'Class-Accessor-Grouped';
 license 'perl';
-perl_version '5.006001';
+perl_version '5.006';
 all_from 'lib/Class/Accessor/Grouped.pm';
 
 requires 'Carp';
+requires 'Module::Runtime' => '0.012';
 requires 'Scalar::Util';
-requires 'MRO::Compat';
-requires 'Class::Inspector';
-requires 'Sub::Name' => '0.04';
+requires 'MRO::Compat' if $] < 5.009_005;
 
-test_requires 'Sub::Identify';
+if (can_cc or $Module::Install::AUTHOR) {
+  requires 'Sub::Name' => '0.05';
+
+  # when changing don't forget to adjust lib/Class/Accessor/Grouped.pm as well
+  requires 'Class::XSAccessor' => '1.13'
+    if $] > '5.008'; # CXSA does not work on 5.6
+}
+
+test_requires 'Test::More' => '0.94';
+test_requires 'Test::Exception' => '0.31';
 
 clean_files "Class-Accessor-Grouped-* t/var";
 
+if (-e 'MANIFEST.SKIP') {
+  system('pod2text lib/Class/Accessor/Grouped.pm > README');
+  realclean_files 'README';
+}
+
 auto_install;
 
-WriteMakefile(
-  dist => {
-    PREOP => 'pod2text lib/Class/Accessor/Grouped.pm > README'
-  }
-);
+resources repository => 'git://git.shadowcat.co.uk/p5sagit/Class-Accessor-Grouped.git';
+
+WriteAll;
+if ($Module::Install::AUTHOR) {
+  @{Meta->{values}{requires}} = grep
+    { $_->[0] !~ /^ (?: Class\:\:XSAccessor | Sub\:\:Name | MRO\:\:Compat ) $/x }
+    @{Meta->{values}{requires}}
+  ;
+  print "Regenerating META with XS requires excluded\n";
+  Meta->write;
+}