Ravenports generated: 06 Mar 2021 03:49
[ravenports.git] / bucket_58 / webkit2
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               webkit2
4 VERSION=                2.30.5
5 KEYWORDS=               www
6 VARIANTS=               gtk3
7 SDESC[gtk3]=            Opensource browser engine using the GTK+ 3 toolkit
8 HOMEPAGE=               https://www.webkitgtk.org/
9 CONTACT=                nobody
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            https://www.webkitgtk.org/releases/
13                         https://fossies.org/linux/www/
14 DISTFILE[1]=            webkitgtk-2.30.5.tar.xz:main
15 DF_INDEX=               1
16 SPKGS[gtk3]=            complete
17                         primary
18                         nls
19
20 OPTIONS_AVAILABLE=      GTK3
21 OPTIONS_STANDARD=       none
22 VOPTS[gtk3]=            GTK3=ON
23
24 BUILD_DEPENDS=          gperf:primary:standard
25 BUILDRUN_DEPENDS=       enchant:single:standard
26                         fontconfig:primary:standard
27                         freetype:primary:standard
28                         WebP:single:standard
29                         libsecret:primary:standard
30                         libnotify:primary:standard
31                         hyphen:single:standard
32                         harfbuzz:icu:standard
33                         icu:single:standard
34                         libsoup:primary:standard
35                         libgcrypt:single:standard
36                         gnutls:primary:standard
37                         libtasn1:primary:standard
38                         geoclue:single:standard
39                         woff2:single:standard
40                         gstreamer1-plugins-base:primary:standard
41                         openjpeg:single:standard
42
43 USES=                   png mesa cmake pkgconfig sqlite bison perl:build
44                         python:build ruby:build gettext-tools cpe
45 GNOME_COMPONENTS=       gtk3 gdkpixbuf introspection libxslt
46 XORG_COMPONENTS=        x11 xcomposite xdamage xext xrender xt ice
47
48 DISTNAME=               webkitgtk-2.30.5
49
50 LICENSE=                GPLv2+:primary BSD3CLAUSE:primary
51 LICENSE_TERMS=          primary:{{WRKDIR}}/TERMS
52 LICENSE_FILE=           GPLv2+:stock
53                         BSD3CLAUSE:{{WRKDIR}}/LICENSE_BSD
54 LICENSE_AWK=            BSD3CLAUSE:"^$$"
55                         TERMS:"^$$"
56 LICENSE_SOURCE=         BSD3CLAUSE:{{WRKSRC}}/Source/WebCore/css/parser/MediaQueryBlockWatcher.h
57                         TERMS:{{WRKSRC}}/Source/WebCore/style/StyleScope.cpp
58 LICENSE_SCHEME=         multi
59
60 CPE_PRODUCT=            webkitgtk
61 CPE_VENDOR=             webkitgtk
62 FPC_EQUIVALENT=         www/webkit2-gtk3
63
64 CONFIGURE_ENV=          XDG_CACHE_HOME={{WRKDIR}}
65
66 INSTALL_TARGET=         install
67 SOVERSION=              37.49.9
68 PLIST_SUB=              JSSOVERSION=18.17.13
69                         JSSOMAJOR=18
70                         WKAPI=4.0
71                         WKAPIMAJOR=4
72
73 CXXFLAGS=               -DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=32
74 CMAKE_ARGS=             -DPORT=GTK
75                         -DENABLE_GEOLOCATION:BOOL=ON
76                         -DENABLE_GLES2:BOOL=ON
77                         -DENABLE_MINIBROWSER:BOOL=ON
78                         -DENABLE_WAYLAND_TARGET:BOOL=OFF
79                         -DENABLE_BUBBLEWRAP_SANDBOX:BOOL=OFF
80                         -DSUPPRESS_ASSERT:BOOL=ON
81                         -DUSE_SYSTEMD:BOOL=OFF
82                         -DUSE_GSTREAMER_GL:BOOL=OFF
83
84 [GTK3].DESCRIPTION=                     Build GTK+3 variant
85 [GTK3].MAKEFILE_ON=                     BROWSER_PLUGIN_DIR={{LOCALBASE}}/lib/browser_plugins/symlinks/webkit-gtk3
86
87 post-patch:
88         ${REINPLACE_CMD} -e 's|/usr/lib/browser/plugins|${BROWSER_PLUGINS_DIR}|' \
89                 ${WRKSRC}/Source/WebKit/Shared/Plugins/unix/PluginSearchPath.cpp
90         echo 'add_compile_definitions("U_DEFINE_FALSE_AND_TRUE=1")' \
91                 >> ${WRKSRC}/Source/WTF/wtf/CMakeLists.txt
92
93 post-install:
94         (cd ${STAGEDIR}${PREFIX}/bin && \
95          ${LN} -s ../libexec/webkit2gtk-4.0/jsc jsc-4 && \
96          ${LN} -s ../libexec/webkit2gtk-4.0/MiniBrowser MiniBrowser-4)
97         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.*
98         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so
99         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/*
100         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver
101
102 [FILE:576:descriptions/desc.primary]
103 WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable
104 for projects requiring any kind of web integration, from hybrid HTML/CSS
105 applications to full-fledged web browsers. It offers WebKit's full
106 functionality and is useful in a wide range of systems from desktop
107 computers to embedded systems like phones, tablets, and televisions.
108
109 WebKitGTK+ is made by a lively community of developers and designers,
110 who hope to bring the web platform to everyone. It's the official web
111 engine of the GNOME platform and is used in browsers such as Epiphany
112 and Midori.
113
114
115 [FILE:102:distinfo]
116 7d0dab08e3c5ae07bec80b2822ef42e952765d5724cac86eb23999bfed5a7f1f     22311832 webkitgtk-2.30.5.tar.xz
117
118
119 [FILE:6319:manifests/plist.primary]
120 bin/
121  MiniBrowser-%%WKAPIMAJOR%%
122  WebKitWebDriver
123  jsc-%%WKAPIMAJOR%%
124 include/webkitgtk-%%WKAPI%%/JavaScriptCore/
125  JSBase.h
126  JSContextRef.h
127  JSObjectRef.h
128  JSStringRef.h
129  JSTypedArray.h
130  JSValueRef.h
131  JavaScript.h
132  WebKitAvailability.h
133 include/webkitgtk-%%WKAPI%%/jsc/
134  JSCAutocleanups.h
135  JSCClass.h
136  JSCContext.h
137  JSCDefines.h
138  JSCException.h
139  JSCOptions.h
140  JSCValue.h
141  JSCVersion.h
142  JSCVirtualMachine.h
143  JSCWeakValue.h
144  jsc.h
145 include/webkitgtk-%%WKAPI%%/webkit2/
146  WebKitApplicationInfo.h
147  WebKitAuthenticationRequest.h
148  WebKitAutocleanups.h
149  WebKitAutomationSession.h
150  WebKitBackForwardList.h
151  WebKitBackForwardListItem.h
152  WebKitColorChooserRequest.h
153  WebKitConsoleMessage.h
154  WebKitContextMenu.h
155  WebKitContextMenuActions.h
156  WebKitContextMenuItem.h
157  WebKitCookieManager.h
158  WebKitCredential.h
159  WebKitDefines.h
160  WebKitDeviceInfoPermissionRequest.h
161  WebKitDownload.h
162  WebKitEditingCommands.h
163  WebKitEditorState.h
164  WebKitEnumTypes.h
165  WebKitError.h
166  WebKitFaviconDatabase.h
167  WebKitFileChooserRequest.h
168  WebKitFindController.h
169  WebKitFormSubmissionRequest.h
170  WebKitForwardDeclarations.h
171  WebKitFrame.h
172  WebKitGeolocationManager.h
173  WebKitGeolocationPermissionRequest.h
174  WebKitHitTestResult.h
175  WebKitInputMethodContext.h
176  WebKitInstallMissingMediaPluginsPermissionRequest.h
177  WebKitJavascriptResult.h
178  WebKitMimeInfo.h
179  WebKitNavigationAction.h
180  WebKitNavigationPolicyDecision.h
181  WebKitNetworkProxySettings.h
182  WebKitNotification.h
183  WebKitNotificationPermissionRequest.h
184  WebKitOptionMenu.h
185  WebKitOptionMenuItem.h
186  WebKitPermissionRequest.h
187  WebKitPlugin.h
188  WebKitPointerLockPermissionRequest.h
189  WebKitPolicyDecision.h
190  WebKitPrintCustomWidget.h
191  WebKitPrintOperation.h
192  WebKitResponsePolicyDecision.h
193  WebKitScriptDialog.h
194  WebKitScriptWorld.h
195  WebKitSecurityManager.h
196  WebKitSecurityOrigin.h
197  WebKitSettings.h
198  WebKitURIRequest.h
199  WebKitURIResponse.h
200  WebKitURISchemeRequest.h
201  WebKitURIUtilities.h
202  WebKitUserContent.h
203  WebKitUserContentFilterStore.h
204  WebKitUserContentManager.h
205  WebKitUserMediaPermissionRequest.h
206  WebKitUserMessage.h
207  WebKitVersion.h
208  WebKitWebContext.h
209  WebKitWebEditor.h
210  WebKitWebExtension.h
211  WebKitWebExtensionAutocleanups.h
212  WebKitWebHitTestResult.h
213  WebKitWebInspector.h
214  WebKitWebPage.h
215  WebKitWebProcessEnumTypes.h
216  WebKitWebResource.h
217  WebKitWebView.h
218  WebKitWebViewBase.h
219  WebKitWebViewSessionState.h
220  WebKitWebsiteData.h
221  WebKitWebsiteDataAccessPermissionRequest.h
222  WebKitWebsiteDataManager.h
223  WebKitWebsitePolicies.h
224  WebKitWindowProperties.h
225  webkit-web-extension.h
226  webkit2.h
227 include/webkitgtk-%%WKAPI%%/webkitdom/
228  WebKitDOMAttr.h
229  WebKitDOMBlob.h
230  WebKitDOMCDATASection.h
231  WebKitDOMCSSRule.h
232  WebKitDOMCSSRuleList.h
233  WebKitDOMCSSStyleDeclaration.h
234  WebKitDOMCSSStyleSheet.h
235  WebKitDOMCSSValue.h
236  WebKitDOMCharacterData.h
237  WebKitDOMClientRect.h
238  WebKitDOMClientRectList.h
239  WebKitDOMComment.h
240  WebKitDOMCustom.h
241  WebKitDOMCustomUnstable.h
242  WebKitDOMDOMImplementation.h
243  WebKitDOMDOMSelection.h
244  WebKitDOMDOMTokenList.h
245  WebKitDOMDOMWindow.h
246  WebKitDOMDOMWindowUnstable.h
247  WebKitDOMDeprecated.h
248  WebKitDOMDocument.h
249  WebKitDOMDocumentFragment.h
250  WebKitDOMDocumentFragmentUnstable.h
251  WebKitDOMDocumentType.h
252  WebKitDOMDocumentUnstable.h
253  WebKitDOMElement.h
254  WebKitDOMElementUnstable.h
255  WebKitDOMEvent.h
256  WebKitDOMEventTarget.h
257  WebKitDOMFile.h
258  WebKitDOMFileList.h
259  WebKitDOMHTMLAnchorElement.h
260  WebKitDOMHTMLAppletElement.h
261  WebKitDOMHTMLAreaElement.h
262  WebKitDOMHTMLBRElement.h
263  WebKitDOMHTMLBaseElement.h
264  WebKitDOMHTMLBodyElement.h
265  WebKitDOMHTMLButtonElement.h
266  WebKitDOMHTMLCanvasElement.h
267  WebKitDOMHTMLCollection.h
268  WebKitDOMHTMLDListElement.h
269  WebKitDOMHTMLDirectoryElement.h
270  WebKitDOMHTMLDivElement.h
271  WebKitDOMHTMLDocument.h
272  WebKitDOMHTMLElement.h
273  WebKitDOMHTMLElementUnstable.h
274  WebKitDOMHTMLEmbedElement.h
275  WebKitDOMHTMLFieldSetElement.h
276  WebKitDOMHTMLFontElement.h
277  WebKitDOMHTMLFormElement.h
278  WebKitDOMHTMLFrameElement.h
279  WebKitDOMHTMLFrameSetElement.h
280  WebKitDOMHTMLHRElement.h
281  WebKitDOMHTMLHeadElement.h
282  WebKitDOMHTMLHeadingElement.h
283  WebKitDOMHTMLHtmlElement.h
284  WebKitDOMHTMLIFrameElement.h
285  WebKitDOMHTMLImageElement.h
286  WebKitDOMHTMLInputElement.h
287  WebKitDOMHTMLLIElement.h
288  WebKitDOMHTMLLabelElement.h
289  WebKitDOMHTMLLegendElement.h
290  WebKitDOMHTMLLinkElement.h
291  WebKitDOMHTMLMapElement.h
292  WebKitDOMHTMLMarqueeElement.h
293  WebKitDOMHTMLMenuElement.h
294  WebKitDOMHTMLMetaElement.h
295  WebKitDOMHTMLModElement.h
296  WebKitDOMHTMLOListElement.h
297  WebKitDOMHTMLObjectElement.h
298  WebKitDOMHTMLOptGroupElement.h
299  WebKitDOMHTMLOptionElement.h
300  WebKitDOMHTMLOptionsCollection.h
301  WebKitDOMHTMLParagraphElement.h
302  WebKitDOMHTMLParamElement.h
303  WebKitDOMHTMLPreElement.h
304  WebKitDOMHTMLQuoteElement.h
305  WebKitDOMHTMLScriptElement.h
306  WebKitDOMHTMLSelectElement.h
307  WebKitDOMHTMLStyleElement.h
308  WebKitDOMHTMLTableCaptionElement.h
309  WebKitDOMHTMLTableCellElement.h
310  WebKitDOMHTMLTableColElement.h
311  WebKitDOMHTMLTableElement.h
312  WebKitDOMHTMLTableRowElement.h
313  WebKitDOMHTMLTableSectionElement.h
314  WebKitDOMHTMLTextAreaElement.h
315  WebKitDOMHTMLTitleElement.h
316  WebKitDOMHTMLUListElement.h
317  WebKitDOMKeyboardEvent.h
318  WebKitDOMMediaList.h
319  WebKitDOMMouseEvent.h
320  WebKitDOMNamedNodeMap.h
321  WebKitDOMNode.h
322  WebKitDOMNodeFilter.h
323  WebKitDOMNodeIterator.h
324  WebKitDOMNodeList.h
325  WebKitDOMObject.h
326  WebKitDOMProcessingInstruction.h
327  WebKitDOMRange.h
328  WebKitDOMRangeUnstable.h
329  WebKitDOMStyleSheet.h
330  WebKitDOMStyleSheetList.h
331  WebKitDOMText.h
332  WebKitDOMTreeWalker.h
333  WebKitDOMUIEvent.h
334  WebKitDOMWheelEvent.h
335  WebKitDOMXPathExpression.h
336  WebKitDOMXPathNSResolver.h
337  WebKitDOMXPathResult.h
338  webkitdom.h
339  webkitdomautocleanups.h
340  webkitdomdefines.h
341 lib/
342  libjavascriptcoregtk-%%WKAPI%%.so
343  libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOMAJOR%%
344  libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOVERSION%%
345  libwebkit2gtk-%%WKAPI%%.so
346  libwebkit2gtk-%%WKAPI%%.so.%%SOMAJOR%%
347  libwebkit2gtk-%%WKAPI%%.so.%%SOVERSION%%
348 lib/girepository-1.0/
349  JavaScriptCore-%%WKAPI%%.typelib
350  WebKit2-%%WKAPI%%.typelib
351  WebKit2WebExtension-%%WKAPI%%.typelib
352 lib/pkgconfig/
353  javascriptcoregtk-%%WKAPI%%.pc
354  webkit2gtk-%%WKAPI%%.pc
355  webkit2gtk-web-extension-%%WKAPI%%.pc
356 lib/webkit2gtk-%%WKAPI%%/injected-bundle/libwebkit2gtkinjectedbundle.so
357 libexec/webkit2gtk-%%WKAPI%%/
358  MiniBrowser
359  WebKitNetworkProcess
360  WebKitPluginProcess
361  WebKitWebProcess
362  jsc
363 share/gir-1.0/
364  JavaScriptCore-%%WKAPI%%.gir
365  WebKit2-%%WKAPI%%.gir
366  WebKit2WebExtension-%%WKAPI%%.gir
367
368
369 [FILE:2566:manifests/plist.nls]
370 share/locale/ar/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
371 share/locale/as/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
372 share/locale/bg/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
373 share/locale/ca/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
374 share/locale/cs/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
375 share/locale/da/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
376 share/locale/de/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
377 share/locale/el/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
378 share/locale/en_CA/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
379 share/locale/en_GB/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
380 share/locale/eo/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
381 share/locale/es/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
382 share/locale/et/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
383 share/locale/eu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
384 share/locale/fi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
385 share/locale/fr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
386 share/locale/gl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
387 share/locale/gu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
388 share/locale/he/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
389 share/locale/hi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
390 share/locale/hu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
391 share/locale/id/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
392 share/locale/it/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
393 share/locale/ja/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
394 share/locale/kn/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
395 share/locale/ko/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
396 share/locale/lt/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
397 share/locale/lv/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
398 share/locale/ml/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
399 share/locale/mr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
400 share/locale/nb/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
401 share/locale/nl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
402 share/locale/or/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
403 share/locale/pa/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
404 share/locale/pl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
405 share/locale/pt/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
406 share/locale/pt_BR/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
407 share/locale/ro/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
408 share/locale/ru/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
409 share/locale/sl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
410 share/locale/sr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
411 share/locale/sr@latin/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
412 share/locale/sv/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
413 share/locale/ta/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
414 share/locale/te/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
415 share/locale/tr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
416 share/locale/uk/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
417 share/locale/vi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
418 share/locale/zh_CN/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
419
420
421 [FILE:433:patches/patch-CMakeLists.txt]
422 --- CMakeLists.txt.orig 2020-08-12 09:17:37 UTC
423 +++ CMakeLists.txt
424 @@ -179,6 +179,11 @@ if (ENABLE_API_TESTS)
425      enable_testing()
426  endif ()
427  
428 +if (SUPPRESS_ASSERT)
429 +   add_definitions(-DNDEBUG=1)
430 +   add_definitions(-D__OPTIMIZE__)
431 +endif()
432 +
433  # -----------------------------------------------------------------------------
434  # Add module directories
435  # -----------------------------------------------------------------------------
436
437
438 [FILE:534:patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h]
439 --- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig       2021-02-01 09:29:55 UTC
440 +++ Source/JavaScriptCore/assembler/ARM64Assembler.h
441 @@ -2827,6 +2827,8 @@ public:
442          sys_cache_control(kCacheFunctionPrepareForExecution, code, size);
443  #elif OS(FUCHSIA)
444          zx_cache_flush(code, size, ZX_CACHE_FLUSH_INSN);
445 +#elif OS(FREEBSD) || OS(NETBSD)
446 +        __clear_cache(code, reinterpret_cast<char*>(code) + size);
447  #elif OS(LINUX)
448          size_t page = pageSize();
449          uintptr_t current = reinterpret_cast<uintptr_t>(code);
450
451
452 [FILE:534:patches/patch-Source_WTF_wtf_MemoryPressureHandler.cpp]
453 --- Source/WTF/wtf/MemoryPressureHandler.cpp.orig       2020-08-12 09:17:54 UTC
454 +++ Source/WTF/wtf/MemoryPressureHandler.cpp
455 @@ -53,7 +53,7 @@ MemoryPressureHandler& MemoryPressureHan
456  }
457  
458  MemoryPressureHandler::MemoryPressureHandler()
459 -#if OS(LINUX) || OS(FREEBSD)
460 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
461      : m_holdOffTimer(RunLoop::main(), this, &MemoryPressureHandler::holdOffTimerFired)
462  #elif OS(WINDOWS)
463      : m_windowsMeasurementTimer(RunLoop::main(), this, &MemoryPressureHandler::windowsMeasurementTimerFired)
464
465
466 [FILE:644:patches/patch-Source_WTF_wtf_MemoryPressureHandler.h]
467 --- Source/WTF/wtf/MemoryPressureHandler.h.orig 2020-08-12 09:17:54 UTC
468 +++ Source/WTF/wtf/MemoryPressureHandler.h
469 @@ -66,7 +66,7 @@ public:
470  
471      WTF_EXPORT_PRIVATE void setShouldUsePeriodicMemoryMonitor(bool);
472  
473 -#if OS(LINUX) || OS(FREEBSD)
474 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
475      WTF_EXPORT_PRIVATE void triggerMemoryPressureEvent(bool isCritical);
476  #endif
477  
478 @@ -200,7 +200,7 @@ private:
479      Win32Handle m_lowMemoryHandle;
480  #endif
481  
482 -#if OS(LINUX) || OS(FREEBSD)
483 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
484      RunLoop::Timer<MemoryPressureHandler> m_holdOffTimer;
485      void holdOffTimerFired();
486  #endif
487
488
489 [FILE:326:patches/patch-Source_WTF_wtf_NumberOfCores.cpp]
490 --- Source/WTF/wtf/NumberOfCores.cpp.orig       2020-08-12 09:17:54 UTC
491 +++ Source/WTF/wtf/NumberOfCores.cpp
492 @@ -31,6 +31,7 @@
493  #if OS(DARWIN)
494  #include <sys/sysctl.h>
495  #elif OS(LINUX) || OS(AIX) || OS(OPENBSD) || OS(NETBSD) || OS(FREEBSD)
496 +#include <stdio.h> // sscanf
497  #include <unistd.h>
498  #elif OS(WINDOWS)
499  #include <windows.h>
500
501
502 [FILE:390:patches/patch-Source_WTF_wtf_PlatformGTK.cmake]
503 --- Source/WTF/wtf/PlatformGTK.cmake.orig       2020-08-12 09:17:54 UTC
504 +++ Source/WTF/wtf/PlatformGTK.cmake
505 @@ -50,7 +50,7 @@ if (CMAKE_SYSTEM_NAME MATCHES "Linux")
506  
507          unix/MemoryPressureHandlerUnix.cpp
508      )
509 -elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
510 +elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly")
511      list(APPEND WTF_SOURCES
512          generic/MemoryFootprintGeneric.cpp
513  
514
515
516 [FILE:1426:patches/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp]
517 --- Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp.orig      2020-08-12 09:17:54 UTC
518 +++ Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
519 @@ -28,7 +28,11 @@
520  #include "config.h"
521  #include <wtf/MemoryPressureHandler.h>
522  
523 +#if OS(FREEBSD) || defined(__DragonFly__)
524 +#include <stdlib.h>
525 +#else
526  #include <malloc.h>
527 +#endif
528  #include <unistd.h>
529  #include <wtf/MainThread.h>
530  #include <wtf/MemoryFootprint.h>
531 @@ -36,7 +40,7 @@
532  
533  #if OS(LINUX)
534  #include <wtf/linux/CurrentProcessMemoryStatus.h>
535 -#elif OS(FREEBSD)
536 +#elif OS(FREEBSD) || defined(__DragonFly__)
537  #include <sys/sysctl.h>
538  #include <sys/types.h>
539  #include <sys/user.h>
540 @@ -116,7 +120,7 @@ static size_t processMemoryUsage()
541      ProcessMemoryStatus memoryStatus;
542      currentProcessMemoryStatus(memoryStatus);
543      return (memoryStatus.resident - memoryStatus.shared);
544 -#elif OS(FREEBSD)
545 +#elif OS(FREEBSD) || defined(__DragonFly__)
546      static size_t pageSize = sysconf(_SC_PAGE_SIZE);
547      struct kinfo_proc info;
548      size_t infolen = sizeof(info);
549 @@ -130,7 +134,11 @@ static size_t processMemoryUsage()
550      if (sysctl(mib, 4, &info, &infolen, nullptr, 0))
551          return 0;
552  
553 +# ifdef __DragonFly__
554 +    return static_cast<size_t>(info.kp_vm_rssize - info.kp_vm_tsize) * pageSize;
555 +# else
556      return static_cast<size_t>(info.ki_rssize - info.ki_tsize) * pageSize;
557 +# endif
558  #else
559  #error "Missing a platform specific way of determining the memory usage"
560  #endif
561
562
563 [FILE:610:patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp]
564 --- Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp.orig    2020-08-12 09:17:55 UTC
565 +++ Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
566 @@ -403,7 +403,7 @@ TOSTRING(neonDrawLighting) ":" NL
567      "vmin.f32 " TMP2_D0 ", " TMP2_D0 ", " CONST_ONE_HI_D NL
568      "vmul.f32 " TMP3_Q ", " COLOR_Q ", " TMP2_D0 "[1]" NL
569      "vcvt.u32.f32 " TMP3_Q ", " TMP3_Q NL
570 -    "vmov.u32 r2, r3, " TMP3_S0 ", " TMP3_S1 NL
571 +    "vmov r2, r3, " TMP3_S0 ", " TMP3_S1 NL
572      // The color values are stored in-place.
573      "strb r2, [" PIXELS_R ", #-11]" NL
574      "strb r3, [" PIXELS_R ", #-10]" NL
575
576
577 [FILE:396:patches/patch-Source_WebCore_platform_graphics_egl_GLContextEGL.cpp]
578 --- Source/WebCore/platform/graphics/egl/GLContextEGL.cpp.orig  2020-08-12 09:17:55 UTC
579 +++ Source/WebCore/platform/graphics/egl/GLContextEGL.cpp
580 @@ -45,6 +45,8 @@
581  #include "OpenGLShims.h"
582  #endif
583  
584 +#include <X11/Xlib.h>
585 +
586  #if ENABLE(ACCELERATED_2D_CANVAS)
587  // cairo-gl.h includes some definitions from GLX that conflict with
588  // the ones provided by us. Since GLContextEGL doesn't use any GLX
589
590
591 [FILE:309:patches/patch-Source_WebCore_platform_network_DNS.h]
592 --- Source/WebCore/platform/network/DNS.h.orig  2020-08-12 09:17:55 UTC
593 +++ Source/WebCore/platform/network/DNS.h
594 @@ -30,6 +30,9 @@
595  #include <ws2tcpip.h>
596  #else
597  #include <netinet/in.h>
598 +# if defined __DragonFly__ || defined __FreeBSD__
599 +#  include <sys/socket.h>
600 +# endif
601  #endif
602  
603  #include <wtf/Forward.h>
604
605
606 [FILE:336:patches/patch-Source_WebDriver_PlatformGTK.cmake]
607 --- Source/WebDriver/PlatformGTK.cmake.orig     2020-08-12 09:17:56 UTC
608 +++ Source/WebDriver/PlatformGTK.cmake
609 @@ -5,6 +5,7 @@ add_definitions(-DLIBEXECDIR="${CMAKE_IN
610  list(APPEND WebDriver_SYSTEM_INCLUDE_DIRECTORIES
611      "${GLIB_INCLUDE_DIRS}"
612      "${LIBSOUP_INCLUDE_DIRS}"
613 +    "${ICU_INCLUDE_DIRS}"
614  )
615  
616  list(APPEND WebDriver_SOURCES
617
618
619 [FILE:792:patches/patch-Source_WebKit_Platform_unix_SharedMemoryUnix.cpp]
620 --- Source/WebKit/Platform/unix/SharedMemoryUnix.cpp.orig       2020-08-12 09:17:56 UTC
621 +++ Source/WebKit/Platform/unix/SharedMemoryUnix.cpp
622 @@ -137,7 +137,13 @@ static int createSharedMemory()
623  
624      CString tempName;
625      for (int tries = 0; fileDescriptor == -1 && tries < 10; ++tries) {
626 -        String name = String("/WK2SharedMemory.") + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
627 +        String name =
628 +#ifdef __DragonFly__
629 +                      String("/tmp/WK2SharedMemory.")
630 +#else
631 +                      String("/WK2SharedMemory.")
632 +#endif
633 +                      + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
634          tempName = name.utf8();
635  
636          do {
637
638
639 [FILE:1374:patches/patch-Source_bmalloc_bmalloc_AvailableMemory.cpp]
640 Add DragonFly support
641 FreeBSD 11 doesn't have sysinfo.h like DragonFly doesn't
642
643 --- Source/bmalloc/bmalloc/AvailableMemory.cpp.orig     2020-08-12 09:17:57 UTC
644 +++ Source/bmalloc/bmalloc/AvailableMemory.cpp
645 @@ -47,10 +47,15 @@
646  #if BOS(LINUX)
647  #include <algorithm>
648  #include <fcntl.h>
649 +#elif defined(__DragonFly__)
650 +#include "VMAllocate.h"
651 +#include <sys/sysctl.h>
652 +#include <sys/kinfo.h>
653 +#include <sys/types.h>
654 +#include <sys/user.h>
655  #elif BOS(FREEBSD)
656  #include "VMAllocate.h"
657  #include <sys/sysctl.h>
658 -#include <sys/sysinfo.h>
659  #include <sys/types.h>
660  #include <sys/user.h>
661  #endif
662 @@ -169,7 +174,7 @@ static size_t computeAvailableMemory()
663      return ((sizeAccordingToKernel + multiple - 1) / multiple) * multiple;
664  #elif BOS(LINUX)
665      return LinuxMemory::singleton().availableMemory;
666 -#elif BOS(FREEBSD)
667 +#elif 0
668      struct sysinfo info;
669      if (!sysinfo(&info))
670          return info.totalram * info.mem_unit;
671 @@ -223,7 +228,11 @@ MemoryStatus memoryStatus()
672  
673      size_t memoryFootprint = 0;
674      if (!sysctl(mib, 4, &info, &infolen, nullptr, 0))
675 +# ifdef __DragonFly__
676 +        memoryFootprint = static_cast<size_t>(info.kp_vm_rssize) * vmPageSize();
677 +# else
678          memoryFootprint = static_cast<size_t>(info.ki_rssize) * vmPageSize();
679 +# endif
680  
681      double percentInUse = static_cast<double>(memoryFootprint) / static_cast<double>(availableMemory());
682  #endif
683