The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/bin/perl

use warnings;
use strict;
use Fcntl qw(O_CREAT O_RDONLY O_WRONLY O_TRUNC);

sysopen my $source, "xs/TMAP.xs", O_RDONLY or die "sysopen: $!";
sysopen my $target, "xs/apeitemlistmap.xs", O_CREAT | O_WRONLY | O_TRUNC or die "sysopen: $!";
while(<$source>) {
	s/_NAMESPACE_/TagLib::APE::ItemListMap/g; 
	s/_KEY_/TagLib::String/g; 
	s/_T_/TagLib::APE::Item/g;
	print $target $_;
}
close $source or warn "close: $!";
close $target or die "close: $!";