Ravenports generated: 21 Nov 2020 23:00
[ravenports.git] / bucket_58 / webkit2
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               webkit2
4 VERSION=                2.30.3
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.3.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                         autoselect-python:single:standard
26 BUILDRUN_DEPENDS=       enchant:single:standard
27                         fontconfig:primary:standard
28                         freetype:primary:standard
29                         WebP:single:standard
30                         libsecret:primary:standard
31                         libnotify:primary:standard
32                         hyphen:single:standard
33                         harfbuzz:icu:standard
34                         icu:single:standard
35                         libsoup:primary:standard
36                         libgcrypt:single:standard
37                         gnutls:primary:standard
38                         libtasn1:primary:standard
39                         geoclue:single:standard
40                         woff2:single:standard
41                         gstreamer1-plugins-base:primary:standard
42                         openjpeg:single:standard
43
44 USES=                   png mesa cmake pkgconfig sqlite bison perl:build
45                         python:build ruby:build gettext-tools cpe
46 GNOME_COMPONENTS=       gtk3 gdkpixbuf introspection libxslt
47 XORG_COMPONENTS=        x11 xcomposite xdamage xext xrender xt ice
48
49 DISTNAME=               webkitgtk-2.30.3
50
51 LICENSE=                GPLv2+:primary BSD3CLAUSE:primary
52 LICENSE_TERMS=          primary:{{WRKDIR}}/TERMS
53 LICENSE_FILE=           GPLv2+:stock
54                         BSD3CLAUSE:{{WRKDIR}}/LICENSE_BSD
55 LICENSE_AWK=            BSD3CLAUSE:"^$$"
56                         TERMS:"^$$"
57 LICENSE_SOURCE=         BSD3CLAUSE:{{WRKSRC}}/Source/WebCore/css/parser/MediaQueryBlockWatcher.h
58                         TERMS:{{WRKSRC}}/Source/WebCore/style/StyleScope.cpp
59 LICENSE_SCHEME=         multi
60
61 CPE_PRODUCT=            webkitgtk
62 CPE_VENDOR=             webkitgtk
63 FPC_EQUIVALENT=         www/webkit2-gtk3
64
65 CONFIGURE_ENV=          XDG_CACHE_HOME={{WRKDIR}}
66
67 INSTALL_TARGET=         install
68 SOVERSION=              37.49.7
69 PLIST_SUB=              JSSOVERSION=18.17.11
70                         JSSOMAJOR=18
71                         WKAPI=4.0
72                         WKAPIMAJOR=4
73
74 CXXFLAGS=               -DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=32
75 CMAKE_ARGS=             -DPORT=GTK
76                         -DENABLE_GEOLOCATION:BOOL=ON
77                         -DENABLE_GLES2:BOOL=ON
78                         -DENABLE_MINIBROWSER:BOOL=ON
79                         -DENABLE_WAYLAND_TARGET:BOOL=OFF
80                         -DENABLE_BUBBLEWRAP_SANDBOX:BOOL=OFF
81                         -DSUPPRESS_ASSERT:BOOL=ON
82                         -DUSE_SYSTEMD:BOOL=OFF
83                         -DUSE_GSTREAMER_GL:BOOL=OFF
84
85 [GTK3].DESCRIPTION=                     Build GTK+3 variant
86 [GTK3].MAKEFILE_ON=                     BROWSER_PLUGIN_DIR={{LOCALBASE}}/lib/browser_plugins/symlinks/webkit-gtk3
87
88 post-patch:
89         ${REINPLACE_CMD} -e 's|/usr/lib/browser/plugins|${BROWSER_PLUGINS_DIR}|' \
90                 ${WRKSRC}/Source/WebKit/Shared/Plugins/unix/PluginSearchPath.cpp
91         echo 'add_compile_definitions("U_DEFINE_FALSE_AND_TRUE=1")' \
92                 >> ${WRKSRC}/Source/WTF/wtf/CMakeLists.txt
93
94 post-install:
95         (cd ${STAGEDIR}${PREFIX}/bin && \
96          ${LN} -s ../libexec/webkit2gtk-4.0/jsc jsc-4 && \
97          ${LN} -s ../libexec/webkit2gtk-4.0/MiniBrowser MiniBrowser-4)
98         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.*
99         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so
100         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/*
101         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver
102
103 [FILE:576:descriptions/desc.primary]
104 WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable
105 for projects requiring any kind of web integration, from hybrid HTML/CSS
106 applications to full-fledged web browsers. It offers WebKit's full
107 functionality and is useful in a wide range of systems from desktop
108 computers to embedded systems like phones, tablets, and televisions.
109
110 WebKitGTK+ is made by a lively community of developers and designers,
111 who hope to bring the web platform to everyone. It's the official web
112 engine of the GNOME platform and is used in browsers such as Epiphany
113 and Midori.
114
115
116 [FILE:102:distinfo]
117 6dea14f03916882816f2fed9497a5103fc54b2ab8602ab145ca991e4951e5e7f     22311704 webkitgtk-2.30.3.tar.xz
118
119
120 [FILE:6298:manifests/plist.primary]
121 bin/
122  MiniBrowser-%%WKAPIMAJOR%%
123  WebKitWebDriver
124  jsc-%%WKAPIMAJOR%%
125 include/webkitgtk-%%WKAPI%%/JavaScriptCore/
126  JSBase.h
127  JSContextRef.h
128  JSObjectRef.h
129  JSStringRef.h
130  JSTypedArray.h
131  JSValueRef.h
132  JavaScript.h
133  WebKitAvailability.h
134 include/webkitgtk-%%WKAPI%%/jsc/
135  JSCAutocleanups.h
136  JSCClass.h
137  JSCContext.h
138  JSCDefines.h
139  JSCException.h
140  JSCOptions.h
141  JSCValue.h
142  JSCVersion.h
143  JSCVirtualMachine.h
144  JSCWeakValue.h
145  jsc.h
146 include/webkitgtk-%%WKAPI%%/webkit2/
147  WebKitApplicationInfo.h
148  WebKitAuthenticationRequest.h
149  WebKitAutocleanups.h
150  WebKitAutomationSession.h
151  WebKitBackForwardList.h
152  WebKitBackForwardListItem.h
153  WebKitColorChooserRequest.h
154  WebKitConsoleMessage.h
155  WebKitContextMenu.h
156  WebKitContextMenuActions.h
157  WebKitContextMenuItem.h
158  WebKitCookieManager.h
159  WebKitCredential.h
160  WebKitDefines.h
161  WebKitDeviceInfoPermissionRequest.h
162  WebKitDownload.h
163  WebKitEditingCommands.h
164  WebKitEditorState.h
165  WebKitEnumTypes.h
166  WebKitError.h
167  WebKitFaviconDatabase.h
168  WebKitFileChooserRequest.h
169  WebKitFindController.h
170  WebKitFormSubmissionRequest.h
171  WebKitForwardDeclarations.h
172  WebKitFrame.h
173  WebKitGeolocationManager.h
174  WebKitGeolocationPermissionRequest.h
175  WebKitHitTestResult.h
176  WebKitInputMethodContext.h
177  WebKitInstallMissingMediaPluginsPermissionRequest.h
178  WebKitJavascriptResult.h
179  WebKitMimeInfo.h
180  WebKitNavigationAction.h
181  WebKitNavigationPolicyDecision.h
182  WebKitNetworkProxySettings.h
183  WebKitNotification.h
184  WebKitNotificationPermissionRequest.h
185  WebKitOptionMenu.h
186  WebKitOptionMenuItem.h
187  WebKitPermissionRequest.h
188  WebKitPlugin.h
189  WebKitPointerLockPermissionRequest.h
190  WebKitPolicyDecision.h
191  WebKitPrintCustomWidget.h
192  WebKitPrintOperation.h
193  WebKitResponsePolicyDecision.h
194  WebKitScriptDialog.h
195  WebKitScriptWorld.h
196  WebKitSecurityManager.h
197  WebKitSecurityOrigin.h
198  WebKitSettings.h
199  WebKitURIRequest.h
200  WebKitURIResponse.h
201  WebKitURISchemeRequest.h
202  WebKitURIUtilities.h
203  WebKitUserContent.h
204  WebKitUserContentFilterStore.h
205  WebKitUserContentManager.h
206  WebKitUserMediaPermissionRequest.h
207  WebKitUserMessage.h
208  WebKitVersion.h
209  WebKitWebContext.h
210  WebKitWebEditor.h
211  WebKitWebExtension.h
212  WebKitWebExtensionAutocleanups.h
213  WebKitWebHitTestResult.h
214  WebKitWebInspector.h
215  WebKitWebPage.h
216  WebKitWebProcessEnumTypes.h
217  WebKitWebResource.h
218  WebKitWebView.h
219  WebKitWebViewBase.h
220  WebKitWebViewSessionState.h
221  WebKitWebsiteData.h
222  WebKitWebsiteDataAccessPermissionRequest.h
223  WebKitWebsiteDataManager.h
224  WebKitWebsitePolicies.h
225  WebKitWindowProperties.h
226  webkit-web-extension.h
227  webkit2.h
228 include/webkitgtk-%%WKAPI%%/webkitdom/
229  WebKitDOMAttr.h
230  WebKitDOMBlob.h
231  WebKitDOMCDATASection.h
232  WebKitDOMCSSRule.h
233  WebKitDOMCSSRuleList.h
234  WebKitDOMCSSStyleDeclaration.h
235  WebKitDOMCSSStyleSheet.h
236  WebKitDOMCSSValue.h
237  WebKitDOMCharacterData.h
238  WebKitDOMClientRect.h
239  WebKitDOMClientRectList.h
240  WebKitDOMComment.h
241  WebKitDOMCustom.h
242  WebKitDOMCustomUnstable.h
243  WebKitDOMDOMImplementation.h
244  WebKitDOMDOMSelection.h
245  WebKitDOMDOMTokenList.h
246  WebKitDOMDOMWindow.h
247  WebKitDOMDOMWindowUnstable.h
248  WebKitDOMDeprecated.h
249  WebKitDOMDocument.h
250  WebKitDOMDocumentFragment.h
251  WebKitDOMDocumentFragmentUnstable.h
252  WebKitDOMDocumentType.h
253  WebKitDOMDocumentUnstable.h
254  WebKitDOMElement.h
255  WebKitDOMElementUnstable.h
256  WebKitDOMEvent.h
257  WebKitDOMEventTarget.h
258  WebKitDOMFile.h
259  WebKitDOMFileList.h
260  WebKitDOMHTMLAnchorElement.h
261  WebKitDOMHTMLAppletElement.h
262  WebKitDOMHTMLAreaElement.h
263  WebKitDOMHTMLBRElement.h
264  WebKitDOMHTMLBaseElement.h
265  WebKitDOMHTMLBodyElement.h
266  WebKitDOMHTMLButtonElement.h
267  WebKitDOMHTMLCanvasElement.h
268  WebKitDOMHTMLCollection.h
269  WebKitDOMHTMLDListElement.h
270  WebKitDOMHTMLDirectoryElement.h
271  WebKitDOMHTMLDivElement.h
272  WebKitDOMHTMLDocument.h
273  WebKitDOMHTMLElement.h
274  WebKitDOMHTMLElementUnstable.h
275  WebKitDOMHTMLEmbedElement.h
276  WebKitDOMHTMLFieldSetElement.h
277  WebKitDOMHTMLFontElement.h
278  WebKitDOMHTMLFormElement.h
279  WebKitDOMHTMLFrameElement.h
280  WebKitDOMHTMLFrameSetElement.h
281  WebKitDOMHTMLHRElement.h
282  WebKitDOMHTMLHeadElement.h
283  WebKitDOMHTMLHeadingElement.h
284  WebKitDOMHTMLHtmlElement.h
285  WebKitDOMHTMLIFrameElement.h
286  WebKitDOMHTMLImageElement.h
287  WebKitDOMHTMLInputElement.h
288  WebKitDOMHTMLLIElement.h
289  WebKitDOMHTMLLabelElement.h
290  WebKitDOMHTMLLegendElement.h
291  WebKitDOMHTMLLinkElement.h
292  WebKitDOMHTMLMapElement.h
293  WebKitDOMHTMLMarqueeElement.h
294  WebKitDOMHTMLMenuElement.h
295  WebKitDOMHTMLMetaElement.h
296  WebKitDOMHTMLModElement.h
297  WebKitDOMHTMLOListElement.h
298  WebKitDOMHTMLObjectElement.h
299  WebKitDOMHTMLOptGroupElement.h
300  WebKitDOMHTMLOptionElement.h
301  WebKitDOMHTMLOptionsCollection.h
302  WebKitDOMHTMLParagraphElement.h
303  WebKitDOMHTMLParamElement.h
304  WebKitDOMHTMLPreElement.h
305  WebKitDOMHTMLQuoteElement.h
306  WebKitDOMHTMLScriptElement.h
307  WebKitDOMHTMLSelectElement.h
308  WebKitDOMHTMLStyleElement.h
309  WebKitDOMHTMLTableCaptionElement.h
310  WebKitDOMHTMLTableCellElement.h
311  WebKitDOMHTMLTableColElement.h
312  WebKitDOMHTMLTableElement.h
313  WebKitDOMHTMLTableRowElement.h
314  WebKitDOMHTMLTableSectionElement.h
315  WebKitDOMHTMLTextAreaElement.h
316  WebKitDOMHTMLTitleElement.h
317  WebKitDOMHTMLUListElement.h
318  WebKitDOMKeyboardEvent.h
319  WebKitDOMMediaList.h
320  WebKitDOMMouseEvent.h
321  WebKitDOMNamedNodeMap.h
322  WebKitDOMNode.h
323  WebKitDOMNodeFilter.h
324  WebKitDOMNodeIterator.h
325  WebKitDOMNodeList.h
326  WebKitDOMObject.h
327  WebKitDOMProcessingInstruction.h
328  WebKitDOMRange.h
329  WebKitDOMRangeUnstable.h
330  WebKitDOMStyleSheet.h
331  WebKitDOMStyleSheetList.h
332  WebKitDOMText.h
333  WebKitDOMTreeWalker.h
334  WebKitDOMUIEvent.h
335  WebKitDOMWheelEvent.h
336  WebKitDOMXPathExpression.h
337  WebKitDOMXPathNSResolver.h
338  WebKitDOMXPathResult.h
339  webkitdom.h
340  webkitdomautocleanups.h
341  webkitdomdefines.h
342 lib/
343  libjavascriptcoregtk-%%WKAPI%%.so
344  libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOMAJOR%%
345  libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOVERSION%%
346  libwebkit2gtk-%%WKAPI%%.so
347  libwebkit2gtk-%%WKAPI%%.so.%%SOMAJOR%%
348  libwebkit2gtk-%%WKAPI%%.so.%%SOVERSION%%
349 lib/girepository-1.0/
350  JavaScriptCore-%%WKAPI%%.typelib
351  WebKit2-%%WKAPI%%.typelib
352  WebKit2WebExtension-%%WKAPI%%.typelib
353 lib/pkgconfig/
354  javascriptcoregtk-%%WKAPI%%.pc
355  webkit2gtk-%%WKAPI%%.pc
356  webkit2gtk-web-extension-%%WKAPI%%.pc
357 lib/webkit2gtk-%%WKAPI%%/injected-bundle/libwebkit2gtkinjectedbundle.so
358 libexec/webkit2gtk-%%WKAPI%%/
359  MiniBrowser
360  WebKitNetworkProcess
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       2020-08-12 09:17:52 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