[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

loislo at chromium.org loislo at chromium.org
Wed Dec 22 11:22:53 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit f77b355757ca7fcdb5f175d980dca7784f35debc
Author: loislo at chromium.org <loislo at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jul 21 06:04:42 2010 +0000

    2010-07-20  Ilya Tikhonovsky  <loislo at chromium.org>
    
            Reviewed by Yury Semikhatsky.
    
            WebInspector: the bindings generation helper script can be
            simplified a bit. Chromium.
            https://bugs.webkit.org/show_bug.cgi?id=42523
    
            * WebCore.gyp/WebCore.gyp:
            * WebCore.gyp/scripts/rule_binding.py:
            * bindings/scripts/CodeGenerator.pm:
            * bindings/scripts/CodeGeneratorCPP.pm:
            * bindings/scripts/CodeGeneratorJS.pm:
            * bindings/scripts/CodeGeneratorObjC.pm:
            * bindings/scripts/CodeGeneratorV8.pm:
            * bindings/scripts/generate-bindings.pl:
            * inspector/CodeGeneratorInspector.pm:
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63803 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index c0d4960..f1304c7 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,21 @@
+2010-07-20  Ilya Tikhonovsky  <loislo at chromium.org>
+
+        Reviewed by Yury Semikhatsky.
+
+        WebInspector: the bindings generation helper script can be
+        simplified a bit. Chromium.
+        https://bugs.webkit.org/show_bug.cgi?id=42523
+
+        * WebCore.gyp/WebCore.gyp:
+        * WebCore.gyp/scripts/rule_binding.py:
+        * bindings/scripts/CodeGenerator.pm:
+        * bindings/scripts/CodeGeneratorCPP.pm:
+        * bindings/scripts/CodeGeneratorJS.pm:
+        * bindings/scripts/CodeGeneratorObjC.pm:
+        * bindings/scripts/CodeGeneratorV8.pm:
+        * bindings/scripts/generate-bindings.pl:
+        * inspector/CodeGeneratorInspector.pm:
+
 2010-07-20  Steve Falkenburg  <sfalken at apple.com>
 
         Re-save vsprops file after no-op edit in Visual Studio
diff --git a/WebCore/WebCore.gyp/WebCore.gyp b/WebCore/WebCore.gyp/WebCore.gyp
index 0c3fa81..6193294 100644
--- a/WebCore/WebCore.gyp/WebCore.gyp
+++ b/WebCore/WebCore.gyp/WebCore.gyp
@@ -502,7 +502,6 @@
             '<@(_inputs)',
             '--',
             '--defines', '<(feature_defines) LANGUAGE_JAVASCRIPT',
-            '--filename', 'RemoteInspectorFrontend',
             '--generator', 'Inspector',
             '<@(generator_include_dirs)'
           ],
diff --git a/WebCore/WebCore.gyp/scripts/rule_binding.py b/WebCore/WebCore.gyp/scripts/rule_binding.py
index bb4c2a5..5a41808 100644
--- a/WebCore/WebCore.gyp/scripts/rule_binding.py
+++ b/WebCore/WebCore.gyp/scripts/rule_binding.py
@@ -121,6 +121,7 @@ def main(args):
         command.extend(['-I', includeDir])
     command.append(generateBindings)
     command.extend(options)
+    command.extend(['--outputHeadersDir', hdir])
     command.extend(['--outputDir', cppdir, input])
 
     # Do it. check_call is new in 2.5, so simulate its behavior with call and
@@ -128,21 +129,6 @@ def main(args):
     returnCode = subprocess.call(command)
     assert returnCode == 0
 
-    # Both the .cpp and .h were generated in cppdir, but if hdir is different,
-    # the .h needs to move. Copy it instead of using os.rename for maximum
-    # portability in all cases.
-    if cppdir != hdir:
-        inputBasename = os.path.basename(input)
-        (root, ext) = os.path.splitext(inputBasename)
-        if fileName != '':
-            hname = '%s.h' % (fileName)
-        else:
-            hname = '%s%s.h' % (prefix, root)
-        hsrc = os.path.join(cppdir, hname)
-        hdst = os.path.join(hdir, hname)
-        shutil.copyfile(hsrc, hdst)
-        os.unlink(hsrc)
-
     return returnCode
 
 
diff --git a/WebCore/bindings/scripts/CodeGenerator.pm b/WebCore/bindings/scripts/CodeGenerator.pm
index d1711dc..363fdc5 100644
--- a/WebCore/bindings/scripts/CodeGenerator.pm
+++ b/WebCore/bindings/scripts/CodeGenerator.pm
@@ -31,6 +31,7 @@ use File::Find;
 my $useDocument = "";
 my $useGenerator = "";
 my $useOutputDir = "";
+my $useOutputHeadersDir = "";
 my $useDirectories = "";
 my $useLayerOnTop = 0;
 my $preprocessor;
@@ -80,6 +81,7 @@ sub new
     $useDirectories = shift;
     $useGenerator = shift;
     $useOutputDir = shift;
+    $useOutputHeadersDir = shift;
     $useLayerOnTop = shift;
     $preprocessor = shift;
     $writeDependencies = shift;
@@ -107,7 +109,7 @@ sub ProcessDocument
     require $ifaceName . ".pm";
 
     # Dynamically load external code generation perl module
-    $codeGenerator = $ifaceName->new($object, $useOutputDir, $useLayerOnTop, $preprocessor, $writeDependencies, $verbose);
+    $codeGenerator = $ifaceName->new($object, $useOutputDir, $useOutputHeadersDir, $useLayerOnTop, $preprocessor, $writeDependencies, $verbose);
     unless (defined($codeGenerator)) {
         my $classes = $useDocument->classes;
         foreach my $class (@$classes) {
diff --git a/WebCore/bindings/scripts/CodeGeneratorCPP.pm b/WebCore/bindings/scripts/CodeGeneratorCPP.pm
index 7df91ca..9e254af 100644
--- a/WebCore/bindings/scripts/CodeGeneratorCPP.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorCPP.pm
@@ -98,6 +98,7 @@ sub new
 
     $codeGenerator = shift;
     $outputDir = shift;
+    shift; # $outputHeadersDir
     shift; # $useLayerOnTop
     shift; # $preprocessor
     shift; # $writeDependencies
diff --git a/WebCore/bindings/scripts/CodeGeneratorJS.pm b/WebCore/bindings/scripts/CodeGeneratorJS.pm
index acad90b..d992d89 100644
--- a/WebCore/bindings/scripts/CodeGeneratorJS.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorJS.pm
@@ -73,6 +73,7 @@ sub new
 
     $codeGenerator = shift;
     $outputDir = shift;
+    shift; # $outputHeadersDir
     shift; # $useLayerOnTop
     shift; # $preprocessor
     $writeDependencies = shift;
diff --git a/WebCore/bindings/scripts/CodeGeneratorObjC.pm b/WebCore/bindings/scripts/CodeGeneratorObjC.pm
index 7d66979..91cbd0b 100644
--- a/WebCore/bindings/scripts/CodeGeneratorObjC.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorObjC.pm
@@ -199,6 +199,7 @@ sub new
 
     $codeGenerator = shift;
     $outputDir = shift;
+    shift; # $outputHeadersDir
     shift; # $useLayerOnTop
     shift; # $preprocessor
     $writeDependencies = shift;
diff --git a/WebCore/bindings/scripts/CodeGeneratorV8.pm b/WebCore/bindings/scripts/CodeGeneratorV8.pm
index 5eb6d3d..a9e0828 100644
--- a/WebCore/bindings/scripts/CodeGeneratorV8.pm
+++ b/WebCore/bindings/scripts/CodeGeneratorV8.pm
@@ -30,6 +30,7 @@ use Digest::MD5;
 
 my $module = "";
 my $outputDir = "";
+my $outputHeadersDir = "";
 
 my @headerContent = ();
 my @implContentHeader = ();
@@ -71,6 +72,7 @@ sub new
 
     $codeGenerator = shift;
     $outputDir = shift;
+    $outputHeadersDir = shift;
 
     bless($reference, $object);
     return $reference;
@@ -110,7 +112,7 @@ sub GenerateInterface
     my $name = $dataNode->name;
 
     # Open files for writing
-    my $headerFileName = "$outputDir/V8$name.h";
+    my $headerFileName = "$outputHeadersDir/V8$name.h";
     my $implFileName = "$outputDir/V8$name.cpp";
 
     open($IMPL, ">$implFileName") || die "Couldn't open file $implFileName";
diff --git a/WebCore/bindings/scripts/generate-bindings.pl b/WebCore/bindings/scripts/generate-bindings.pl
index aee81b5..57a3928 100755
--- a/WebCore/bindings/scripts/generate-bindings.pl
+++ b/WebCore/bindings/scripts/generate-bindings.pl
@@ -39,20 +39,22 @@ use CodeGenerator;
 
 my @idlDirectories;
 my $outputDirectory;
+my $outputHeadersDirectory;
 my $generator;
 my $defines;
-my $prefix;
 my $filename;
+my $prefix;
 my $preprocessor;
 my $writeDependencies;
 my $verbose;
 
 GetOptions('include=s@' => \@idlDirectories,
            'outputDir=s' => \$outputDirectory,
+           'outputHeadersDir=s' => \$outputHeadersDirectory,
            'generator=s' => \$generator,
            'defines=s' => \$defines,
-           'prefix=s' => \$prefix,
            'filename=s' => \$filename,
+           'prefix=s' => \$prefix,
            'preprocessor=s' => \$preprocessor,
            'verbose' => \$verbose,
            'write-dependencies' => \$writeDependencies);
@@ -64,6 +66,9 @@ die('Must specify generator') unless defined($generator);
 die('Must specify output directory.') unless defined($outputDirectory);
 die('Must specify defines') unless defined($defines);
 
+if (!$outputHeadersDirectory) {
+    $outputHeadersDirectory = $outputDirectory;
+}
 if ($verbose) {
     print "$generator: $idlFile\n";
 }
@@ -74,5 +79,5 @@ my $parser = IDLParser->new(!$verbose);
 my $document = $parser->Parse($idlFile, $defines, $preprocessor);
 
 # Generate desired output for given IDL file.
-my $codeGen = CodeGenerator->new(\@idlDirectories, $generator, $outputDirectory, 0, $preprocessor, $writeDependencies, $verbose);
+my $codeGen = CodeGenerator->new(\@idlDirectories, $generator, $outputDirectory, $outputHeadersDirectory, 0, $preprocessor, $writeDependencies, $verbose);
 $codeGen->ProcessDocument($document, $defines);
diff --git a/WebCore/inspector/CodeGeneratorInspector.pm b/WebCore/inspector/CodeGeneratorInspector.pm
index 4dacd90..afaddec 100644
--- a/WebCore/inspector/CodeGeneratorInspector.pm
+++ b/WebCore/inspector/CodeGeneratorInspector.pm
@@ -89,6 +89,7 @@ EOF
 
 my $codeGenerator;
 my $outputDir;
+my $outputHeadersDir;
 my $writeDependencies;
 my $verbose;
 
@@ -113,6 +114,7 @@ sub new
 
     $codeGenerator = shift;
     $outputDir = shift;
+    $outputHeadersDir = shift;
     shift; # $useLayerOnTop
     shift; # $preprocessor
     $writeDependencies = shift;
@@ -277,7 +279,7 @@ sub finish
     close($SOURCE);
     undef($SOURCE);
 
-    open(my $HEADER, ">$outputDir/$frontendClassName.h") || die "Couldn't open file $outputDir/$frontendClassName.h";
+    open(my $HEADER, ">$outputHeadersDir/$frontendClassName.h") || die "Couldn't open file $outputHeadersDir/$frontendClassName.h";
     print $HEADER generateHeader($frontendClassName, \%frontendTypes, $frontendConstructor, \%frontendMethods, $frontendFooter);
     close($HEADER);
     undef($HEADER);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list