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