42cb6fd958f105ae6afbf6ede348ac35b6f3963e
[WebKit-https.git] / 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 #
7 #   This library is free software; you can redistribute it and/or
8 #   modify it under the terms of the GNU Library General Public
9 #   License as published by the Free Software Foundation; either
10 #   version 2 of the License, or (at your option) any later version.
11 #
12 #   This library is distributed in the hope that it will be useful,
13 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
14 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 #   Library General Public License for more details.
16 #
17 #   You should have received a copy of the GNU Library General Public License
18 #   along with this library; see the file COPYING.LIB.  If not, write to
19 #   the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 #   Boston, MA 02110-1301, USA.
21
22 use strict;
23 use Switch;
24 use File::Basename;
25
26 my $outdir = $ARGV[0];
27 shift;
28 my $option = basename($ARGV[0],".gperf");
29
30 switch ($option) {
31
32 case "HTMLEntityNames" {
33
34     my $htmlEntityNamesGenerated   = "$outdir/HTMLEntityNames.cpp";
35     my $htmlEntityNamesGperf       = $ARGV[0];
36     shift;
37
38     system("gperf --key-positions=\"*\" -D -s 2 $htmlEntityNamesGperf > $htmlEntityNamesGenerated") == 0 || die "calling gperf failed: $?";
39
40 } # case "HTMLEntityNames"
41
42 case "DocTypeStrings" {
43
44     my $docTypeStringsGenerated    = "$outdir/DocTypeStrings.cpp";
45     my $docTypeStringsGperf        = $ARGV[0];
46     shift;
47
48     system("gperf --key-positions=\"*\" -s 2 $docTypeStringsGperf > $docTypeStringsGenerated") == 0 || die "calling gperf failed: $?";
49
50 } # case "DocTypeStrings"
51
52 case "ColorData" {
53
54     my $colorDataGenerated   = "$outdir/ColorData.cpp";
55     my $colorDataGperf       = $ARGV[0];
56     shift;
57
58     system("gperf --key-positions=\"*\" -D -s 2 $colorDataGperf > $colorDataGenerated") == 0 || die "calling gperf failed: $?";
59
60 } # case "ColorData"
61
62 } # switch ($option)