1 |
siliconforks |
399 |
#!/usr/bin/perl |
2 |
|
|
# |
3 |
|
|
# ***** BEGIN LICENSE BLOCK ***** |
4 |
|
|
# Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
5 |
|
|
# |
6 |
|
|
# The contents of this file are subject to the Mozilla Public License Version |
7 |
|
|
# 1.1 (the "License"); you may not use this file except in compliance with |
8 |
|
|
# the License. You may obtain a copy of the License at |
9 |
|
|
# http://www.mozilla.org/MPL/ |
10 |
|
|
# |
11 |
|
|
# Software distributed under the License is distributed on an "AS IS" basis, |
12 |
|
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
13 |
|
|
# for the specific language governing rights and limitations under the |
14 |
|
|
# License. |
15 |
|
|
# |
16 |
|
|
# The Original Code is mozilla.org code. |
17 |
|
|
# |
18 |
|
|
# The Initial Developer of the Original Code is |
19 |
|
|
# IBM Corporation. |
20 |
|
|
# Portions created by the Initial Developer are Copyright (C) 2004 |
21 |
|
|
# the Initial Developer. All Rights Reserved. |
22 |
|
|
# |
23 |
|
|
# Contributor(s): |
24 |
|
|
# Brian Ryner <bryner@brianryner.com> |
25 |
|
|
# |
26 |
|
|
# Alternatively, the contents of this file may be used under the terms of |
27 |
|
|
# either of the GNU General Public License Version 2 or later (the "GPL"), |
28 |
|
|
# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
29 |
|
|
# in which case the provisions of the GPL or the LGPL are applicable instead |
30 |
|
|
# of those above. If you wish to allow use of your version of this file only |
31 |
|
|
# under the terms of either the GPL or the LGPL, and not to allow others to |
32 |
|
|
# use your version of this file under the terms of the MPL, indicate your |
33 |
|
|
# decision by deleting the provisions above and replace them with the notice |
34 |
|
|
# and other provisions required by the GPL or the LGPL. If you do not delete |
35 |
|
|
# the provisions above, a recipient may use your version of this file under |
36 |
|
|
# the terms of any one of the MPL, the GPL or the LGPL. |
37 |
|
|
# |
38 |
|
|
# ***** END LICENSE BLOCK ***** |
39 |
|
|
|
40 |
|
|
$output_dir = shift; |
41 |
|
|
|
42 |
|
|
while (<STDIN>) { |
43 |
|
|
chomp; |
44 |
|
|
if (-e "$output_dir/$_") { |
45 |
|
|
next; |
46 |
|
|
} |
47 |
|
|
|
48 |
|
|
if (/(.*)\/[^\/*]/) { |
49 |
|
|
mkdir "$output_dir/$1"; |
50 |
|
|
} |
51 |
|
|
|
52 |
|
|
open OUT, ">$output_dir/$_"; |
53 |
|
|
print OUT "#pragma GCC system_header\n"; # suppress include_next warning |
54 |
|
|
print OUT "#pragma GCC visibility push(default)\n"; |
55 |
|
|
print OUT "#include_next \<$_\>\n"; |
56 |
|
|
print OUT "#pragma GCC visibility pop\n"; |
57 |
|
|
close OUT; |
58 |
|
|
} |
59 |
|
|
|