NEW 143753
[GTK][W32] WTF tries to include non-existent WTFHeaderDetection.h
https://bugs.webkit.org/show_bug.cgi?id=143753
Summary [GTK][W32] WTF tries to include non-existent WTFHeaderDetection.h
LRN
Reported 2015-04-15 06:11:13 PDT
WTF/WTFHeaderDetection.h seems to be from some other universe, there are no rules to generate it in webkit-2.4, except for MSVS projects.
Attachments
[GTK][W32] Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x (2.27 KB, patch)
2015-04-15 07:33 PDT, LRN
ossy: review-
Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x (1.69 KB, patch)
2015-04-15 09:38 PDT, LRN
bfulgham: review-
LRN
Comment 1 2015-04-15 07:33:34 PDT
Created attachment 250788 [details] [GTK][W32] Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x WTF/WTFHeaderDetection.h seems to be from some other universe, there are no rules to generate it in webkit-2.4, except for MSVS projects.
Csaba Osztrogonác
Comment 2 2015-04-15 08:10:51 PDT
Comment on attachment 250788 [details] [GTK][W32] Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x View in context: https://bugs.webkit.org/attachment.cgi?id=250788&action=review > Source/WTF/ChangeLog:15 > + [W32] Change printf format attribute to gnu_printf, MinGW compatibility > + > + "printf" means "gnu_printf" when compiling for non-Windows and means > + "ms_printf" when compiling for Windows. The code, however, does seems to be > + assuming gnu_printf (judging by the use of %z and %l). > + > + Fix this by explicitly specifying gnu_printf format style. > + To ensure that gnu-compatible printf implementation is used, compile > + with -D__USE_MINGW_ANSI_STDIO=1, it will automagically turn all *printf() > + invocations into __mingw_*printf(), which are gnu-compatible. > + > + Only one function that won't be turned is _vsnprintf(). Ifdef its use and > + call vsnprintf() instead when __USE_MINGW_ANSI_STDIO != 0. It seems it is unrelated to this change. > Source/WTF/ChangeLog:23 > + * wtf/Assertions.cpp: > + * wtf/Assertions.h: ditto > Source/WTF/wtf/Platform.h:616 > +#ifdef _MSC_VER > #include <WTF/WTFHeaderDetection.h> > +#endif It is a generated header (see WTFGenerated.make) which is used by Apple Windows port.
LRN
Comment 3 2015-04-15 09:38:07 PDT
Created attachment 250796 [details] Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x WTF/WTFHeaderDetection.h seems to be from some other universe, there are no rules to generate it in webkit-2.4, except for MSVS projects.
Csaba Osztrogonác
Comment 4 2015-04-15 09:44:42 PDT
(In reply to comment #3) > Created attachment 250796 [details] > Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x > > WTF/WTFHeaderDetection.h seems to be from some other universe, > there are no rules to generate it in webkit-2.4, except for MSVS projects. Ah, so don't you want to land this change in WebKit trunk, but only the WebKitGTK 2.4 release branch?
Brent Fulgham
Comment 5 2015-04-15 09:49:01 PDT
Comment on attachment 250796 [details] Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x View in context: https://bugs.webkit.org/attachment.cgi?id=250796&action=review I don't think this is quite right. I think it would be better to have the GTK Win32 build simply generate a "false" case WTFHeaderDetection.h file. That will work with all compiler combinations. I know there are some people using MingW32 to build the WinCairo port, and others working with the Intel compiler. Now that Clang is somewhat usable on Windows, I expect that to be an issue as well. > Source/WTF/ChangeLog:1 > +2015-04-15 РÑÑлан ÐжбÑлаÑов <lrn1986@gmail.com> The string encoding here seems wrong! > Source/WTF/wtf/Platform.h:614 > +#ifdef _MSC_VER This change breaks the build for people using MingW32 (or other compilers) to build WebKit on Windows.
LRN
Comment 6 2015-04-15 10:29:08 PDT
(In reply to comment #5) > Comment on attachment 250796 [details] > Don't include non-existing WTF/WTFHeaderDetection.h in 2.4.x > > View in context: > https://bugs.webkit.org/attachment.cgi?id=250796&action=review > > I don't think this is quite right. I think it would be better to have the > GTK Win32 build simply generate a "false" case WTFHeaderDetection.h file. > That will work with all compiler combinations. I know there are some people > using MingW32 to build the WinCairo port, and others working with the Intel > compiler. Now that Clang is somewhat usable on Windows, I expect that to be > an issue as well. I went for the simplest fix possible that does not immediately break anything else. Considering the fact that building webkit takes a few hours, i'm not very well-motivated to try anything fancier, unless i absolutely have to. > > > Source/WTF/ChangeLog:1 > > +2015-04-15 РÑÑлан ÐжбÑлаÑов <lrn1986@gmail.com> > > The string encoding here seems wrong! Poor UTF-8 support in the review module. The text is in UTF-8 in the attachment itself. > > > Source/WTF/wtf/Platform.h:614 > > +#ifdef _MSC_VER > > This change breaks the build for people using MingW32 (or other compilers) > to build WebKit on Windows. What about #ifdef HAVE_WTFHEADERDETECTION_H and modifying these mysterious other-ports-with-buildsystems-that-use-gnu-toolchain-but-refuse-to-use-gnu-autotools-which-do-not-generate-this-header? Well, i guess they'd tell me to fix the autotools-based buildsystem used to build webkitgtk instead, which would be fair enough. Thing is, 2.4.x is the last version to have autotools, newer webkitgtk uses cmake, and we'll go back to square one.
Note You need to log in before you can comment on or make changes to this bug.