diff options
Diffstat (limited to 'kresources/groupwise/soap/fixup_groupwise.h.pl')
-rwxr-xr-x | kresources/groupwise/soap/fixup_groupwise.h.pl | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/kresources/groupwise/soap/fixup_groupwise.h.pl b/kresources/groupwise/soap/fixup_groupwise.h.pl new file mode 100755 index 000000000..938811179 --- /dev/null +++ b/kresources/groupwise/soap/fixup_groupwise.h.pl @@ -0,0 +1,60 @@ +#!/usr/bin/perl + +use strict; + +my $inplace; + +if ( @ARGV == 1 && $ARGV[ 0 ] == "--inplace" ) { + print "Substituting in place.\n"; + $inplace = 1; +} + +my $fileIn = "groupwise.h"; +my $fileOut = "$fileIn.fixed"; +my $fileBack = "$fileIn.backup"; + +if ( !open IN, $fileIn ) { + print STDERR "Unable to open '$fileIn'.\n"; + exit 1; +} + +if ( !open OUT, ">$fileOut" ) { + print STDERR "Unable to open '$fileOut'.\n"; + exit 1; +} + +while ( <IN> ) { + my $newline; + + if ( /^(.*)ns1__(\w+\s+0?;.*)$/ ) { +# print; + $newline = $1 . $2 . "\n"; +# print $newline; + $_ = $newline; + } + +if ( 0 ) { + if ( /(^\s+\S+\s+)ns1__(.*)/ ) { + $newline = $1 . $2 . "\n"; + if ( !/enum/ && /element$/) { +# print; +# print $newline; + $_ = $newline; + } + } elsif ( /(^\s+unsigned long\*\s+)ns1__(.*)/ ) { + $newline = $1 . $2 . "\n"; +# print $newline; + $_ = $newline; + } elsif ( /(^\s+std\:\:\S+\s+\>.*)ns1__(.*)/ ) { + $newline = $1 . $2 . "\n"; + $_ = $newline; + } +} + + print OUT; +} + +if ( $inplace ) { + system( "mv $fileIn $fileBack" ); + system( "mv $fileOut $fileIn" ); +} |