RESOLVED FIXED 75863
[Qt] REGRESSION(r100130): Clean build feature is broken.
https://bugs.webkit.org/show_bug.cgi?id=75863
Summary [Qt] REGRESSION(r100130): Clean build feature is broken.
Csaba Osztrogonác
Reported 2012-01-09 09:25:55 PST
This bug is revealed by http://trac.webkit.org/changeset/104403 . r104402 - everything is OK: http://build.webkit.sed.hu/builders/x86-32%20Linux%20Qt%20Release%20-%20Qt5-WebKit1/builds/2048 r104403 - everything is broken: http://build.webkit.sed.hu/builders/x86-32%20Linux%20Qt%20Release%20-%20Qt5-WebKit1/builds/2049 The build log said that "Feature ENABLE_CSS_FILTERS added, clean build needed!", but somehow all layout tests fails. After removing WebKitBuild manually, everything is OK.
Attachments
Patch (1.27 KB, patch)
2012-01-10 03:14 PST, Csaba Osztrogonác
no flags
Csaba Osztrogonác
Comment 1 2012-01-09 09:31:28 PST
You can easily reproduce this bug: - update to r104402 - build - update to r104403 - build - run layout tests on css2.1
Csaba Osztrogonác
Comment 2 2012-01-09 10:25:39 PST
I dig a little bit and it seems HAVE_FONTCONFIG=1 is absolutely missing during the second build and it makes all tests fail, because webkit testsfonts aren't used.
Csaba Osztrogonác
Comment 3 2012-01-09 10:40:07 PST
I think the problem is in webkitdirs.pm - sub qtFeatureDefaults. configure.pro is only called in build phase to determine if we have fontconfig or not. But feauteres.prf is called by build-webkit to set all defines passed to the build before build phase. I'll continue digging tomorrow.
Tor Arne Vestbø
Comment 4 2012-01-09 15:12:04 PST
(In reply to comment #3) > I think the problem is in webkitdirs.pm - sub qtFeatureDefaults. > configure.pro is only called in build phase to determine if we have fontconfig or not. But feauteres.prf is called by build-webkit to set all defines passed to the build before build phase. > > I'll continue digging tomorrow. The configure-checks run by configure.pro cache their results in Tools/qmake/.qmake.cache, which should get loaded by features.prf on subsequent runs. I'll help you dig tomorrow.
Csaba Osztrogonác
Comment 5 2012-01-10 02:58:05 PST
The original change caused this regression: http://trac.webkit.org/changeset/100130?format=diff&new=100130 I managed to catch what cause this bug. Now the build phases are the following if a feature define changes: - configure.pro is called to determine feature defines (and config tests too which generates Tools/qmake/.qmake.cache) - clean build triggered because a feature define changes (rmtree WebKitBuild) - make, which will be incorrect, because Tools/qmake/.qmake.cache is non-existent and HAVE_FONTCONFIG=1 macro doesn't exist, but it should be.
Csaba Osztrogonác
Comment 6 2012-01-10 03:14:13 PST
Tor Arne Vestbø
Comment 7 2012-01-10 03:18:43 PST
Comment on attachment 121820 [details] Patch cool, thanks!
Csaba Osztrogonác
Comment 8 2012-01-10 03:30:45 PST
Comment on attachment 121820 [details] Patch Clearing flags on attachment: 121820 Committed r104548: <http://trac.webkit.org/changeset/104548>
Csaba Osztrogonác
Comment 9 2012-01-10 03:30:53 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.