Initialize Tizen 2.3
[framework/web/webkit-efl.git] / Source / WebCore / make-hash-tools.pl
1 #! /usr/bin/perl
2 #
3 #   This file is part of the WebKit project
4 #
5 #   Copyright (C) 2010 Andras Becsi (abecsi@inf.u-szeged.hu), University of Szeged
6 #   Copyright (C) 2012 Apple Inc. All rights reserved.
7 #
8 #   This library is free software; you can redistribute it and/or
9 #   modify it under the terms of the GNU Library General Public
10 #   License as published by the Free Software Foundation; either
11 #   version 2 of the License, or (at your option) any later version.
12 #
13 #   This library is distributed in the hope that it will be useful,
14 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
15 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 #   Library General Public License for more details.
17 #
18 #   You should have received a copy of the GNU Library General Public License
19 #   along with this library; see the file COPYING.LIB.  If not, write to
20 #   the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 #   Boston, MA 02110-1301, USA.
22
23 use strict;
24 use File::Basename;
25
26 my $outdir = $ARGV[0];
27 shift;
28 my $option = basename($ARGV[0],".gperf");
29
30 if ($option eq "ColorData") {
31     my $colorDataGenerated         = "$outdir/ColorData.cpp";
32     my $colorDataGperf             = shift;
33     my $customGperf                = shift;
34
35     # gperf emits this filename literally in #line directives, but VS errors
36     # out because the filenames then contain unescaped \s, so replace the \
37     # with /.
38     $colorDataGperf =~ s/\\/\//g;
39     my $gperf = $ENV{GPERF} ? $ENV{GPERF} : ($customGperf ? $customGperf : "gperf");
40     system("\"$gperf\" --key-positions=\"*\" -D -s 2 $colorDataGperf --output-file=$colorDataGenerated") == 0 || die "calling gperf failed: $?";
41
42 } else {
43     die "Unknown option.";
44 }