Fix -Wall on XS::Typemap
[p5sagit/p5-mst-13.2.git] / ext / re / Makefile.PL
index f337db1..537704c 100644 (file)
@@ -4,10 +4,6 @@ use Config;
 
 my $object = 're_exec$(OBJ_EXT) re_comp$(OBJ_EXT) re$(OBJ_EXT)';
 
-if ($^O eq 'aix' && defined($Config{'ccversion'}) && $Config{'ccversion'} eq '3.6.6.0') {
-    $object .= ' ../../deb$(OBJ_EXT)';
-}
-
 WriteMakefile(
     NAME               => 're',
     VERSION_FROM       => 're.pm',
@@ -43,3 +39,22 @@ re_exec\$(OBJ_EXT) : re_exec.c
 
 EOF
 }
+
+sub MY::c_o {
+    my($self) = @_;
+    package MY; # so that "SUPER" works right
+    my $inh = $self->SUPER::c_o(@_);
+    use Config;
+    if ($Config{osname} eq 'aix' && $Config{ccversion} eq '5.0.1.0') {
+       # Known buggy optimizer.
+       my $cccmd = $self->const_cccmd;
+       $cccmd =~ s/^CCCMD\s*=\s*//;
+       $cccmd =~ s/\s\$\(OPTIMIZE\)\s/ /;
+       $inh .= qq{
+
+re_comp\$\(OBJ_EXT\): re_comp.c
+\t$cccmd \$(CCCDLFLAGS) -I\$(PERL_INC) \$(DEFINE) \$*.c
+};
+    }
+    $inh;
+}