OLD | NEW |
1 #!/usr/bin/perl -w | 1 #!/usr/bin/perl -w |
2 # | 2 # |
3 # Copyright (C) 2005 Apple Computer, Inc. | 3 # Copyright (C) 2005 Apple Computer, Inc. |
4 # Copyright (C) 2006 Anders Carlsson <andersca@mac.com> | 4 # Copyright (C) 2006 Anders Carlsson <andersca@mac.com> |
5 # | 5 # |
6 # This file is part of WebKit | 6 # This file is part of WebKit |
7 # | 7 # |
8 # This library is free software; you can redistribute it and/or | 8 # This library is free software; you can redistribute it and/or |
9 # modify it under the terms of the GNU Library General Public | 9 # modify it under the terms of the GNU Library General Public |
10 # License as published by the Free Software Foundation; either | 10 # License as published by the Free Software Foundation; either |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 # ... | 90 # ... |
91 # | 91 # |
92 # The above indicates that Window.idl is supplemented by P.idl, Q.idl and R.
idl, | 92 # The above indicates that Window.idl is supplemented by P.idl, Q.idl and R.
idl, |
93 # Document.idl is supplemented by S.idl, and Event.idl is supplemented by no
IDLs. | 93 # Document.idl is supplemented by S.idl, and Event.idl is supplemented by no
IDLs. |
94 # The IDL that supplements another IDL (e.g. P.idl) never appears in the dep
endency file. | 94 # The IDL that supplements another IDL (e.g. P.idl) never appears in the dep
endency file. |
95 open FH, "< $supplementalDependencyFile" or die "Cannot open $supplementalDe
pendencyFile\n"; | 95 open FH, "< $supplementalDependencyFile" or die "Cannot open $supplementalDe
pendencyFile\n"; |
96 while (my $line = <FH>) { | 96 while (my $line = <FH>) { |
97 my ($idlFile, @followingIdlFiles) = split(/\s+/, $line); | 97 my ($idlFile, @followingIdlFiles) = split(/\s+/, $line); |
98 if ($idlFile and basename($idlFile) eq basename($targetIdlFile)) { | 98 if ($idlFile and basename($idlFile) eq basename($targetIdlFile)) { |
99 $idlFound = 1; | 99 $idlFound = 1; |
100 @supplementedIdlFiles = @followingIdlFiles; | 100 # We sort the supplemental IDL files so that the corresponding code
is generated |
| 101 # in a consistent order. This is important for the bindings tests. |
| 102 @supplementedIdlFiles = sort @followingIdlFiles; |
101 } | 103 } |
102 } | 104 } |
103 close FH; | 105 close FH; |
104 | 106 |
105 # $additionalIdlFiles is list of IDL files which should not be included in | 107 # $additionalIdlFiles is list of IDL files which should not be included in |
106 # DerivedSources*.cpp (i.e. they are not described in the supplemental | 108 # DerivedSources*.cpp (i.e. they are not described in the supplemental |
107 # dependency file) but should generate .h and .cpp files. | 109 # dependency file) but should generate .h and .cpp files. |
108 if (!$idlFound and $additionalIdlFiles) { | 110 if (!$idlFound and $additionalIdlFiles) { |
109 my @idlFiles = shellwords($additionalIdlFiles); | 111 my @idlFiles = shellwords($additionalIdlFiles); |
110 $idlFound = grep { $_ and basename($_) eq basename($targetIdlFile) } @id
lFiles; | 112 $idlFound = grep { $_ and basename($_) eq basename($targetIdlFile) } @id
lFiles; |
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
304 last OUTER; | 306 last OUTER; |
305 } | 307 } |
306 } | 308 } |
307 } | 309 } |
308 if ($error) { | 310 if ($error) { |
309 die "IDL ATTRIBUTE CHECKER ERROR: $error | 311 die "IDL ATTRIBUTE CHECKER ERROR: $error |
310 If you want to add a new IDL attribute, you need to add it to bindings/scripts/I
DLAttributes.txt and add explanations to the Blink IDL document (http://chromium
.org/blink/webidl). | 312 If you want to add a new IDL attribute, you need to add it to bindings/scripts/I
DLAttributes.txt and add explanations to the Blink IDL document (http://chromium
.org/blink/webidl). |
311 "; | 313 "; |
312 } | 314 } |
313 } | 315 } |
OLD | NEW |