File: fixheaders

package info (click to toggle)
perl 5.8.8-7etch6
  • links: PTS
  • area: main
  • in suites: etch
  • size: 60,396 kB
  • ctags: 33,629
  • sloc: perl: 199,713; ansic: 160,511; sh: 33,095; pascal: 8,270; lisp: 6,121; makefile: 2,373; cpp: 2,035; yacc: 1,047; 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
}