Ravenports generated: 27 Oct 2023 00:27
[ravenports.git] / bucket_58 / webkit2
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               webkit2
4 VERSION=                2.42.1
5 KEYWORDS=               www
6 VARIANTS=               api40 api41 api60
7 SDESC[api40]=           Opensource browser engine using GTK+3 (API 4.0)
8 SDESC[api41]=           Opensource browser engine using GTK+3 (API 4.1)
9 SDESC[api60]=           Opensource browser engine using GTK4 (API 6.0)
10 HOMEPAGE=               https://www.webkitgtk.org/
11 CONTACT=                nobody
12
13 DOWNLOAD_GROUPS=        main
14 SITES[main]=            https://www.webkitgtk.org/releases/
15                         https://fossies.org/linux/www/
16 DISTFILE[1]=            webkitgtk-2.42.1.tar.xz:main
17 DF_INDEX=               1
18 SPKGS[api40]=           complete
19                         primary
20                         nls
21                         dev
22 SPKGS[api41]=           complete
23                         primary
24                         nls
25                         dev
26 SPKGS[api60]=           complete
27                         primary
28                         nls
29                         dev
30
31 OPTIONS_AVAILABLE=      API40 API41 API60
32 OPTIONS_STANDARD=       none
33 VOPTS[api40]=           API40=ON API41=OFF API60=OFF
34 VOPTS[api41]=           API40=OFF API41=ON API60=OFF
35 VOPTS[api60]=           API40=OFF API41=OFF API60=ON
36
37 BUILD_DEPENDS=          geoclue:dev:standard
38                         gnutls:dev:standard
39                         gperf:primary:standard
40                         gstreamer1:dev:standard
41                         gstreamer1-plugins-base:dev:standard
42                         harfbuzz:dev:standard
43                         libgcrypt:dev:standard
44                         libnotify:dev:standard
45                         enchant:dev:standard
46                         lcms2:dev:standard
47                         libdrm:dev:standard
48                         libavif:dev:standard
49                         libsecret:dev:standard
50                         unifdef:primary:standard
51                         icu:dev:standard
52                         WebP:dev:standard
53                         libjxl:dev:standard
54 BUILDRUN_DEPENDS=       enchant:primary:standard
55                         WebP:primary:standard
56                         libsecret:primary:standard
57                         libnotify:primary:standard
58                         hyphen:single:standard
59                         harfbuzz:icu:standard
60                         icu:primary:standard
61                         libgcrypt:primary:standard
62                         gnutls:primary:standard
63                         libtasn1:primary:standard
64                         geoclue:primary:standard
65                         woff2:single:standard
66                         gstreamer1-plugins-base:primary:standard
67                         gstreamer1-plugins-base:plugin_gl:standard
68                         openjpeg:single:standard
69                         lcms2:primary:standard
70                         libdrm:primary:standard
71                         libavif:primary:standard
72                         libjxl:primary:standard
73
74 USES=                   png mesa cmake pkgconfig sqlite bison perl:build
75                         python:build ruby:build fontconfig jpeg cpe mold
76 C_USES[freebsd]=        gold
77 C_USES[midnightbsd]=    gold
78 GNOME_COMPONENTS=       gdkpixbuf introspection libxslt
79 XORG_COMPONENTS=        x11 xcomposite xdamage xext xrender xt ice xfixes
80
81 DISTNAME=               webkitgtk-2.42.1
82
83 LICENSE=                GPLv2+:primary BSD3CLAUSE:primary
84 LICENSE_TERMS=          primary:{{WRKDIR}}/TERMS
85 LICENSE_FILE=           GPLv2+:stock
86                         BSD3CLAUSE:{{WRKDIR}}/LICENSE_BSD
87 LICENSE_AWK=            BSD3CLAUSE:"^$$"
88                         TERMS:"^$$"
89 LICENSE_SOURCE=         BSD3CLAUSE:{{WRKSRC}}/Source/WebCore/css/parser/MediaQueryBlockWatcher.h
90                         TERMS:{{WRKSRC}}/Source/WebCore/style/StyleScope.cpp
91 LICENSE_SCHEME=         multi
92
93 CPE_PRODUCT=            webkitgtk
94 CPE_VENDOR=             webkitgtk
95 FPC_EQUIVALENT=         www/webkit2-gtk3
96
97 CONFIGURE_ENV=          XDG_CACHE_HOME={{WRKDIR}}
98
99 INSTALL_TARGET=         install
100 INSTALL_REQ_TOOLCHAIN=  yes
101 PLIST_SUB=              INTRO="@comment "
102
103 CXXFLAGS=               -DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=32
104 CMAKE_ARGS=             -DPORT=GTK
105                         -DENABLE_GEOLOCATION:BOOL=ON
106                         -DENABLE_MINIBROWSER:BOOL=ON
107                         -DENABLE_WAYLAND_TARGET:BOOL=OFF
108                         -DENABLE_BUBBLEWRAP_SANDBOX:BOOL=OFF
109                         -DENABLE_GAMEPAD:BOOL=OFF
110                         -DENABLE_INTROSPECTION:BOOL=OFF
111                         -DENABLE_JOURNALD_LOG:BOOL=OFF
112                         -DSUPPRESS_ASSERT:BOOL=ON
113                         -DUSE_JPEGXL:BOOL=ON
114                         -DUSE_GSTREAMER_GL:BOOL=ON
115                         -DUSE_GSTREAMER_TRANSCODER:BOOL=OFF
116                         -DUSE_OPENGL_OR_ES:BOOL=ON
117                         -DUSE_GBM:BOOL=ON
118
119 [API40].DESCRIPTION=                    Build WebKit2 API 4.0 variant
120 [API40].BUILDRUN_DEPENDS_ON=            libsoup-2.4:primary:standard
121 [API40].BUILD_DEPENDS_ON=               libsoup-2.4:dev:standard
122 [API40].CMAKE_ARGS_ON=                  -DUSE_SOUP2=ON
123 [API40].GNOME_COMPONENTS_ON=            gtk3
124 [API40].PLIST_SUB_ON=                   JSSOVERSION=18.23.10
125                                         JSSOMAJOR=18
126                                         SOVERSION=37.67.4
127                                         SOMAJOR=37
128                                         WKAPI=4.0
129                                         WKAPIMAJOR=4
130
131 [API41].DESCRIPTION=                    Build WebKit2 API 4.1 variant
132 [API41].BUILDRUN_DEPENDS_ON=            libsoup:primary:standard
133 [API41].BUILD_DEPENDS_ON=               libsoup:dev:standard
134 [API41].GNOME_COMPONENTS_ON=            gtk3
135 [API41].PLIST_SUB_ON=                   JSSOVERSION=0.4.10
136                                         JSSOMAJOR=0
137                                         SOVERSION=0.12.4
138                                         SOMAJOR=0
139                                         WKAPI=4.1
140                                         WKAPIMAJOR=4
141
142 [API60].DESCRIPTION=                    Build WebKit2 API 6.0 variant
143 [API60].BUILDRUN_DEPENDS_ON=            libsoup:primary:standard
144                                         libepoxy:dev:standard
145                                         graphene:primary:standard
146 [API60].BUILD_DEPENDS_ON=               libsoup:dev:standard
147                                         libepoxy:dev:standard
148                                         graphene:dev:standard
149 [API60].CMAKE_ARGS_ON=                  -DUSE_GTK4=ON
150 [API60].GNOME_COMPONENTS_ON=            gtk4
151 [API60].PLIST_SUB_ON=                   JSSOVERSION=1.1.10
152                                         JSSOMAJOR=1
153                                         SOVERSION=4.4.4
154                                         SOMAJOR=4
155                                         WKAPI=6.0
156                                         WKAPIMAJOR=6
157
158 post-patch:
159         echo 'add_compile_definitions("U_DEFINE_FALSE_AND_TRUE=1")' \
160                 >> ${WRKSRC}/Source/WTF/wtf/CMakeLists.txt
161
162 post-install-API40-ON:
163         (cd ${STAGEDIR}${PREFIX}/bin && \
164          ${LN} -s ../libexec/webkit2gtk-4.0/jsc jsc-4.0 && \
165          ${LN} -s ../libexec/webkit2gtk-4.0/MiniBrowser MiniBrowser-4.0)
166         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so
167         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/*
168         ${MV} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver \
169                 ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver-4.0
170
171 post-install-API60-ON:
172         (cd ${STAGEDIR}${PREFIX}/bin && \
173          ${LN} -s ../libexec/webkit2gtk-6.0/jsc jsc-6.0 && \
174          ${LN} -s ../libexec/webkit2gtk-6.0/MiniBrowser MiniBrowser-6.0)
175         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkitgtk-6.0/injected-bundle/*.so
176         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkitgtk-6.0/*
177         ${MV} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver \
178                 ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver-6.0
179
180 post-install:
181         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.*
182         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver
183
184 post-install-API41-ON:
185         (cd ${STAGEDIR}${PREFIX}/bin && \
186          ${LN} -s ../libexec/webkit2gtk-4.1/jsc jsc-4.1 && \
187          ${LN} -s ../libexec/webkit2gtk-4.1/MiniBrowser MiniBrowser-4.1)
188         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.1/injected-bundle/*.so
189         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.1/*
190         ${MV} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver \
191                 ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver-4.1
192
193 post-patch-sunos:
194         ${REINPLACE_CMD} -e '/USE_FILE_LOCK/ s|1|0|' \
195                 ${WRKSRC}/Source/WTF/wtf/PlatformUse.h \
196                 ${WRKSRC}/Source/WebCore/config.h
197
198 [FILE:574:descriptions/desc.primary]
199 WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable
200 for projects requiring any kind of web integration, from hybrid HTML/CSS
201 applications to full-fledged web browsers. It offers WebKit's full
202 functionality and is useful in a wide range of systems from desktop
203 computers to embedded systems like phones, tablets, and televisions.
204
205 WebKitGTK+ is made by a lively community of developers and designers,
206 who hope to bring the web platform to everyone. It's the official web
207 engine of the GNOME platform and is used in browsers such as Epiphany
208 and Surf.
209
210
211 [FILE:102:distinfo]
212 6f41fac9989d3ee51c08c48de1d439cdeddecbc757e34b6180987d99b16d2499     38011772 webkitgtk-2.42.1.tar.xz
213
214
215 [FILE:660:manifests/plist.primary]
216 %%INTRO%%lib/girepository-1.0/
217  JavaScriptCore-%%WKAPI%%.typelib
218  WebKit2-%%WKAPI%%.typelib
219  WebKit2WebExtension-%%WKAPI%%.typelib
220 %%INTRO%%share/gir-1.0/
221  JavaScriptCore-%%WKAPI%%.gir
222  WebKit2-%%WKAPI%%.gir
223  WebKit2WebExtension-%%WKAPI%%.gir
224 bin/
225  MiniBrowser-%%WKAPI%%
226  WebKitWebDriver-%%WKAPI%%
227  jsc-%%WKAPI%%
228 lib/
229  libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOMAJOR%%
230  libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOVERSION%%
231  libwebkit2gtk-%%WKAPI%%.so.%%SOMAJOR%%
232  libwebkit2gtk-%%WKAPI%%.so.%%SOVERSION%%
233 lib/webkit2gtk-%%WKAPI%%/injected-bundle/libwebkit2gtkinjectedbundle.so
234 libexec/webkit2gtk-%%WKAPI%%/
235  MiniBrowser
236  WebKitNetworkProcess
237  WebKitWebProcess
238  jsc
239
240
241 [FILE:2619:manifests/plist.nls]
242 share/locale/ar/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
243 share/locale/as/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
244 share/locale/bg/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
245 share/locale/ca/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
246 share/locale/cs/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
247 share/locale/da/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
248 share/locale/de/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
249 share/locale/el/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
250 share/locale/en_CA/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
251 share/locale/en_GB/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
252 share/locale/eo/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
253 share/locale/es/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
254 share/locale/et/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
255 share/locale/eu/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
256 share/locale/fi/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
257 share/locale/fr/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
258 share/locale/gl/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
259 share/locale/gu/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
260 share/locale/he/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
261 share/locale/hi/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
262 share/locale/hr/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
263 share/locale/hu/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
264 share/locale/id/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
265 share/locale/it/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
266 share/locale/ja/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
267 share/locale/ka/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
268 share/locale/kn/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
269 share/locale/ko/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
270 share/locale/lt/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
271 share/locale/lv/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
272 share/locale/ml/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
273 share/locale/mr/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
274 share/locale/nb/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
275 share/locale/nl/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
276 share/locale/or/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
277 share/locale/pa/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
278 share/locale/pl/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
279 share/locale/pt/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
280 share/locale/pt_BR/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
281 share/locale/ro/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
282 share/locale/ru/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
283 share/locale/sl/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
284 share/locale/sr/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
285 share/locale/sr@latin/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
286 share/locale/sv/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
287 share/locale/ta/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
288 share/locale/te/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
289 share/locale/tr/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
290 share/locale/uk/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
291 share/locale/vi/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
292 share/locale/zh_CN/LC_MESSAGES/WebKitGTK-%%WKAPI%%.mo
293
294
295 [FILE:5875:manifests/plist.dev]
296 include/webkitgtk-%%WKAPI%%/JavaScriptCore/
297  JSBase.h
298  JSContextRef.h
299  JSObjectRef.h
300  JSStringRef.h
301  JSTypedArray.h
302  JSValueRef.h
303  JavaScript.h
304  WebKitAvailability.h
305 include/webkitgtk-%%WKAPI%%/jsc/
306  JSCAutocleanups.h
307  JSCClass.h
308  JSCContext.h
309  JSCDefines.h
310  JSCException.h
311  JSCOptions.h
312  JSCValue.h
313  JSCVersion.h
314  JSCVirtualMachine.h
315  JSCWeakValue.h
316  jsc.h
317 include/webkitgtk-%%WKAPI%%/webkit/
318  WebKitApplicationInfo.h
319  WebKitAuthenticationRequest.h
320  WebKitAutocleanups.h
321  WebKitAutomationSession.h
322  WebKitBackForwardList.h
323  WebKitBackForwardListItem.h
324  WebKitClipboardPermissionRequest.h
325  WebKitColorChooserRequest.h
326  WebKitConsoleMessage.h
327  WebKitContextMenu.h
328  WebKitContextMenuActions.h
329  WebKitContextMenuItem.h
330  WebKitCookieManager.h
331  WebKitCredential.h
332  WebKitDefines.h
333  WebKitDeviceInfoPermissionRequest.h
334  WebKitDownload.h
335  WebKitEditingCommands.h
336  WebKitEditorState.h
337  WebKitEnumTypes.h
338  WebKitError.h
339  WebKitFaviconDatabase.h
340  WebKitFeature.h
341  WebKitFileChooserRequest.h
342  WebKitFindController.h
343  WebKitFormSubmissionRequest.h
344  WebKitFrame.h
345  WebKitGeolocationManager.h
346  WebKitGeolocationPermissionRequest.h
347  WebKitHitTestResult.h
348  WebKitInputMethodContext.h
349  WebKitInstallMissingMediaPluginsPermissionRequest.h
350  WebKitJavascriptResult.h
351  WebKitMediaKeySystemPermissionRequest.h
352  WebKitMemoryPressureSettings.h
353  WebKitMimeInfo.h
354  WebKitNavigationAction.h
355  WebKitNavigationPolicyDecision.h
356  WebKitNetworkProxySettings.h
357  WebKitNotification.h
358  WebKitNotificationPermissionRequest.h
359  WebKitOptionMenu.h
360  WebKitOptionMenuItem.h
361  WebKitPermissionRequest.h
362  WebKitPermissionStateQuery.h
363  WebKitPlugin.h
364  WebKitPointerLockPermissionRequest.h
365  WebKitPolicyDecision.h
366  WebKitPrintCustomWidget.h
367  WebKitPrintOperation.h
368  WebKitResponsePolicyDecision.h
369  WebKitScriptDialog.h
370  WebKitScriptWorld.h
371  WebKitSecurityManager.h
372  WebKitSecurityOrigin.h
373  WebKitSettings.h
374  WebKitURIRequest.h
375  WebKitURIResponse.h
376  WebKitURISchemeRequest.h
377  WebKitURISchemeResponse.h
378  WebKitURIUtilities.h
379  WebKitUserContent.h
380  WebKitUserContentFilterStore.h
381  WebKitUserContentManager.h
382  WebKitUserMediaPermissionRequest.h
383  WebKitUserMessage.h
384  WebKitVersion.h
385  WebKitWebContext.h
386  WebKitWebEditor.h
387  WebKitWebExtension.h
388  WebKitWebExtensionAutocleanups.h
389  WebKitWebFormManager.h
390  WebKitWebHitTestResult.h
391  WebKitWebInspector.h
392  WebKitWebPage.h
393  WebKitWebProcessEnumTypes.h
394  WebKitWebResource.h
395  WebKitWebView.h
396  WebKitWebViewBase.h
397  WebKitWebViewSessionState.h
398  WebKitWebsiteData.h
399  WebKitWebsiteDataAccessPermissionRequest.h
400  WebKitWebsiteDataManager.h
401  WebKitWebsitePolicies.h
402  WebKitWindowProperties.h
403 include/webkitgtk-%%WKAPI%%/webkit2/
404  webkit-web-extension.h
405  webkit2.h
406 include/webkitgtk-%%WKAPI%%/webkitdom/
407  WebKitDOMAttr.h
408  WebKitDOMBlob.h
409  WebKitDOMCDATASection.h
410  WebKitDOMCSSRule.h
411  WebKitDOMCSSRuleList.h
412  WebKitDOMCSSStyleDeclaration.h
413  WebKitDOMCSSStyleSheet.h
414  WebKitDOMCSSValue.h
415  WebKitDOMCharacterData.h
416  WebKitDOMClientRect.h
417  WebKitDOMClientRectList.h
418  WebKitDOMComment.h
419  WebKitDOMCustom.h
420  WebKitDOMCustomUnstable.h
421  WebKitDOMDOMImplementation.h
422  WebKitDOMDOMSelection.h
423  WebKitDOMDOMTokenList.h
424  WebKitDOMDOMWindow.h
425  WebKitDOMDOMWindowUnstable.h
426  WebKitDOMDeprecated.h
427  WebKitDOMDocument.h
428  WebKitDOMDocumentFragment.h
429  WebKitDOMDocumentFragmentUnstable.h
430  WebKitDOMDocumentType.h
431  WebKitDOMDocumentUnstable.h
432  WebKitDOMElement.h
433  WebKitDOMElementUnstable.h
434  WebKitDOMEvent.h
435  WebKitDOMEventTarget.h
436  WebKitDOMFile.h
437  WebKitDOMFileList.h
438  WebKitDOMHTMLAnchorElement.h
439  WebKitDOMHTMLAppletElement.h
440  WebKitDOMHTMLAreaElement.h
441  WebKitDOMHTMLBRElement.h
442  WebKitDOMHTMLBaseElement.h
443  WebKitDOMHTMLBodyElement.h
444  WebKitDOMHTMLButtonElement.h
445  WebKitDOMHTMLCanvasElement.h
446  WebKitDOMHTMLCollection.h
447  WebKitDOMHTMLDListElement.h
448  WebKitDOMHTMLDirectoryElement.h
449  WebKitDOMHTMLDivElement.h
450  WebKitDOMHTMLDocument.h
451  WebKitDOMHTMLElement.h
452  WebKitDOMHTMLElementUnstable.h
453  WebKitDOMHTMLEmbedElement.h
454  WebKitDOMHTMLFieldSetElement.h
455  WebKitDOMHTMLFontElement.h
456  WebKitDOMHTMLFormElement.h
457  WebKitDOMHTMLFrameElement.h
458  WebKitDOMHTMLFrameSetElement.h
459  WebKitDOMHTMLHRElement.h
460  WebKitDOMHTMLHeadElement.h
461  WebKitDOMHTMLHeadingElement.h
462  WebKitDOMHTMLHtmlElement.h
463  WebKitDOMHTMLIFrameElement.h
464  WebKitDOMHTMLImageElement.h
465  WebKitDOMHTMLInputElement.h
466  WebKitDOMHTMLLIElement.h
467  WebKitDOMHTMLLabelElement.h
468  WebKitDOMHTMLLegendElement.h
469  WebKitDOMHTMLLinkElement.h
470  WebKitDOMHTMLMapElement.h
471  WebKitDOMHTMLMarqueeElement.h
472  WebKitDOMHTMLMenuElement.h
473  WebKitDOMHTMLMetaElement.h
474  WebKitDOMHTMLModElement.h
475  WebKitDOMHTMLOListElement.h
476  WebKitDOMHTMLObjectElement.h
477  WebKitDOMHTMLOptGroupElement.h
478  WebKitDOMHTMLOptionElement.h
479  WebKitDOMHTMLOptionsCollection.h
480  WebKitDOMHTMLParagraphElement.h
481  WebKitDOMHTMLParamElement.h
482  WebKitDOMHTMLPreElement.h
483  WebKitDOMHTMLQuoteElement.h
484  WebKitDOMHTMLScriptElement.h
485  WebKitDOMHTMLSelectElement.h
486  WebKitDOMHTMLStyleElement.h
487  WebKitDOMHTMLTableCaptionElement.h
488  WebKitDOMHTMLTableCellElement.h
489  WebKitDOMHTMLTableColElement.h
490  WebKitDOMHTMLTableElement.h
491  WebKitDOMHTMLTableRowElement.h
492  WebKitDOMHTMLTableSectionElement.h
493  WebKitDOMHTMLTextAreaElement.h
494  WebKitDOMHTMLTitleElement.h
495  WebKitDOMHTMLUListElement.h
496  WebKitDOMKeyboardEvent.h
497  WebKitDOMMediaList.h
498  WebKitDOMMouseEvent.h
499  WebKitDOMNamedNodeMap.h
500  WebKitDOMNode.h
501  WebKitDOMNodeFilter.h
502  WebKitDOMNodeIterator.h
503  WebKitDOMNodeList.h
504  WebKitDOMObject.h
505  WebKitDOMProcessingInstruction.h
506  WebKitDOMRange.h
507  WebKitDOMRangeUnstable.h
508  WebKitDOMStyleSheet.h
509  WebKitDOMStyleSheetList.h
510  WebKitDOMText.h
511  WebKitDOMTreeWalker.h
512  WebKitDOMUIEvent.h
513  WebKitDOMWheelEvent.h
514  WebKitDOMXPathExpression.h
515  WebKitDOMXPathNSResolver.h
516  WebKitDOMXPathResult.h
517  webkitdom.h
518  webkitdomautocleanups.h
519  webkitdomdefines.h
520 lib/
521  libjavascriptcoregtk-%%WKAPI%%.so
522  libwebkit2gtk-%%WKAPI%%.so
523 lib/pkgconfig/
524  javascriptcoregtk-%%WKAPI%%.pc
525  webkit2gtk-%%WKAPI%%.pc
526  webkit2gtk-web-extension-%%WKAPI%%.pc
527
528
529 [FILE:601:manifests/plist.primary.api60]
530 %%INTRO%%lib/girepository-1.0/
531  JavaScriptCore-%%WKAPI%%.typelib
532  WebKit2-%%WKAPI%%.typelib
533  WebKit2WebExtension-%%WKAPI%%.typelib
534 %%INTRO%%share/gir-1.0/
535  JavaScriptCore-%%WKAPI%%.gir
536  WebKit2-%%WKAPI%%.gir
537  WebKit2WebExtension-%%WKAPI%%.gir
538 bin/
539  MiniBrowser-6.0
540  WebKitWebDriver-6.0
541  jsc-6.0
542 lib/
543  libjavascriptcoregtk-6.0.so.%%JSSOMAJOR%%
544  libjavascriptcoregtk-6.0.so.%%JSSOVERSION%%
545  libwebkitgtk-6.0.so.%%SOMAJOR%%
546  libwebkitgtk-6.0.so.%%SOVERSION%%
547 lib/webkitgtk-6.0/injected-bundle/libwebkitgtkinjectedbundle.so
548 libexec/webkitgtk-6.0/
549  MiniBrowser
550  WebKitNetworkProcess
551  WebKitWebProcess
552  jsc
553
554
555 [FILE:2462:manifests/plist.dev.api60]
556 include/webkitgtk-6.0/jsc/
557  JSCClass.h
558  JSCContext.h
559  JSCDefines.h
560  JSCException.h
561  JSCOptions.h
562  JSCValue.h
563  JSCVersion.h
564  JSCVirtualMachine.h
565  JSCWeakValue.h
566  jsc.h
567 include/webkitgtk-6.0/webkit/
568  WebKitApplicationInfo.h
569  WebKitAuthenticationRequest.h
570  WebKitAutocleanups.h
571  WebKitAutomationSession.h
572  WebKitBackForwardList.h
573  WebKitBackForwardListItem.h
574  WebKitClipboardPermissionRequest.h
575  WebKitColorChooserRequest.h
576  WebKitContextMenu.h
577  WebKitContextMenuActions.h
578  WebKitContextMenuItem.h
579  WebKitCookieManager.h
580  WebKitCredential.h
581  WebKitDefines.h
582  WebKitDeviceInfoPermissionRequest.h
583  WebKitDownload.h
584  WebKitEditingCommands.h
585  WebKitEditorState.h
586  WebKitEnumTypes.h
587  WebKitError.h
588  WebKitFaviconDatabase.h
589  WebKitFeature.h
590  WebKitFileChooserRequest.h
591  WebKitFindController.h
592  WebKitFormSubmissionRequest.h
593  WebKitFrame.h
594  WebKitGeolocationManager.h
595  WebKitGeolocationPermissionRequest.h
596  WebKitHitTestResult.h
597  WebKitInputMethodContext.h
598  WebKitInstallMissingMediaPluginsPermissionRequest.h
599  WebKitMediaKeySystemPermissionRequest.h
600  WebKitMemoryPressureSettings.h
601  WebKitNavigationAction.h
602  WebKitNavigationPolicyDecision.h
603  WebKitNetworkProxySettings.h
604  WebKitNetworkSession.h
605  WebKitNotification.h
606  WebKitNotificationPermissionRequest.h
607  WebKitOptionMenu.h
608  WebKitOptionMenuItem.h
609  WebKitPermissionRequest.h
610  WebKitPermissionStateQuery.h
611  WebKitPointerLockPermissionRequest.h
612  WebKitPolicyDecision.h
613  WebKitPrintOperation.h
614  WebKitResponsePolicyDecision.h
615  WebKitScriptDialog.h
616  WebKitScriptWorld.h
617  WebKitSecurityManager.h
618  WebKitSecurityOrigin.h
619  WebKitSettings.h
620  WebKitURIRequest.h
621  WebKitURIResponse.h
622  WebKitURISchemeRequest.h
623  WebKitURISchemeResponse.h
624  WebKitURIUtilities.h
625  WebKitUserContent.h
626  WebKitUserContentFilterStore.h
627  WebKitUserContentManager.h
628  WebKitUserMediaPermissionRequest.h
629  WebKitUserMessage.h
630  WebKitVersion.h
631  WebKitWebContext.h
632  WebKitWebEditor.h
633  WebKitWebFormManager.h
634  WebKitWebHitTestResult.h
635  WebKitWebInspector.h
636  WebKitWebPage.h
637  WebKitWebProcessEnumTypes.h
638  WebKitWebProcessExtension.h
639  WebKitWebResource.h
640  WebKitWebView.h
641  WebKitWebViewBase.h
642  WebKitWebViewSessionState.h
643  WebKitWebsiteData.h
644  WebKitWebsiteDataAccessPermissionRequest.h
645  WebKitWebsiteDataManager.h
646  WebKitWebsitePolicies.h
647  WebKitWindowProperties.h
648  webkit-web-process-extension.h
649  webkit.h
650 lib/
651  libjavascriptcoregtk-6.0.so
652  libwebkitgtk-6.0.so
653 lib/pkgconfig/
654  javascriptcoregtk-6.0.pc
655  webkitgtk-6.0.pc
656  webkitgtk-web-process-extension-6.0.pc
657
658
659 [FILE:431:patches/patch-CMakeLists.txt]
660 --- CMakeLists.txt.orig 2023-09-19 08:27:21 UTC
661 +++ CMakeLists.txt
662 @@ -27,6 +27,11 @@ if (ENABLE_API_TESTS)
663      enable_testing()
664  endif ()
665  
666 +if (SUPPRESS_ASSERT)
667 +   add_definitions(-DNDEBUG=1)
668 +   add_definitions(-D__OPTIMIZE__)
669 +endif()
670 +
671  # -----------------------------------------------------------------------------
672  # Add module directories
673  # -----------------------------------------------------------------------------
674
675
676 [FILE:503:patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h]
677 --- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig       2023-09-19 08:27:45 UTC
678 +++ Source/JavaScriptCore/assembler/ARM64Assembler.h
679 @@ -3600,6 +3600,8 @@ public:
680          sys_icache_invalidate(code, size);
681  #elif OS(FUCHSIA)
682          zx_cache_flush(code, size, ZX_CACHE_FLUSH_INSN);
683 +#elif OS(FREEBSD) || OS(NETBSD)
684 +        __clear_cache(code, reinterpret_cast<char*>(code) + size);
685  #elif OS(LINUX)
686          size_t page = pageSize();
687          uintptr_t current = reinterpret_cast<uintptr_t>(code);
688
689
690 [FILE:4034:patches/patch-Source_JavaScriptCore_runtime_MachineContext.h]
691 $NetBSD: patch-Source_JavaScriptCore_runtime_MachineContext.h,v 1.2 2021/05/13 08:20:58 leot Exp $
692
693 Add support for NetBSD.
694
695 --- Source/JavaScriptCore/runtime/MachineContext.h.orig 2023-09-19 08:27:45 UTC
696 +++ Source/JavaScriptCore/runtime/MachineContext.h
697 @@ -193,6 +193,22 @@ static inline void*& stackPointerImpl(mc
698  #error Unknown Architecture
699  #endif
700  
701 +#elif OS(NETBSD)
702 +
703 +#if CPU(X86)
704 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_UESP]);
705 +#elif CPU(X86_64)
706 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RSP]);
707 +#elif CPU(ARM)
708 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_SP]);
709 +#elif CPU(ARM64)
710 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_SP]);
711 +#elif CPU(MIPS)
712 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_SP]);
713 +#else
714 +#error Unknown Architecture
715 +#endif
716 +
717  #elif OS(FUCHSIA) || OS(LINUX)
718  
719  #if CPU(X86)
720 @@ -338,6 +354,22 @@ static inline void*& framePointerImpl(mc
721  #error Unknown Architecture
722  #endif
723  
724 +#elif OS(NETBSD)
725 +
726 +#if CPU(X86)
727 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EBP]);
728 +#elif CPU(X86_64)
729 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RBP]);
730 +#elif CPU(ARM)
731 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_FP]);
732 +#elif CPU(ARM64)
733 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_FP]);
734 +#elif CPU(MIPS)
735 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_S8]);
736 +#else
737 +#error Unknown Architecture
738 +#endif
739 +
740  #elif OS(FUCHSIA) || OS(LINUX)
741  
742  // The following sequence depends on glibc's sys/ucontext.h.
743 @@ -495,6 +527,22 @@ static inline void*& instructionPointerI
744  #else
745  #error Unknown Architecture
746  #endif
747
748 +#elif OS(NETBSD)
749 +
750 +#if CPU(X86)
751 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EIP]);
752 +#elif CPU(X86_64)
753 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RIP]);
754 +#elif CPU(ARM)
755 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_PC]);
756 +#elif CPU(ARM64)
757 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_PC]);
758 +#elif CPU(MIPS)
759 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EPC]);
760 +#else
761 +#error Unknown Architecture
762 +#endif
763  
764  #elif OS(FUCHSIA) || OS(LINUX)
765  
766 @@ -651,6 +699,22 @@ inline void*& argumentPointer<1>(mcontex
767  #else
768  #error Unknown Architecture
769  #endif
770
771 +#elif OS(NETBSD)
772 +
773 +#if CPU(X86)
774 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EDX]);
775 +#elif CPU(X86_64)
776 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RSI]);
777 +#elif CPU(ARM)
778 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R1]);
779 +#elif CPU(ARM64)
780 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_X1]);
781 +#elif CPU(MIPS)
782 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_A1]);
783 +#else
784 +#error Unknown Architecture
785 +#endif
786  
787  #elif OS(FUCHSIA) || OS(LINUX)
788  
789 @@ -774,6 +838,22 @@ inline void*& llintInstructionPointer(mc
790  #elif OS(NETBSD)
791  
792  #if CPU(X86)
793 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_ESI]);
794 +#elif CPU(X86_64)
795 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R8]);
796 +#elif CPU(ARM)
797 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R8]);
798 +#elif CPU(ARM64)
799 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_X4]);
800 +#elif CPU(MIPS)
801 +    return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_T4]);
802 +#else
803 +#error Unknown Architecture
804 +#endif
805
806 +#elif OS(NETBSD)
807 +
808 +#if CPU(X86)
809      return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_ESI]);
810  #elif CPU(X86_64)
811      return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R8]);
812
813
814 [FILE:597:patches/patch-Source_ThirdParty_ANGLE_src_common_aligned__memory.cpp]
815 --- Source/ThirdParty/ANGLE/src/common/aligned_memory.cpp.orig  2023-09-19 08:27:45 UTC
816 +++ Source/ThirdParty/ANGLE/src/common/aligned_memory.cpp
817 @@ -33,7 +33,7 @@ void *AlignedAlloc(size_t size, size_t a
818  // memalign() on Android returns pointers which can safely be used with
819  // free(), so we can use it instead.  Issue filed to document this:
820  // http://code.google.com/p/android/issues/detail?id=35391
821 -#elif defined(ANGLE_PLATFORM_ANDROID)
822 +#elif defined(ANGLE_PLATFORM_ANDROID) || defined(__sun__)
823      ptr = memalign(alignment, size);
824  #else
825      if (posix_memalign(&ptr, alignment, size))
826
827
828 [FILE:561:patches/patch-Source_WTF_wtf_Assertions.h]
829 $NetBSD: patch-Source_WTF_wtf_Assertions.h,v 1.1 2021/01/12 15:21:31 jperkin Exp $
830
831 Use regular static_assert on SunOS.
832
833 --- Source/WTF/wtf/Assertions.h.orig    2023-09-19 08:27:49 UTC
834 +++ Source/WTF/wtf/Assertions.h
835 @@ -477,7 +477,7 @@ constexpr bool assertionFailureDueToUnre
836  
837  /* COMPILE_ASSERT */
838  #ifndef COMPILE_ASSERT
839 -#if COMPILER_SUPPORTS(C_STATIC_ASSERT)
840 +#if COMPILER_SUPPORTS(C_STATIC_ASSERT) && !defined(__sun)
841  /* Unlike static_assert below, this also works in plain C code. */
842  #define COMPILE_ASSERT(exp, name) _Static_assert((exp), #name)
843  #else
844
845
846 [FILE:638:patches/patch-Source_WTF_wtf_FastMalloc.cpp]
847 --- Source/WTF/wtf/FastMalloc.cpp.orig  2023-09-19 08:27:49 UTC
848 +++ Source/WTF/wtf/FastMalloc.cpp
849 @@ -189,7 +189,11 @@ void* fastAlignedMalloc(size_t alignment
850  {
851      ASSERT_IS_WITHIN_LIMIT(size);
852      void* p = nullptr;
853 +#ifdef __sun__
854 +    p = memalign(alignment, size);
855 +#else
856      posix_memalign(&p, alignment, size);
857 +#endif
858      if (UNLIKELY(!p))
859          CRASH();
860      return p;
861 @@ -199,7 +203,11 @@ void* tryFastAlignedMalloc(size_t alignm
862  {
863      FAIL_IF_EXCEEDS_LIMIT(size);
864      void* p = nullptr;
865 +#ifdef __sun__
866 +    p = memalign(alignment, size);
867 +#else
868      posix_memalign(&p, alignment, size);
869 +#endif
870      return p;
871  }
872  
873
874
875 [FILE:502:patches/patch-Source_WTF_wtf_FileSystem.cpp]
876 $NetBSD: patch-Source_WTF_wtf_FileSystem.cpp,v 1.3 2020/09/11 14:47:35 leot Exp $
877
878 Support MAP_FILE if unavailable.
879
880 --- Source/WTF/wtf/FileSystem.cpp.orig  2023-09-19 08:27:49 UTC
881 +++ Source/WTF/wtf/FileSystem.cpp
882 @@ -356,6 +356,9 @@ bool MappedFileData::mapFileHandle(Platf
883  #endif
884      }
885  
886 +#ifndef MAP_FILE
887 +#define MAP_FILE       0
888 +#endif
889      void* data = mmap(0, size, pageProtection, MAP_FILE | (mapMode == MappedFileMode::Shared ? MAP_SHARED : MAP_PRIVATE), fd, 0);
890  
891      if (data == MAP_FAILED) {
892
893
894 [FILE:562:patches/patch-Source_WTF_wtf_MemoryPressureHandler.cpp]
895 --- Source/WTF/wtf/MemoryPressureHandler.cpp.orig       2023-09-19 08:27:49 UTC
896 +++ Source/WTF/wtf/MemoryPressureHandler.cpp
897 @@ -65,7 +65,7 @@ static MemoryPressureHandler* memoryPres
898  }
899  
900  MemoryPressureHandler::MemoryPressureHandler()
901 -#if OS(LINUX) || OS(FREEBSD)
902 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__) || defined(__MidnightBSD__)
903      : m_holdOffTimer(RunLoop::main(), this, &MemoryPressureHandler::holdOffTimerFired)
904  #elif OS(WINDOWS)
905      : m_windowsMeasurementTimer(RunLoop::main(), this, &MemoryPressureHandler::windowsMeasurementTimerFired)
906
907
908 [FILE:677:patches/patch-Source_WTF_wtf_MemoryPressureHandler.h]
909 --- Source/WTF/wtf/MemoryPressureHandler.h.orig 2023-09-19 08:27:49 UTC
910 +++ Source/WTF/wtf/MemoryPressureHandler.h
911 @@ -81,7 +81,7 @@ public:
912  
913      WTF_EXPORT_PRIVATE void setShouldUsePeriodicMemoryMonitor(bool);
914  
915 -#if OS(LINUX) || OS(FREEBSD)
916 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__) || defined(__MidnightBSD__)
917      WTF_EXPORT_PRIVATE void triggerMemoryPressureEvent(bool isCritical);
918  #endif
919  
920 @@ -293,7 +293,7 @@ private:
921      Win32Handle m_lowMemoryHandle;
922  #endif
923  
924 -#if OS(LINUX) || OS(FREEBSD)
925 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__) || defined(__MidnightBSD__)
926      RunLoop::Timer m_holdOffTimer;
927      void holdOffTimerFired();
928  #endif
929
930
931 [FILE:326:patches/patch-Source_WTF_wtf_NumberOfCores.cpp]
932 --- Source/WTF/wtf/NumberOfCores.cpp.orig       2023-09-19 08:27:49 UTC
933 +++ Source/WTF/wtf/NumberOfCores.cpp
934 @@ -32,6 +32,7 @@
935  #if OS(DARWIN)
936  #include <sys/sysctl.h>
937  #elif OS(LINUX) || OS(AIX) || OS(OPENBSD) || OS(NETBSD) || OS(FREEBSD)
938 +#include <stdio.h> // sscanf
939  #include <unistd.h>
940  #elif OS(WINDOWS)
941  #include <windows.h>
942
943
944 [FILE:402:patches/patch-Source_WTF_wtf_PlatformGTK.cmake]
945 --- Source/WTF/wtf/PlatformGTK.cmake.orig       2023-09-19 08:27:49 UTC
946 +++ Source/WTF/wtf/PlatformGTK.cmake
947 @@ -63,7 +63,7 @@ if (CMAKE_SYSTEM_NAME MATCHES "Linux")
948  
949          unix/MemoryPressureHandlerUnix.cpp
950      )
951 -elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
952 +elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly|MidnightBSD")
953      list(APPEND WTF_SOURCES
954          generic/MemoryFootprintGeneric.cpp
955  
956
957
958 [FILE:582:patches/patch-Source_WTF_wtf_StackBounds.cpp]
959 $NetBSD: patch-Source_WTF_wtf_StackBounds.cpp,v 1.2 2018/10/24 18:31:07 leot Exp $
960
961 SunOS does not have pthread_getattr_np.
962
963 --- Source/WTF/wtf/StackBounds.cpp.orig 2023-09-19 08:27:49 UTC
964 +++ Source/WTF/wtf/StackBounds.cpp
965 @@ -98,6 +98,7 @@ StackBounds StackBounds::newThreadStackB
966  #if HAVE(PTHREAD_NP_H) || OS(NETBSD)
967      // e.g. on FreeBSD 5.4, neundorf@kde.org
968      pthread_attr_get_np(thread, &sattr);
969 +#elif defined(__sun__)
970  #else
971      // FIXME: this function is non-portable; other POSIX systems may have different np alternatives
972      pthread_getattr_np(thread, &sattr);
973
974
975 [FILE:489:patches/patch-Source_WTF_wtf_posix_FileSystemPOSIX.cpp]
976 --- Source/WTF/wtf/posix/FileSystemPOSIX.cpp.orig       2023-09-19 08:27:49 UTC
977 +++ Source/WTF/wtf/posix/FileSystemPOSIX.cpp
978 @@ -194,6 +194,9 @@ std::optional<WallTime> fileCreationTime
979          return std::nullopt;
980  
981      return WallTime::fromRawSeconds(fileInfo.stx_btime.tv_sec);
982 +#elif defined __DragonFly__
983 +    /* st_birthtime is not in the stat structure on DragonFly */
984 +    return std::nullopt;
985  #elif OS(DARWIN) || OS(OPENBSD) || OS(NETBSD) || OS(FREEBSD)
986      struct stat fileInfo;
987  
988
989
990 [FILE:1502:patches/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp]
991 --- Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp.orig      2023-09-19 08:27:49 UTC
992 +++ Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
993 @@ -28,7 +28,11 @@
994  #include "config.h"
995  #include <wtf/MemoryPressureHandler.h>
996  
997 +#if OS(FREEBSD) || defined(__DragonFly__) || defined(__MidnightBSD__)
998 +#include <stdlib.h>
999 +#else
1000  #include <malloc.h>
1001 +#endif
1002  #include <unistd.h>
1003  #include <wtf/Logging.h>
1004  #include <wtf/MainThread.h>
1005 @@ -37,7 +41,7 @@
1006  
1007  #if OS(LINUX)
1008  #include <wtf/linux/CurrentProcessMemoryStatus.h>
1009 -#elif OS(FREEBSD)
1010 +#elif OS(FREEBSD) || defined(__DragonFly__) || defined(__MidnightBSD__)
1011  #include <sys/sysctl.h>
1012  #include <sys/types.h>
1013  #include <sys/user.h>
1014 @@ -112,7 +116,7 @@ static size_t processMemoryUsage()
1015      ProcessMemoryStatus memoryStatus;
1016      currentProcessMemoryStatus(memoryStatus);
1017      return (memoryStatus.resident - memoryStatus.shared);
1018 -#elif OS(FREEBSD)
1019 +#elif OS(FREEBSD) || defined(__DragonFly__) || defined(__MidnightBSD__)
1020      static size_t pageSize = sysconf(_SC_PAGE_SIZE);
1021      struct kinfo_proc info;
1022      size_t infolen = sizeof(info);
1023 @@ -126,7 +130,11 @@ static size_t processMemoryUsage()
1024      if (sysctl(mib, 4, &info, &infolen, nullptr, 0))
1025          return 0;
1026  
1027 +# ifdef __DragonFly__
1028 +    return static_cast<size_t>(info.kp_vm_rssize - info.kp_vm_tsize) * pageSize;
1029 +# else
1030      return static_cast<size_t>(info.ki_rssize - info.ki_tsize) * pageSize;
1031 +# endif
1032  #else
1033  #error "Missing a platform specific way of determining the memory usage"
1034  #endif
1035
1036
1037 [FILE:848:patches/patch-Source_WebCore_Modules_fetch_FetchBodyConsumer.cpp]
1038 --- Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp.orig     2023-09-19 08:27:49 UTC
1039 +++ Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp
1040 @@ -42,6 +42,32 @@
1041  #include <wtf/StringExtras.h>
1042  #include <wtf/URLParser.h>
1043  
1044 +#ifdef __sun
1045 +static void *memmem(
1046 +               const void *big, size_t big_len,
1047 +               const void *little, size_t little_len)
1048 +{
1049 +       const char *bp = (const char *)big;
1050 +       const char *lp = (const char *)little;
1051 +       size_t l;
1052 +
1053 +       if (big_len < little_len || little_len == 0 || big_len == 0)
1054 +               return NULL;
1055 +
1056 +       while (big_len > 0) {
1057 +               for (l = 0; l < little_len; l++) {
1058 +                       if (bp[l] != lp[l])
1059 +                               break;
1060 +               }
1061 +               if (l == little_len)
1062 +                       return (void *)bp;
1063 +               bp++;
1064 +       }
1065 +
1066 +       return NULL;
1067 +}
1068 +#endif
1069 +
1070  namespace WebCore {
1071  
1072  static inline Ref<Blob> blobFromData(ScriptExecutionContext* context, Vector<uint8_t>&& data, const String& contentType)
1073
1074
1075 [FILE:610:patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp]
1076 --- Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp.orig    2023-09-19 08:27:49 UTC
1077 +++ Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
1078 @@ -403,7 +403,7 @@ TOSTRING(neonDrawLighting) ":" NL
1079      "vmin.f32 " TMP2_D0 ", " TMP2_D0 ", " CONST_ONE_HI_D NL
1080      "vmul.f32 " TMP3_Q ", " COLOR_Q ", " TMP2_D0 "[1]" NL
1081      "vcvt.u32.f32 " TMP3_Q ", " TMP3_Q NL
1082 -    "vmov.u32 r2, r3, " TMP3_S0 ", " TMP3_S1 NL
1083 +    "vmov r2, r3, " TMP3_S0 ", " TMP3_S1 NL
1084      // The color values are stored in-place.
1085      "strb r2, [" PIXELS_R ", #-11]" NL
1086      "strb r3, [" PIXELS_R ", #-10]" NL
1087
1088
1089 [FILE:796:patches/patch-Source_WebCore_platform_graphics_gbm_DMABufReleaseFlag.h]
1090 --- Source/WebCore/platform/graphics/gbm/DMABufReleaseFlag.h.orig       2023-09-19 08:27:49 UTC
1091 +++ Source/WebCore/platform/graphics/gbm/DMABufReleaseFlag.h
1092 @@ -26,7 +26,9 @@
1093  
1094  #pragma once
1095  
1096 +#if !defined(__DragonFly__) && !defined(__NetBSD__) && !defined(__MidnightBSD__)
1097  #include <sys/eventfd.h>
1098 +#endif
1099  #include <wtf/Noncopyable.h>
1100  #include <wtf/SafeStrerror.h>
1101  #include <wtf/text/CString.h>
1102 @@ -42,7 +44,11 @@ struct DMABufReleaseFlag {
1103      enum InitializeTag { Initialize };
1104      DMABufReleaseFlag(InitializeTag)
1105      {
1106 +#if !defined(__DragonFly__) && !defined(__NetBSD__) && !defined(__MidnightBSD__)
1107          fd = { eventfd(0, EFD_CLOEXEC | EFD_NONBLOCK), UnixFileDescriptor::Adopt };
1108 +#else
1109 +       fd = { -1, UnixFileDescriptor::Adopt };
1110 +#endif
1111      }
1112  
1113      ~DMABufReleaseFlag() = default;
1114
1115
1116 [FILE:350:patches/patch-Source_WebCore_platform_network_DNS.h]
1117 --- Source/WebCore/platform/network/DNS.h.orig  2023-09-19 08:27:49 UTC
1118 +++ Source/WebCore/platform/network/DNS.h
1119 @@ -35,6 +35,9 @@
1120  #include <ws2tcpip.h>
1121  #else
1122  #include <netinet/in.h>
1123 +# if defined __DragonFly__ || defined __FreeBSD__ || defined __sun__ || defined __MidnightBSD__
1124 +#  include <sys/socket.h>
1125 +# endif
1126  #endif
1127  
1128  namespace WebCore {
1129
1130
1131 [FILE:336:patches/patch-Source_WebDriver_PlatformGTK.cmake]
1132 --- Source/WebDriver/PlatformGTK.cmake.orig     2023-09-19 08:27:50 UTC
1133 +++ Source/WebDriver/PlatformGTK.cmake
1134 @@ -5,6 +5,7 @@ add_definitions(-DLIBEXECDIR="${CMAKE_IN
1135  list(APPEND WebDriver_SYSTEM_INCLUDE_DIRECTORIES
1136      "${GLIB_INCLUDE_DIRS}"
1137      "${LIBSOUP_INCLUDE_DIRS}"
1138 +    "${ICU_INCLUDE_DIRS}"
1139  )
1140  
1141  list(APPEND WebDriver_SOURCES
1142
1143
1144 [FILE:507:patches/patch-Source_WebKit_CMakeLists.txt]
1145 $NetBSD: patch-Source_WebKit_CMakeLists.txt,v 1.1 2018/05/16 18:55:45 jperkin Exp $
1146
1147 SunOS requires libsocket.
1148
1149 --- Source/WebKit/CMakeLists.txt.orig   2023-09-19 08:27:50 UTC
1150 +++ Source/WebKit/CMakeLists.txt
1151 @@ -568,6 +568,10 @@ if (UNIX)
1152      endif ()
1153  endif ()
1154  
1155 +if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
1156 +    list(APPEND WebKit_LIBRARIES socket)
1157 +endif ()
1158 +
1159  macro(ADD_WEBKIT_PREFIX_HEADER _target)
1160      if (WebKit_USE_PREFIX_HEADER)
1161          get_target_property(OLD_COMPILE_FLAGS ${_target} COMPILE_FLAGS)
1162
1163
1164 [FILE:599:patches/patch-Source_WebKit_PlatformGTK.cmake]
1165 --- Source/WebKit/PlatformGTK.cmake.orig        2023-09-19 08:27:50 UTC
1166 +++ Source/WebKit/PlatformGTK.cmake
1167 @@ -40,7 +40,7 @@ add_definitions(-DDATADIR="${CMAKE_INSTA
1168  add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}")
1169  add_definitions(-DPKGLIBDIR="${LIB_INSTALL_DIR}/webkit${WEBKITGTK_API_INFIX}gtk-${WEBKITGTK_API_VERSION}")
1170  
1171 -if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
1172 +if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin|SunOS")
1173      WEBKIT_ADD_TARGET_PROPERTIES(WebKit LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/webkitglib-symbols.map")
1174  endif ()
1175  
1176
1177
1178 [FILE:1137:patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp]
1179 On NetBSD we see "Error sending IPC message: Message too long" due to
1180 the use of sendmsg with a large message body (EMSGSIZE).
1181
1182 WebKit already uses shared memory to communicate the message body when
1183 the message is too large, so force it to always use this method to avoid
1184 encountering EMSGSIZE.
1185
1186 --- Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp.orig     2023-09-19 08:27:50 UTC
1187 +++ Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp
1188 @@ -62,6 +62,10 @@
1189  #endif
1190  #endif // SOCK_SEQPACKET
1191  
1192 +#ifndef MSG_NOSIGNAL
1193 +#define MSG_NOSIGNAL   0
1194 +#endif
1195 +
1196  namespace IPC {
1197  
1198  static const size_t messageMaxSize = 4096;
1199 @@ -403,8 +407,12 @@ bool Connection::sendOutgoingMessage(Uni
1200          return false;
1201      }
1202  
1203 +#if 0
1204      size_t messageSizeWithBodyInline = sizeof(MessageInfo) + (outputMessage.attachments().size() * sizeof(AttachmentInfo)) + outputMessage.bodySize();
1205      if (messageSizeWithBodyInline > messageMaxSize && outputMessage.bodySize()) {
1206 +#else
1207 +    {
1208 +#endif
1209          RefPtr<WebKit::SharedMemory> oolMessageBody = WebKit::SharedMemory::allocate(outputMessage.bodySize());
1210          if (!oolMessageBody)
1211              return false;
1212
1213
1214 [FILE:584:patches/patch-Source_WebKit_Platform_unix_SharedMemoryUnix.cpp]
1215 --- Source/WebKit/Platform/unix/SharedMemoryUnix.cpp.orig       2023-09-19 08:27:50 UTC
1216 +++ Source/WebKit/Platform/unix/SharedMemoryUnix.cpp
1217 @@ -98,7 +98,11 @@ static UnixFileDescriptor createSharedMe
1218  #else
1219      CString tempName;
1220      for (int tries = 0; fileDescriptor == -1 && tries < 10; ++tries) {
1221 +# ifdef __DragonFly__
1222 +        auto name = makeString("/tmp/WK2SharedMemory.", cryptographicallyRandomNumber<unsigned>());
1223 +# else
1224          auto name = makeString("/WK2SharedMemory.", cryptographicallyRandomNumber<unsigned>());
1225 +# endif
1226          tempName = name.utf8();
1227  
1228          do {
1229
1230
1231 [FILE:681:patches/patch-Source_WebKit_UIProcess_Launcher_glib_ProcessLauncherGLib.cpp]
1232 --- Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp.orig  2023-09-19 08:27:50 UTC
1233 +++ Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp
1234 @@ -47,9 +47,6 @@
1235  #include "ProcessProviderLibWPE.h"
1236  #endif
1237  
1238 -#if !USE(SYSTEM_MALLOC) && OS(LINUX)
1239 -#include <bmalloc/valgrind.h>
1240 -#endif
1241  
1242  namespace WebKit {
1243  
1244 @@ -91,10 +88,6 @@ static int connectionOptions()
1245  
1246  static bool isSandboxEnabled(const ProcessLauncher::LaunchOptions& launchOptions)
1247  {
1248 -#if !USE(SYSTEM_MALLOC)
1249 -    if (RUNNING_ON_VALGRIND)
1250 -        return false;
1251 -#endif
1252  
1253      if (const char* sandboxEnv = g_getenv("WEBKIT_DISABLE_SANDBOX_THIS_IS_DANGEROUS")) {
1254          if (!strcmp(sandboxEnv, "1"))
1255
1256
1257 [FILE:1460:patches/patch-Source_bmalloc_bmalloc_AvailableMemory.cpp]
1258 --- Source/bmalloc/bmalloc/AvailableMemory.cpp.orig     2023-09-19 08:27:50 UTC
1259 +++ Source/bmalloc/bmalloc/AvailableMemory.cpp
1260 @@ -44,7 +44,7 @@
1261  #import <mach/mach_error.h>
1262  #import <math.h>
1263  #elif BOS(UNIX)
1264 -#if BOS(FREEBSD) || BOS(LINUX)
1265 +#if BOS(LINUX)
1266  #include <sys/sysinfo.h>
1267  #endif
1268  #if BOS(LINUX)
1269 @@ -161,7 +161,13 @@ static size_t computeAvailableMemory()
1270      // Round up the memory size to a multiple of 128MB because max_mem may not be exactly 512MB
1271      // (for example) and we have code that depends on those boundaries.
1272      return ((sizeAccordingToKernel + multiple - 1) / multiple) * multiple;
1273 -#elif BOS(FREEBSD) || BOS(LINUX)
1274 +#elif BOS(FREEBSD) || defined(__MidnightBSD__)
1275 +    long pages = sysconf(_SC_PHYS_PAGES);
1276 +    long pageSize = sysconf(_SC_PAGE_SIZE);
1277 +    if (pages == -1 || pageSize == -1)
1278 +        return availableMemoryGuess;
1279 +    return pages * pageSize;
1280 +#elif BOS(LINUX)
1281      struct sysinfo info;
1282      if (!sysinfo(&info))
1283          return info.totalram * info.mem_unit;
1284 @@ -212,7 +218,11 @@ MemoryStatus memoryStatus()
1285  
1286      size_t memoryFootprint = 0;
1287      if (!sysctl(mib, 4, &info, &infolen, nullptr, 0))
1288 +# ifdef __DragonFly__
1289 +        memoryFootprint = static_cast<size_t>(info.kp_vm_rssize) * vmPageSize();
1290 +# else
1291          memoryFootprint = static_cast<size_t>(info.ki_rssize) * vmPageSize();
1292 +# endif
1293  #endif
1294  
1295      double percentInUse = static_cast<double>(memoryFootprint) / static_cast<double>(availableMemory());
1296
1297
1298 [FILE:971:patches/patch-Source_cmake_OptionsCommon.cmake]
1299 --- Source/cmake/OptionsCommon.cmake.orig       2023-09-19 08:27:51 UTC
1300 +++ Source/cmake/OptionsCommon.cmake
1301 @@ -158,10 +158,10 @@ endif ()
1302  option(USE_THIN_ARCHIVES "Produce all static libraries as thin archives" ${USE_THIN_ARCHIVES_DEFAULT})
1303  
1304  if (USE_THIN_ARCHIVES)
1305 -    set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
1306 -    set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
1307 -    set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
1308 -    set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
1309 +    set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
1310 +    set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
1311 +    set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
1312 +    set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
1313  endif ()
1314  
1315  set(ENABLE_DEBUG_FISSION_DEFAULT OFF)
1316
1317
1318 [FILE:520:patches/patch-Source_cmake_WebKitCompilerFlags.cmake]
1319 --- Source/cmake/WebKitCompilerFlags.cmake.orig 2023-09-19 08:27:51 UTC
1320 +++ Source/cmake/WebKitCompilerFlags.cmake
1321 @@ -275,7 +275,7 @@ if (NOT MSVC)
1322      string(REGEX MATCHALL "-fsanitize=[^ ]*" ENABLED_COMPILER_SANITIZERS ${CMAKE_CXX_FLAGS})
1323  endif ()
1324  
1325 -if (UNIX AND NOT APPLE AND NOT ENABLED_COMPILER_SANITIZERS)
1326 +if (UNIX AND NOT APPLE AND NOT ENABLED_COMPILER_SANITIZERS AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
1327      set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_SHARED_LINKER_FLAGS}")
1328  endif ()
1329  
1330
1331
1332 [FILE:358:patches/patch-Tools_MiniBrowser_gtk_CMakeLists.txt]
1333 --- Tools/MiniBrowser/gtk/CMakeLists.txt.orig   2023-09-19 08:27:51 UTC
1334 +++ Tools/MiniBrowser/gtk/CMakeLists.txt
1335 @@ -39,6 +39,10 @@ set(MiniBrowser_PRIVATE_LIBRARIES
1336      WebKit::WebKit
1337  )
1338  
1339 +if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
1340 +   list(APPEND MiniBrowser_PRIVATE_LIBRARIES intl)
1341 +endif()
1342 +
1343  set(MiniBrowser_DEPENDENCIES
1344      NetworkProcess
1345      WebProcess
1346
1347
1348 [FILE:1232:files/linux44-patch-madvise]
1349 --- Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c.orig    2023-08-09 08:49:52 UTC
1350 +++ Source/bmalloc/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c
1351 @@ -115,11 +115,13 @@ pas_allocation_result pas_probabilistic_
1352       * ensure physical addresses are released
1353       * TODO: investigate using MADV_FREE_REUSABLE instead
1354       */
1355 +    /* Linux 4.5, Ravenports uses 4.4
1356      int madvise_res = madvise((void *) upper_guard_page, page_size, MADV_FREE);
1357      PAS_ASSERT(!madvise_res);
1358  
1359      madvise_res = madvise((void *) lower_guard_page, page_size, MADV_FREE);
1360      PAS_ASSERT(!madvise_res);
1361 +    */
1362  
1363      /*
1364       * the key is the location where the user's starting memory address is located.
1365 @@ -181,8 +183,10 @@ void pas_probabilistic_guard_malloc_deal
1366       * ensure physical addresses are released
1367       * TODO: investigate using MADV_FREE_REUSABLE instead
1368       */
1369 +    /* Requires linux 4.5
1370      int madvise_res = madvise((void *) value->start_of_data_pages, value->size_of_data_pages, MADV_FREE);
1371      PAS_ASSERT(!madvise_res);
1372 +    */
1373  
1374      bool removed = pas_ptr_hash_map_remove(&pas_pgm_hash_map, key, NULL, &pas_large_utility_free_heap_allocation_config);
1375      PAS_ASSERT(removed);
1376