Re: [perl #34493] h2ph `extern inline' problems
[p5sagit/p5-mst-13.2.git] / embed.pl
index 4ba0eb9..30cc3ad 100755 (executable)
--- a/embed.pl
+++ b/embed.pl
@@ -22,17 +22,17 @@ sub do_not_edit ($)
     my $years;
 
     if ($file eq 'embed.h') {
-        $years = '1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003';
+        $years = '1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004';
     } elsif ($file eq 'embedvar.h') {
-        $years = '1999, 2000, 2001, 2002, 2003';
+        $years = '1999, 2000, 2001, 2002, 2003, 2004';
     } elsif ($file eq 'global.sym') {
-        $years = '1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003';
+        $years = '1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004';
     } elsif ($file eq 'perlapi.c') {
         $years = '1999, 2000, 2001';
     } elsif ($file eq 'perlapi.h') {
-        $years = '1999, 2000, 2001, 2002, 2003';
+        $years = '1999, 2000, 2001, 2002, 2003, 2004';
     } elsif ($file eq 'proto.h') {
-        $years = '1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003';
+        $years = '1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004';
     }
 
     $years =~ s/1999,/1999,\n  / if length $years > 40;
@@ -55,6 +55,15 @@ Edit those files and run 'make regen_headers' to effect changes.
 
 EOW
 
+    $warning .= <<EOW if $file eq 'perlapi.c';
+
+Up to the threshold of the door there mounted a flight of twenty-seven
+broad stairs, hewn by some unknown art of the same black stone.  This
+was the only entrance to the tower.
+
+
+EOW
+
     if ($file =~ m:\.[ch]$:) {
        $warning =~ s:^: * :gm;
        $warning =~ s: +$::gm;
@@ -86,6 +95,7 @@ sub walk_table (&@) {
     else {
        safer_unlink $filename;
        open F, ">$filename" or die "Can't open $filename: $!";
+       binmode F;
        $F = \*F;
     }
     print $F $leader if $leader;
@@ -97,6 +107,7 @@ sub walk_table (&@) {
            $_ .= <IN>;
            chomp;
        }
+       s/\s+$//;
        my @args;
        if (/^\s*(#|$)/) {
            @args = $_;
@@ -202,11 +213,8 @@ sub write_protos {
        if( $flags =~ /f/ ) {
            my $prefix = $flags =~ /n/ ? '' : 'pTHX_';
            my $args = scalar @args;
-           $ret .= "\n#ifdef CHECK_FORMAT\n";
-           $ret .=
-               sprintf " __attribute__((__format__(__printf__,%s%d,%s%d)))",
+           $ret .= sprintf "\n\t__attribute__format__(__printf__,%s%d,%s%d)",
                                    $prefix, $args - 1, $prefix, $args;
-           $ret .= "\n#endif\n";
        }
        $ret .= ";";
        $ret .= ' */' if $flags =~ /m/;
@@ -332,6 +340,7 @@ sub multoff ($$) {
 
 safer_unlink 'embed.h';
 open(EM, '> embed.h') or die "Can't create embed.h: $!\n";
+binmode EM;
 
 print EM do_not_edit ("embed.h"), <<'END';
 
@@ -541,6 +550,7 @@ close(EM) or die "Error closing EM: $!";
 safer_unlink 'embedvar.h';
 open(EM, '> embedvar.h')
     or die "Can't create embedvar.h: $!\n";
+binmode EM;
 
 print EM do_not_edit ("embedvar.h"), <<'END';
 
@@ -648,7 +658,9 @@ close(EM) or die "Error closing EM: $!";
 safer_unlink 'perlapi.h';
 safer_unlink 'perlapi.c';
 open(CAPI, '> perlapi.c') or die "Can't create perlapi.c: $!\n";
+binmode CAPI;
 open(CAPIH, '> perlapi.h') or die "Can't create perlapi.h: $!\n";
+binmode CAPIH;
 
 print CAPIH do_not_edit ("perlapi.h"), <<'EOT';