For other-than-gcc, generate calls to check_new(...)
[p5sagit/Devel-Size.git] / Makefile.PL
index c17ab12..2f91101 100644 (file)
@@ -29,15 +29,13 @@ my %special = (
 
 open FH, ">$vtable_file" or die "Can't open $vtable_file: $!";
 foreach (sort keys %vtables) {
-    if ($special{$_}) {
-       print FH <<"EOT";
-#ifdef $special{$_}
-    &$_,
-#endif
-EOT
-    } else {
+    print FH "#ifdef $special{$_}\n" if ($special{$_});
+    if ($Config{gccversion}) {
        print FH "    &$_,\n";
+    } else {
+       print FH "    check_new(st, &$_);\n";
     }
+    print FH "#endif\n" if ($special{$_});
 }
 
 close FH or die "Error closing $vtable_file: $!";
@@ -46,7 +44,7 @@ WriteMakefile(
              NAME => 'Devel::Size',
              VERSION_FROM => 'lib/Devel/Size.pm',
              DEFINE => "-DALIGN_BITS=$ptr_bits",
-             ($ExtUtils::MakeMaker::VERSION >= 6.47 ? (MIN_PERL_VERSION => '5.008') : ()),
-             ($ExtUtils::MakeMaker::VERSION >= 6.31 ? (LICENSE => 'perl') : ()),
+             (eval $ExtUtils::MakeMaker::VERSION >= 6.47 ? (MIN_PERL_VERSION => '5.008') : ()),
+             (eval $ExtUtils::MakeMaker::VERSION >= 6.31 ? (LICENSE => 'perl') : ()),
              realclean => {FILES=> $vtable_file},
 );