Merge branch 'topic/unified-method-generation-w-xs' of gitmo@moose.perl.org:Class...
[gitmo/Class-MOP.git] / Makefile.PL
index c79c4ca..729eee2 100644 (file)
@@ -25,7 +25,7 @@ test_requires 'File::Spec';
 test_requires 'Test::More'      => '0.88';
 test_requires 'Test::Exception' => '0.27';
 
-install_headers('mop.h');
+install_headers('mop.h'); # need Module::Install::XSUtil
 
 #extra_tests();
 
@@ -70,13 +70,16 @@ sub check_conflicts {
         'Moose' => '0.85',
     );
 
+    my $has_module_info = eval{ require Module::Info };
+    my $get_version     = $has_module_info
+        ? sub{ Module::Info->new_from_module($_[0])->version }
+        : sub{ eval qq{ require $_[0] } ? $_[0]->VERSION : undef };
+
     my $found = 0;
     for my $mod ( sort keys %conflicts ) {
-        eval "require $mod";
-        next if $@;
+        my $installed = $get_version->($mod);
 
-        my $installed = $mod->VERSION();
-        if ( $installed le $conflicts{$mod} ) {
+        if ( defined($installed) && $installed le $conflicts{$mod} ) {
 
             print <<"EOF";