#!perl use Cwd; use Config; use File::Copy; #warn __FILE__." in ".getcwd()."\n"; if ($^O eq 'MSWin32') { my $file; chmod(0666,'Makefile'); if ($Config{'cc'} =~ /gcc/) { $file = "win32/Makefile.gcc"; } else { $file = 'win32/Makefile.msc'; warn "Assuming ".$Config{'cc'}." is visual C of some kind\n"; } copy($file,"Makefile") || die "Cannot copy $file to Makefile: $!"; # overwrite zconf.h with original zconf.in.h copy("zconf.in.h", "zconf.h") || die "Cannot copy zconf.in.h to zconf.h: $!"; } else { $ENV{CC} = $Config{cc}; local $ENV{CFLAGS} = "$Config{ccflags} $Config{cccdlflags}"; system(sh => "./configure"); } my $seen_empty_rule; open my $fh, '<', 'Makefile' or die "Error opening Makefile: $!"; while(<$fh>) { if (/# Empty rule needed/) { $seen_empty_rule = 1; last; } } if (!$seen_empty_rule) { open my $ofh, '>>', 'Makefile' or die "Error appending to Makefile: $!"; print $ofh <<'EOF'; # Empty rule needed since ExtUtils::MakeMaker 7.18 (see https://rt.cpan.org/Ticket/Display.html?id=117800) test_dynamic: EOF close $ofh or die "Error closing Makefile: $!"; } 1;