Title: [128430] trunk
Revision
128430
Author
[email protected]
Date
2012-09-13 01:54:29 -0700 (Thu, 13 Sep 2012)

Log Message

[Qt] The ANGLE build on Windows breaks with GnuWin32's flex because it is too old
https://bugs.webkit.org/show_bug.cgi?id=96359

Patch by Simon Hausmann <[email protected]> on 2012-09-13
Reviewed by Tor Arne Vestbø.

GnuWin32's flex is 2.5.4 and that is too old for ANGLE's preprocessor
lexer. The only viable alternative I could find on Windows that provides
binaries is the winflexbison distribution (http://sourceforge.net/projects/winflexbison/),
so let's use that one instead.

Source/ThirdParty/ANGLE:

* DerivedSources.pri:

Tools:

* Scripts/webkitdirs.pm:
(checkRequiredSystemConfig):
* qmake/mkspecs/features/default_pre.prf:

Modified Paths

Diff

Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (128429 => 128430)


--- trunk/Source/ThirdParty/ANGLE/ChangeLog	2012-09-13 08:50:40 UTC (rev 128429)
+++ trunk/Source/ThirdParty/ANGLE/ChangeLog	2012-09-13 08:54:29 UTC (rev 128430)
@@ -1,3 +1,17 @@
+2012-09-13  Simon Hausmann  <[email protected]>
+
+        [Qt] The ANGLE build on Windows breaks with GnuWin32's flex because it is too old
+        https://bugs.webkit.org/show_bug.cgi?id=96359
+
+        Reviewed by Tor Arne Vestbø.
+
+        GnuWin32's flex is 2.5.4 and that is too old for ANGLE's preprocessor
+        lexer. The only viable alternative I could find on Windows that provides
+        binaries is the winflexbison distribution (http://sourceforge.net/projects/winflexbison/),
+        so let's use that one instead.
+
+        * DerivedSources.pri:
+
 2012-09-12  Simon Hausmann  <[email protected]>
 
         [Qt] Build on Windows requires bison/flex in PATH

Modified: trunk/Source/ThirdParty/ANGLE/DerivedSources.pri (128429 => 128430)


--- trunk/Source/ThirdParty/ANGLE/DerivedSources.pri	2012-09-13 08:50:40 UTC (rev 128429)
+++ trunk/Source/ThirdParty/ANGLE/DerivedSources.pri	2012-09-13 08:54:29 UTC (rev 128430)
@@ -17,7 +17,7 @@
 
 angleflex.output = ${QMAKE_FILE_BASE}_lex.cpp
 angleflex.input = ANGLE_FLEX_SOURCES
-angleflex.commands = flex --noline --nounistd --outfile=${QMAKE_FILE_OUT} ${QMAKE_FILE_IN}
+angleflex.commands = $$FLEX --noline --nounistd --outfile=${QMAKE_FILE_OUT} ${QMAKE_FILE_IN}
 GENERATORS += angleflex
 
 ANGLE_BISON_SOURCES = \

Modified: trunk/Tools/ChangeLog (128429 => 128430)


--- trunk/Tools/ChangeLog	2012-09-13 08:50:40 UTC (rev 128429)
+++ trunk/Tools/ChangeLog	2012-09-13 08:54:29 UTC (rev 128430)
@@ -1,5 +1,21 @@
 2012-09-13  Simon Hausmann  <[email protected]>
 
+        [Qt] The ANGLE build on Windows breaks with GnuWin32's flex because it is too old
+        https://bugs.webkit.org/show_bug.cgi?id=96359
+
+        Reviewed by Tor Arne Vestbø.
+
+        GnuWin32's flex is 2.5.4 and that is too old for ANGLE's preprocessor
+        lexer. The only viable alternative I could find on Windows that provides
+        binaries is the winflexbison distribution (http://sourceforge.net/projects/winflexbison/),
+        so let's use that one instead.
+
+        * Scripts/webkitdirs.pm:
+        (checkRequiredSystemConfig):
+        * qmake/mkspecs/features/default_pre.prf:
+
+2012-09-13  Simon Hausmann  <[email protected]>
+
         [Qt] Add configuration for production builds
         https://bugs.webkit.org/show_bug.cgi?id=96607
 

Modified: trunk/Tools/Scripts/webkitdirs.pm (128429 => 128430)


--- trunk/Tools/Scripts/webkitdirs.pm	2012-09-13 08:50:40 UTC (rev 128429)
+++ trunk/Tools/Scripts/webkitdirs.pm	2012-09-13 08:54:29 UTC (rev 128430)
@@ -1542,7 +1542,12 @@
             print "*************************************************************\n";
         }
     } elsif (isGtk() or isQt() or isWx() or isEfl()) {
-        my @cmds = qw(flex bison gperf);
+        my @cmds = qw(bison gperf);
+        if (isQt() and isWindows()) {
+            push @cmds, "win_flex";
+        } else {
+            push @cmds, "flex";
+        }
         my @missing = ();
         my $oldPath = $ENV{PATH};
         if (isQt() and isWindows()) {

Modified: trunk/Tools/qmake/mkspecs/features/default_pre.prf (128429 => 128430)


--- trunk/Tools/qmake/mkspecs/features/default_pre.prf	2012-09-13 08:50:40 UTC (rev 128429)
+++ trunk/Tools/qmake/mkspecs/features/default_pre.prf	2012-09-13 08:54:29 UTC (rev 128430)
@@ -108,3 +108,8 @@
     SQLITE3SRCDIR = $$QT.core.sources/../3rdparty/sqlite/
 }
 
+# A newer version of flex is required on Windows. At the moment the only
+# one that appears to provide binaries and is not cygwin is winflex.
+FLEX = flex
+win32: FLEX = win_flex
+
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to