diff options
author | Ben Murdoch <benm@google.com> | 2011-05-24 11:24:40 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-06-02 09:53:15 +0100 |
commit | 81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch) | |
tree | 7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebKit2/Scripts/generate-forwarding-headers.pl | |
parent | 94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff) | |
download | external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2 |
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebKit2/Scripts/generate-forwarding-headers.pl')
-rwxr-xr-x | Source/WebKit2/Scripts/generate-forwarding-headers.pl | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/Source/WebKit2/Scripts/generate-forwarding-headers.pl b/Source/WebKit2/Scripts/generate-forwarding-headers.pl index 738d413..5a53d81 100755 --- a/Source/WebKit2/Scripts/generate-forwarding-headers.pl +++ b/Source/WebKit2/Scripts/generate-forwarding-headers.pl @@ -53,6 +53,8 @@ foreach my $prefix (@platformPrefixes) { foreach (@frameworks) { $framework = $_; + @frameworkHeaders = (); + %neededHeaders = (); find(\&collectNeededHeaders, $incFromRoot); find(\&collectFameworkHeaderPaths, File::Spec->catfile($srcRoot, $framework)); @@ -86,18 +88,25 @@ sub createForwardingHeadersForFramework { my $targetDirectory = File::Spec->catfile($outputDirectory, $framework); mkpath($targetDirectory); foreach my $header (@frameworkHeaders) { - my $forwardingHeaderPath = File::Spec->catfile($targetDirectory, basename($header)); - my $expectedIncludeStatement = "#include \"$header\""; - my $foundIncludeStatement = 0; - $foundIncludeStatement = <EXISTING_HEADER> if open(EXISTING_HEADER, "<$forwardingHeaderPath"); - chomp($foundIncludeStatement); - if (! $foundIncludeStatement || $foundIncludeStatement ne $expectedIncludeStatement) { - print "[Creating forwarding header for $framework/$header]\n"; - open(FORWARDING_HEADER, ">$forwardingHeaderPath") or die "Could not open $forwardingHeaderPath."; - print FORWARDING_HEADER "$expectedIncludeStatement\n"; - close(FORWARDING_HEADER); + my $headerName = basename($header); + + # If we found more headers with the same name, only generate a forwarding header for the current platform + if(grep($_ =~ "/$headerName\$", @frameworkHeaders) == 1 || $header =~ "/$platform/" ) { + my $forwardingHeaderPath = File::Spec->catfile($targetDirectory, $headerName); + my $expectedIncludeStatement = "#include \"$framework/$header\""; + my $foundIncludeStatement = 0; + + $foundIncludeStatement = <EXISTING_HEADER> if open(EXISTING_HEADER, "<$forwardingHeaderPath"); + chomp($foundIncludeStatement); + + if (! $foundIncludeStatement || $foundIncludeStatement ne $expectedIncludeStatement) { + print "[Creating forwarding header for $framework/$header]\n"; + open(FORWARDING_HEADER, ">$forwardingHeaderPath") or die "Could not open $forwardingHeaderPath."; + print FORWARDING_HEADER "$expectedIncludeStatement\n"; + close(FORWARDING_HEADER); + } + + close(EXISTING_HEADER); } - close(EXISTING_HEADER); } } - |