Reviewed by Tim Hatcher (earlier version).
authordarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 11 May 2006 17:23:50 +0000 (17:23 +0000)
committerdarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 11 May 2006 17:23:50 +0000 (17:23 +0000)
        - http://bugzilla.opendarwin.org/show_bug.cgi?id=8821
          use the preprocessor for IDL files

        * bindings/scripts/IDLParser.pm: Invoke the preprocessor via the "gcc"
        driver script, passing "-E" so we only preprocess, "-P" so we don't get
        "#line" directives, and "-x c++" so we handle both C and C++ comments.
        Removed the code to eliminate comments since the preprocessor handles that.
        * css/make-css-file-arrays.pl: This already invoked the preprocessor, but
        updated it to do the same way as above.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14299 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/bindings/scripts/IDLParser.pm
WebCore/css/make-css-file-arrays.pl

index 493e08e3886cf636d53e674acf1eb04bbdb189b7..f974085f6803b36c9606885fda1afa61b9c6463b 100644 (file)
@@ -1,3 +1,17 @@
+2006-05-11  Darin Adler  <darin@apple.com>
+
+        Reviewed by Tim Hatcher (earlier version).
+
+        - http://bugzilla.opendarwin.org/show_bug.cgi?id=8821
+          use the preprocessor for IDL files
+
+        * bindings/scripts/IDLParser.pm: Invoke the preprocessor via the "gcc"
+        driver script, passing "-E" so we only preprocess, "-P" so we don't get
+        "#line" directives, and "-x c++" so we handle both C and C++ comments.
+        Removed the code to eliminate comments since the preprocessor handles that.
+        * css/make-css-file-arrays.pl: This already invoked the preprocessor, but
+        updated it to do the same way as above.
+
 2006-05-11  Anders Carlsson  <acarlsson@apple.com>
 
         Reviewed by Darin.
index d831c881cf86eb9239c7c452e247c2822459ff53..15d93d0aadd809ec846edb6512b288173d4294be 100644 (file)
@@ -61,15 +61,9 @@ sub Parse
   my $fileName = shift;
 
   print " | *** Starting to parse $fileName...\n |\n" if(!$beQuiet);
-  open(FILE, "<$fileName") || die "Couldn't open requested file (file: $fileName)!";
+  open FILE, "-|", "/usr/bin/gcc", "-E", "-P", "-x", "c++", $fileName or die "Could not open $fileName";
   my @documentContent = <FILE>;
-  close(FILE);
-
-  # Remove all comments, pleasing our parsing engine a lot...
-  my $documentData = join("#", @documentContent);
-  $documentData =~ s/\/\*(.|[\n\r])*?\*\///g;  # /* ... */ style comments
-  $documentData =~ s/\/\/[^\n\r]*//g;      # // ...... style comments
-  @documentContent = split("#", $documentData);
+  close FILE;
 
   my $dataAvailable = 0;
 
index 361af53710e8433096746a8112088dd46113192d..237c1ba82a70929a09d2ca3cd872f419f039a6a5 100755 (executable)
@@ -39,7 +39,7 @@ for my $in (@ARGV) {
     my $name = $1;
 
     # Slurp in the CSS file.
-    open IN, "-|", "/usr/bin/cpp", "-P", $in or die;
+    open IN, "-|", "/usr/bin/gcc", "-E", "-P", "-x", "c++", $in or die;
     my $text; { local $/; $text = <IN>; }
     close IN;