[MediaStream] AVVideoCaptureSource reports incorrect size when frames are scaled
[WebKit-https.git] / Source / WebCore / make-hash-tools.pl
index 2812ce7..7b7591d 100644 (file)
@@ -1,8 +1,9 @@
-#! /usr/bin/perl
+#! /usr/bin/env perl
 #
 #   This file is part of the WebKit project
 #
 #   Copyright (C) 2010 Andras Becsi (abecsi@inf.u-szeged.hu), University of Szeged
+#   Copyright (C) 2012 Apple Inc. All rights reserved.
 #
 #   This library is free software; you can redistribute it and/or
 #   modify it under the terms of the GNU Library General Public
@@ -26,22 +27,17 @@ my $outdir = $ARGV[0];
 shift;
 my $option = basename($ARGV[0],".gperf");
 
-
-if ($option eq "DocTypeStrings") {
-
-    my $docTypeStringsGenerated    = "$outdir/DocTypeStrings.cpp";
-    my $docTypeStringsGperf        = $ARGV[0];
-    shift;
-
-    system("gperf --key-positions=\"*\" -s 2 $docTypeStringsGperf > $docTypeStringsGenerated") == 0 || die "calling gperf failed: $?";
-
-} elsif ($option eq "ColorData") {
-
+if ($option eq "ColorData") {
     my $colorDataGenerated         = "$outdir/ColorData.cpp";
-    my $colorDataGperf             = $ARGV[0];
-    shift;
-
-    system("gperf --key-positions=\"*\" -D -s 2 $colorDataGperf > $colorDataGenerated") == 0 || die "calling gperf failed: $?";
+    my $colorDataGperf             = shift;
+    my $customGperf                = shift;
+
+    # gperf emits this filename literally in #line directives, but VS errors
+    # out because the filenames then contain unescaped \s, so replace the \
+    # with /.
+    $colorDataGperf =~ s/\\/\//g;
+    my $gperf = $ENV{GPERF} ? $ENV{GPERF} : ($customGperf ? $customGperf : "gperf");
+    system("\"$gperf\" --key-positions=\"*\" -D -s 2 $colorDataGperf --output-file=$colorDataGenerated") == 0 || die "calling gperf failed: $?";
 
 } else {
     die "Unknown option.";