xref: /aoo42x/main/zlib/make_patched_header.pl (revision cdf0e10c)
1:
2eval 'exec perl -S $0 ${1+"$@"}'
3    if 0;
4#*************************************************************************
5#
6# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
7#
8# Copyright 2000, 2010 Oracle and/or its affiliates.
9#
10# OpenOffice.org - a multi-platform office productivity suite
11#
12# This file is part of OpenOffice.org.
13#
14# OpenOffice.org is free software: you can redistribute it and/or modify
15# it under the terms of the GNU Lesser General Public License version 3
16# only, as published by the Free Software Foundation.
17#
18# OpenOffice.org is distributed in the hope that it will be useful,
19# but WITHOUT ANY WARRANTY; without even the implied warranty of
20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21# GNU Lesser General Public License version 3 for more details
22# (a copy is included in the LICENSE file that accompanied this code).
23#
24# You should have received a copy of the GNU Lesser General Public License
25# version 3 along with OpenOffice.org.  If not, see
26# <http://www.openoffice.org/license.html>
27# for a copy of the LGPLv3 License.
28#
29#*************************************************************************
30#
31# make_patched_header - make patched header
32#
33
34use strict;
35use File::Basename;
36use File::Path;
37use Carp;
38
39my $patched_file = shift @ARGV;
40$patched_file =~ s/\\/\//g;
41my $module = shift @ARGV;
42my $patch_dir = dirname($patched_file);
43my $orig_file = $patched_file;
44$orig_file =~ s/\/patched\//\//;
45
46if (!-f $orig_file) { carp("Cannot find file $orig_file\n"); };
47if (!-d $patch_dir) {
48    mkpath($patch_dir, 0, 0775);
49    if (!-d $patch_dir) {("mkdir: could not create directory $patch_dir\n"); };
50};
51
52open(PATCHED_FILE, ">$patched_file") or carp("Cannot open file $patched_file\n");
53open(ORIG_FILE, "<$orig_file") or carp("Cannot open file $orig_file\n");
54foreach (<ORIG_FILE>) {
55    if (/#include\s*"(\w+\.h\w*)"/) {
56        my $include = $1;
57        s/#include "$include"/#include <$module\/$include>/g;
58    };
59    print PATCHED_FILE $_;
60};
61close PATCHED_FILE;
62close ORIG_FILE;
63
64exit(0);
65
66
67