Ideally GTK should be compiled with USE_EXPORT_MACROS and default to hidden visibility. This patch just adds the relevant exports to get that happening. This is an offshoot of https://bugs.webkit.org/show_bug.cgi?id=210366 which got GTK compiling with hidden visibility.
Created attachment 398088 [details] WIP Patch
Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API
Created attachment 398096 [details] Enable export macros everywhere
Created attachment 398197 [details] Patch
Created attachment 398198 [details] Patch
Comment on attachment 398198 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=398198&action=review Wow, that must have been a lot of EWSing. I wonder what this will break.... > Source/WTF/wtf/ASCIICType.cpp:30 > -WTF_EXPORT_PRIVATE const unsigned char asciiCaseFoldTable[256] = { > +const unsigned char asciiCaseFoldTable[256] = { Since you're changing this anyway... should use static keyword to restrict it to file scope. > Tools/TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:707 > -extern "C" void webkit_web_extension_initialize_with_user_data(WebKitWebExtension* extension, GVariant* userData) > +extern "C" WTF_EXPORT_DECLARATION void webkit_web_extension_initialize_with_user_data(WebKitWebExtension* extension, GVariant* userData) I guess WTF_EXPORT_DECLARATION is probably a suitable macro to choose for these. Not much benefit in creating a new one. OK.
Comment on attachment 398198 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=398198&action=review >> Source/WTF/wtf/ASCIICType.cpp:30 >> +const unsigned char asciiCaseFoldTable[256] = { > > Since you're changing this anyway... should use static keyword to restrict it to file scope. Its actually defined in the header file. The following appeared in a build log so I just went ahead and fixed it. ../../Source/WTF/wtf/ASCIICType.cpp:30:62: warning: ‘visibility’ attribute ignored [-Wattributes] WTF_EXPORT_PRIVATE const unsigned char asciiCaseFoldTable[256] = {
Committed r261014: <https://trac.webkit.org/changeset/261014> All reviewed patches have been landed. Closing bug and clearing flags on attachment 398198 [details].
<rdar://problem/62743117>