File: fixheaders

package info (click to toggle)
perl 5.8.4-8sarge6
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 58,128 kB
  • ctags: 31,422
  • sloc: perl: 224,262; ansic: 155,398; sh: 32,253; pascal: 7,747; lisp: 6,121; makefile: 2,341; cpp: 2,035; yacc: 1,019; java: 23
file content (31 lines) | stat: -rw-r--r-- 551 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!./perl.static -w

#
# Fix up generated .ph files
#

use strict;
use File::Find;
use Config;

my @args = @ARGV;
@ARGV = ();
find sub { push @ARGV, $File::Find::name if -f and /\.ph$/ }, @args;

$^I = '';

while (<>)
{
    # discard casts
    s/(?<!\$sizeof{)(&__const\s+)?\\'struct[^\\']+\\'[^;]*;/1;/g;
    s/'char'\[\d+\]/1/g;

    print;

    # ugh, can't work out why __LONG_MAX__ isn't defined--kludge
    print <<EOT if $ARGV =~ m!/_h2ph_pre\.ph$! and eof;
# gross hack
unless (defined &__LONG_MAX__) { sub __LONG_MAX__ { 2147483647 } }

EOT
}