diff options
| author | Steve Block <steveblock@google.com> | 2011-05-06 11:45:16 +0100 |
|---|---|---|
| committer | Steve Block <steveblock@google.com> | 2011-05-12 13:44:10 +0100 |
| commit | cad810f21b803229eb11403f9209855525a25d57 (patch) | |
| tree | 29a6fd0279be608e0fe9ffe9841f722f0f4e4269 /WebCore/css/makeprop.pl | |
| parent | 121b0cf4517156d0ac5111caf9830c51b69bae8f (diff) | |
| download | external_webkit-cad810f21b803229eb11403f9209855525a25d57.zip external_webkit-cad810f21b803229eb11403f9209855525a25d57.tar.gz external_webkit-cad810f21b803229eb11403f9209855525a25d57.tar.bz2 | |
Merge WebKit at r75315: Initial merge by git.
Change-Id: I570314b346ce101c935ed22a626b48c2af266b84
Diffstat (limited to 'WebCore/css/makeprop.pl')
| -rw-r--r-- | WebCore/css/makeprop.pl | 140 |
1 files changed, 0 insertions, 140 deletions
diff --git a/WebCore/css/makeprop.pl b/WebCore/css/makeprop.pl deleted file mode 100644 index d394739..0000000 --- a/WebCore/css/makeprop.pl +++ /dev/null @@ -1,140 +0,0 @@ -#! /usr/bin/perl -# -# This file is part of the WebKit project -# -# Copyright (C) 1999 Waldo Bastian (bastian@kde.org) -# Copyright (C) 2007, 2008 Apple Inc. All rights reserved. -# Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) -# Copyright (C) 2010 Andras Becsi (abecsi@inf.u-szeged.hu), University of Szeged -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 2 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. -# -# You should have received a copy of the GNU Library General Public License -# along with this library; see the file COPYING.LIB. If not, write to -# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -# Boston, MA 02110-1301, USA. -use strict; -use warnings; - -open NAMES, "<CSSPropertyNames.in" || die "Could not find CSSPropertyNames.in"; -my @names = (); -while (<NAMES>) { - next if (m/(^#)|(^\s*$)/); - # Input may use a different EOL sequence than $/, so avoid chomp. - $_ =~ s/[\r\n]+$//g; - push @names, $_; -} -close(NAMES); - -open GPERF, ">CSSPropertyNames.gperf" || die "Could not open CSSPropertyNames.gperf for writing"; -print GPERF << "EOF"; -%{ -/* This file is automatically generated from CSSPropertyNames.in by makeprop, do not edit */ -#include \"CSSPropertyNames.h\" -#include \"HashTools.h\" -#include <string.h> - -namespace WebCore { -%} -%struct-type -struct Property; -%omit-struct-type -%language=C++ -%readonly-tables -%global-table -%compare-strncmp -%define class-name CSSPropertyNamesHash -%define lookup-function-name findPropertyImpl -%define hash-function-name propery_hash_function -%define word-array-name property_wordlist -%enum -%% -EOF - -foreach my $name (@names) { - my $id = $name; - $id =~ s/(^[^-])|-(.)/uc($1||$2)/ge; - print GPERF $name . ", CSSProperty" . $id . "\n"; -} - -print GPERF<< "EOF"; -%% -const Property* findProperty(register const char* str, register unsigned int len) -{ - return CSSPropertyNamesHash::findPropertyImpl(str, len); -} - -const char* getPropertyName(CSSPropertyID id) -{ - if (id < firstCSSProperty) - return 0; - int index = id - firstCSSProperty; - if (index >= numCSSProperties) - return 0; - return propertyNameStrings[index]; -} - -} // namespace WebCore -EOF - -open HEADER, ">CSSPropertyNames.h" || die "Could not open CSSPropertyNames.h for writing"; -print HEADER << "EOF"; -/* This file is automatically generated from CSSPropertyNames.in by makeprop, do not edit */ - -#ifndef CSSPropertyNames_h -#define CSSPropertyNames_h - -#include <string.h> - -namespace WebCore { - -enum CSSPropertyID { - CSSPropertyInvalid = 0, -EOF - -my $first = 1001; -my $i = 1001; -my $maxLen = 0; -foreach my $name (@names) { - my $id = $name; - $id =~ s/(^[^-])|-(.)/uc($1||$2)/ge; - print HEADER " CSSProperty" . $id . " = " . $i . ",\n"; - $i = $i + 1; - if (length($name) > $maxLen) { - $maxLen = length($name); - } -} -my $num = $i - $first; - -print HEADER "};\n\n"; -print HEADER "const int firstCSSProperty = $first;\n"; -print HEADER "const int numCSSProperties = $num;\n"; -print HEADER "const size_t maxCSSPropertyNameLength = $maxLen;\n"; - -print HEADER "const char* const propertyNameStrings[$num] = {\n"; -foreach my $name (@names) { - print HEADER "\"$name\",\n"; -} -print HEADER "};\n"; - -print HEADER << "EOF"; - -const char* getPropertyName(CSSPropertyID); - -} // namespace WebCore - -#endif // CSSPropertyNames_h - -EOF - -close HEADER; - -system("gperf --key-positions=\"*\" -D -n -s 2 CSSPropertyNames.gperf > CSSPropertyNames.cpp") == 0 || die "calling gperf failed: $?"; |
