summaryrefslogtreecommitdiff
path: root/Source/WebCore/css/makegrammar.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/css/makegrammar.pl')
-rw-r--r--Source/WebCore/css/makegrammar.pl95
1 files changed, 0 insertions, 95 deletions
diff --git a/Source/WebCore/css/makegrammar.pl b/Source/WebCore/css/makegrammar.pl
deleted file mode 100644
index 4e0452ed8..000000000
--- a/Source/WebCore/css/makegrammar.pl
+++ /dev/null
@@ -1,95 +0,0 @@
-#! /usr/bin/perl
-#
-# This file is part of the WebKit project
-#
-# Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
-#
-# 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;
-
-use File::Basename;
-use File::Spec;
-use Getopt::Long;
-
-my $outputDir = ".";
-my $extraDefines = "";
-my $symbolsPrefix = "";
-my $preprocessor = "";
-my $preprocessOnly = 0;
-my $bison = "bison";
-
-GetOptions(
- 'outputDir=s' => \$outputDir,
- 'extraDefines=s' => \$extraDefines,
- 'bison=s' => \$bison,
- 'preprocessor=s' => \$preprocessor,
- 'preprocessOnly' => \$preprocessOnly,
- 'symbolsPrefix=s' => \$symbolsPrefix
-);
-
-my $grammarFilePath = $ARGV[0];
-my $grammarIncludesFilePath = @ARGV > 0 ? $ARGV[1] : "";
-
-if (!length($symbolsPrefix) && !$preprocessOnly) {
- die "Need a symbols prefix to give to bison (e.g. cssyy, xpathyy)";
-}
-
-my ($filename, $basePath, $suffix) = fileparse($grammarFilePath, (".y", ".y.in"));
-
-if ($suffix eq ".y.in") {
- my $grammarFileOutPath = File::Spec->join($outputDir, "$filename.y");
- if (!$grammarIncludesFilePath) {
- $grammarIncludesFilePath = "${basePath}${filename}.y.includes";
- }
-
- open GRAMMAR, ">$grammarFileOutPath" or die;
- open INCLUDES, "<$grammarIncludesFilePath" or die;
-
- require preprocessor;
-
- while (<INCLUDES>) {
- print GRAMMAR;
- }
- print GRAMMAR join("", applyPreprocessor($grammarFilePath, $extraDefines, $preprocessor));
- close GRAMMAR;
-
- $grammarFilePath = $grammarFileOutPath;
-
- exit if $preprocessOnly;
-}
-
-my $fileBase = File::Spec->join($outputDir, $filename);
-system("$bison -d -p $symbolsPrefix $grammarFilePath -o $fileBase.cpp");
-
-open HEADER, ">$fileBase.h" or die;
-print HEADER << "EOF";
-#ifndef CSSGRAMMAR_H
-#define CSSGRAMMAR_H
-EOF
-
-open HPP, "<$fileBase.cpp.h" or open HPP, "<$fileBase.hpp" or die;
-while (<HPP>) {
- print HEADER;
-}
-close HPP;
-
-print HEADER "#endif\n";
-close HEADER;
-
-unlink("$fileBase.cpp.h");
-unlink("$fileBase.hpp");
-