1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[gtk3]= Opensource browser engine using the GTK+ 3 toolkit
8 HOMEPAGE= https://www.webkitgtk.org/
12 SITES[main]= https://www.webkitgtk.org/releases/
13 https://fossies.org/linux/www/
14 DISTFILE[1]= webkitgtk-2.32.0.tar.xz:main
20 OPTIONS_AVAILABLE= GTK3
21 OPTIONS_STANDARD= none
24 BUILD_DEPENDS= gperf:primary:standard
25 BUILDRUN_DEPENDS= enchant:single:standard
26 fontconfig:primary:standard
27 freetype:primary:standard
29 libsecret:primary:standard
30 libnotify:primary:standard
31 hyphen:single:standard
34 libsoup:primary:standard
35 libgcrypt:single:standard
36 gnutls:primary:standard
37 libtasn1:primary:standard
38 geoclue:single:standard
40 gstreamer1-plugins-base:primary:standard
41 openjpeg:single:standard
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
48 DISTNAME= webkitgtk-2.32.0
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:"^$$"
56 LICENSE_SOURCE= BSD3CLAUSE:{{WRKSRC}}/Source/WebCore/css/parser/MediaQueryBlockWatcher.h
57 TERMS:{{WRKSRC}}/Source/WebCore/style/StyleScope.cpp
60 CPE_PRODUCT= webkitgtk
62 FPC_EQUIVALENT= www/webkit2-gtk3
64 CONFIGURE_ENV= XDG_CACHE_HOME={{WRKDIR}}
66 INSTALL_TARGET= install
68 PLIST_SUB= JSSOVERSION=18.18.4
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 -DENABLE_GAMEPAD:BOOL=OFF
81 -DSUPPRESS_ASSERT:BOOL=ON
82 -DUSE_SYSTEMD:BOOL=OFF
83 -DUSE_GSTREAMER_GL:BOOL=OFF
84 VAR_OPSYS[sunos]= CMAKE_ARGS=-DUSE_LD_GOLD:BOOL=OFF
86 [GTK3].DESCRIPTION= Build GTK+3 variant
89 echo 'add_compile_definitions("U_DEFINE_FALSE_AND_TRUE=1")' \
90 >> ${WRKSRC}/Source/WTF/wtf/CMakeLists.txt
93 (cd ${STAGEDIR}${PREFIX}/bin && \
94 ${LN} -s ../libexec/webkit2gtk-4.0/jsc jsc-4 && \
95 ${LN} -s ../libexec/webkit2gtk-4.0/MiniBrowser MiniBrowser-4)
96 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.*
97 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so
98 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/*
99 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver
102 ${REINPLACE_CMD} -e '/USE_FILE_LOCK/ s|1|0|' \
103 ${WRKSRC}/Source/WTF/wtf/PlatformUse.h \
104 ${WRKSRC}/Source/WebCore/config.h
106 [FILE:576:descriptions/desc.primary]
107 WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable
108 for projects requiring any kind of web integration, from hybrid HTML/CSS
109 applications to full-fledged web browsers. It offers WebKit's full
110 functionality and is useful in a wide range of systems from desktop
111 computers to embedded systems like phones, tablets, and televisions.
113 WebKitGTK+ is made by a lively community of developers and designers,
114 who hope to bring the web platform to everyone. It's the official web
115 engine of the GNOME platform and is used in browsers such as Epiphany
120 9d7df4dae9ada2394257565acc2a68ace9308c4c61c3fcc00111dc1f11076bf0 23315936 webkitgtk-2.32.0.tar.xz
123 [FILE:6339:manifests/plist.primary]
125 MiniBrowser-%%WKAPIMAJOR%%
128 include/webkitgtk-%%WKAPI%%/JavaScriptCore/
137 include/webkitgtk-%%WKAPI%%/jsc/
149 include/webkitgtk-%%WKAPI%%/webkit2/
150 WebKitApplicationInfo.h
151 WebKitAuthenticationRequest.h
153 WebKitAutomationSession.h
154 WebKitBackForwardList.h
155 WebKitBackForwardListItem.h
156 WebKitColorChooserRequest.h
157 WebKitConsoleMessage.h
159 WebKitContextMenuActions.h
160 WebKitContextMenuItem.h
161 WebKitCookieManager.h
164 WebKitDeviceInfoPermissionRequest.h
166 WebKitEditingCommands.h
170 WebKitFaviconDatabase.h
171 WebKitFileChooserRequest.h
172 WebKitFindController.h
173 WebKitFormSubmissionRequest.h
174 WebKitForwardDeclarations.h
176 WebKitGeolocationManager.h
177 WebKitGeolocationPermissionRequest.h
178 WebKitHitTestResult.h
179 WebKitInputMethodContext.h
180 WebKitInstallMissingMediaPluginsPermissionRequest.h
181 WebKitJavascriptResult.h
182 WebKitMediaKeySystemPermissionRequest.h
184 WebKitNavigationAction.h
185 WebKitNavigationPolicyDecision.h
186 WebKitNetworkProxySettings.h
188 WebKitNotificationPermissionRequest.h
190 WebKitOptionMenuItem.h
191 WebKitPermissionRequest.h
193 WebKitPointerLockPermissionRequest.h
194 WebKitPolicyDecision.h
195 WebKitPrintCustomWidget.h
196 WebKitPrintOperation.h
197 WebKitResponsePolicyDecision.h
200 WebKitSecurityManager.h
201 WebKitSecurityOrigin.h
205 WebKitURISchemeRequest.h
208 WebKitUserContentFilterStore.h
209 WebKitUserContentManager.h
210 WebKitUserMediaPermissionRequest.h
216 WebKitWebExtensionAutocleanups.h
217 WebKitWebHitTestResult.h
220 WebKitWebProcessEnumTypes.h
224 WebKitWebViewSessionState.h
226 WebKitWebsiteDataAccessPermissionRequest.h
227 WebKitWebsiteDataManager.h
228 WebKitWebsitePolicies.h
229 WebKitWindowProperties.h
230 webkit-web-extension.h
232 include/webkitgtk-%%WKAPI%%/webkitdom/
235 WebKitDOMCDATASection.h
237 WebKitDOMCSSRuleList.h
238 WebKitDOMCSSStyleDeclaration.h
239 WebKitDOMCSSStyleSheet.h
241 WebKitDOMCharacterData.h
242 WebKitDOMClientRect.h
243 WebKitDOMClientRectList.h
246 WebKitDOMCustomUnstable.h
247 WebKitDOMDOMImplementation.h
248 WebKitDOMDOMSelection.h
249 WebKitDOMDOMTokenList.h
251 WebKitDOMDOMWindowUnstable.h
252 WebKitDOMDeprecated.h
254 WebKitDOMDocumentFragment.h
255 WebKitDOMDocumentFragmentUnstable.h
256 WebKitDOMDocumentType.h
257 WebKitDOMDocumentUnstable.h
259 WebKitDOMElementUnstable.h
261 WebKitDOMEventTarget.h
264 WebKitDOMHTMLAnchorElement.h
265 WebKitDOMHTMLAppletElement.h
266 WebKitDOMHTMLAreaElement.h
267 WebKitDOMHTMLBRElement.h
268 WebKitDOMHTMLBaseElement.h
269 WebKitDOMHTMLBodyElement.h
270 WebKitDOMHTMLButtonElement.h
271 WebKitDOMHTMLCanvasElement.h
272 WebKitDOMHTMLCollection.h
273 WebKitDOMHTMLDListElement.h
274 WebKitDOMHTMLDirectoryElement.h
275 WebKitDOMHTMLDivElement.h
276 WebKitDOMHTMLDocument.h
277 WebKitDOMHTMLElement.h
278 WebKitDOMHTMLElementUnstable.h
279 WebKitDOMHTMLEmbedElement.h
280 WebKitDOMHTMLFieldSetElement.h
281 WebKitDOMHTMLFontElement.h
282 WebKitDOMHTMLFormElement.h
283 WebKitDOMHTMLFrameElement.h
284 WebKitDOMHTMLFrameSetElement.h
285 WebKitDOMHTMLHRElement.h
286 WebKitDOMHTMLHeadElement.h
287 WebKitDOMHTMLHeadingElement.h
288 WebKitDOMHTMLHtmlElement.h
289 WebKitDOMHTMLIFrameElement.h
290 WebKitDOMHTMLImageElement.h
291 WebKitDOMHTMLInputElement.h
292 WebKitDOMHTMLLIElement.h
293 WebKitDOMHTMLLabelElement.h
294 WebKitDOMHTMLLegendElement.h
295 WebKitDOMHTMLLinkElement.h
296 WebKitDOMHTMLMapElement.h
297 WebKitDOMHTMLMarqueeElement.h
298 WebKitDOMHTMLMenuElement.h
299 WebKitDOMHTMLMetaElement.h
300 WebKitDOMHTMLModElement.h
301 WebKitDOMHTMLOListElement.h
302 WebKitDOMHTMLObjectElement.h
303 WebKitDOMHTMLOptGroupElement.h
304 WebKitDOMHTMLOptionElement.h
305 WebKitDOMHTMLOptionsCollection.h
306 WebKitDOMHTMLParagraphElement.h
307 WebKitDOMHTMLParamElement.h
308 WebKitDOMHTMLPreElement.h
309 WebKitDOMHTMLQuoteElement.h
310 WebKitDOMHTMLScriptElement.h
311 WebKitDOMHTMLSelectElement.h
312 WebKitDOMHTMLStyleElement.h
313 WebKitDOMHTMLTableCaptionElement.h
314 WebKitDOMHTMLTableCellElement.h
315 WebKitDOMHTMLTableColElement.h
316 WebKitDOMHTMLTableElement.h
317 WebKitDOMHTMLTableRowElement.h
318 WebKitDOMHTMLTableSectionElement.h
319 WebKitDOMHTMLTextAreaElement.h
320 WebKitDOMHTMLTitleElement.h
321 WebKitDOMHTMLUListElement.h
322 WebKitDOMKeyboardEvent.h
324 WebKitDOMMouseEvent.h
325 WebKitDOMNamedNodeMap.h
327 WebKitDOMNodeFilter.h
328 WebKitDOMNodeIterator.h
331 WebKitDOMProcessingInstruction.h
333 WebKitDOMRangeUnstable.h
334 WebKitDOMStyleSheet.h
335 WebKitDOMStyleSheetList.h
337 WebKitDOMTreeWalker.h
339 WebKitDOMWheelEvent.h
340 WebKitDOMXPathExpression.h
341 WebKitDOMXPathNSResolver.h
342 WebKitDOMXPathResult.h
344 webkitdomautocleanups.h
347 libjavascriptcoregtk-%%WKAPI%%.so
348 libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOMAJOR%%
349 libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOVERSION%%
350 libwebkit2gtk-%%WKAPI%%.so
351 libwebkit2gtk-%%WKAPI%%.so.%%SOMAJOR%%
352 libwebkit2gtk-%%WKAPI%%.so.%%SOVERSION%%
353 lib/girepository-1.0/
354 JavaScriptCore-%%WKAPI%%.typelib
355 WebKit2-%%WKAPI%%.typelib
356 WebKit2WebExtension-%%WKAPI%%.typelib
358 javascriptcoregtk-%%WKAPI%%.pc
359 webkit2gtk-%%WKAPI%%.pc
360 webkit2gtk-web-extension-%%WKAPI%%.pc
361 lib/webkit2gtk-%%WKAPI%%/injected-bundle/libwebkit2gtkinjectedbundle.so
362 libexec/webkit2gtk-%%WKAPI%%/
368 JavaScriptCore-%%WKAPI%%.gir
369 WebKit2-%%WKAPI%%.gir
370 WebKit2WebExtension-%%WKAPI%%.gir
373 [FILE:2566:manifests/plist.nls]
374 share/locale/ar/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
375 share/locale/as/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
376 share/locale/bg/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
377 share/locale/ca/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
378 share/locale/cs/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
379 share/locale/da/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
380 share/locale/de/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
381 share/locale/el/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
382 share/locale/en_CA/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
383 share/locale/en_GB/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
384 share/locale/eo/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
385 share/locale/es/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
386 share/locale/et/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
387 share/locale/eu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
388 share/locale/fi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
389 share/locale/fr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
390 share/locale/gl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
391 share/locale/gu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
392 share/locale/he/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
393 share/locale/hi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
394 share/locale/hu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
395 share/locale/id/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
396 share/locale/it/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
397 share/locale/ja/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
398 share/locale/kn/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
399 share/locale/ko/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
400 share/locale/lt/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
401 share/locale/lv/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
402 share/locale/ml/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
403 share/locale/mr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
404 share/locale/nb/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
405 share/locale/nl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
406 share/locale/or/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
407 share/locale/pa/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
408 share/locale/pl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
409 share/locale/pt/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
410 share/locale/pt_BR/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
411 share/locale/ro/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
412 share/locale/ru/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
413 share/locale/sl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
414 share/locale/sr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
415 share/locale/sr@latin/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
416 share/locale/sv/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
417 share/locale/ta/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
418 share/locale/te/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
419 share/locale/tr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
420 share/locale/uk/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
421 share/locale/vi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
422 share/locale/zh_CN/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
425 [FILE:431:patches/patch-CMakeLists.txt]
426 --- CMakeLists.txt.orig 2021-02-26 09:56:52 UTC
428 @@ -22,6 +22,11 @@ if (ENABLE_API_TESTS)
432 +if (SUPPRESS_ASSERT)
433 + add_definitions(-DNDEBUG=1)
434 + add_definitions(-D__OPTIMIZE__)
437 # -----------------------------------------------------------------------------
438 # Add module directories
439 # -----------------------------------------------------------------------------
442 [FILE:534:patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h]
443 --- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig 2021-02-26 09:57:05 UTC
444 +++ Source/JavaScriptCore/assembler/ARM64Assembler.h
445 @@ -2861,6 +2861,8 @@ public:
446 sys_cache_control(kCacheFunctionPrepareForExecution, code, size);
448 zx_cache_flush(code, size, ZX_CACHE_FLUSH_INSN);
449 +#elif OS(FREEBSD) || OS(NETBSD)
450 + __clear_cache(code, reinterpret_cast<char*>(code) + size);
452 size_t page = pageSize();
453 uintptr_t current = reinterpret_cast<uintptr_t>(code);
456 [FILE:730:patches/patch-Source_JavaScriptCore_runtime_IntlSegmenter.cpp]
457 --- Source/JavaScriptCore/runtime/IntlSegmenter.cpp.orig 2021-02-26 09:57:05 UTC
458 +++ Source/JavaScriptCore/runtime/IntlSegmenter.cpp
459 @@ -125,7 +125,7 @@ JSValue IntlSegmenter::segment(JSGlobalO
460 auto upconvertedCharacters = Box<Vector<UChar>>::create(string.charactersWithoutNullTermination());
462 UErrorCode status = U_ZERO_ERROR;
463 - auto segmenter = std::unique_ptr<UBreakIterator, UBreakIteratorDeleter>(ubrk_safeClone(m_segmenter.get(), nullptr, nullptr, &status));
464 + auto segmenter = std::unique_ptr<UBreakIterator, UBreakIteratorDeleter>(ubrk_clone(m_segmenter.get(), &status));
465 if (U_FAILURE(status)) {
466 throwTypeError(globalObject, scope, "failed to initialize Segments"_s);
470 [FILE:677:patches/patch-Source_JavaScriptCore_runtime_IntlSegments.cpp]
471 --- Source/JavaScriptCore/runtime/IntlSegments.cpp.orig 2021-02-26 09:57:05 UTC
472 +++ Source/JavaScriptCore/runtime/IntlSegments.cpp
473 @@ -100,7 +100,7 @@ JSObject* IntlSegments::createSegmentIte
474 auto scope = DECLARE_THROW_SCOPE(vm);
476 UErrorCode status = U_ZERO_ERROR;
477 - auto segmenter = std::unique_ptr<UBreakIterator, UBreakIteratorDeleter>(ubrk_safeClone(m_segmenter.get(), nullptr, nullptr, &status));
478 + auto segmenter = std::unique_ptr<UBreakIterator, UBreakIteratorDeleter>(ubrk_clone(m_segmenter.get(), &status));
479 if (U_FAILURE(status)) {
480 throwTypeError(globalObject, scope, "failed to initialize SegmentIterator"_s);
484 [FILE:597:patches/patch-Source_ThirdParty_ANGLE_src_common_aligned__memory.cpp]
485 --- Source/ThirdParty/ANGLE/src/common/aligned_memory.cpp.orig 2021-02-26 09:57:06 UTC
486 +++ Source/ThirdParty/ANGLE/src/common/aligned_memory.cpp
487 @@ -33,7 +33,7 @@ void *AlignedAlloc(size_t size, size_t a
488 // memalign() on Android returns pointers which can safely be used with
489 // free(), so we can use it instead. Issue filed to document this:
490 // http://code.google.com/p/android/issues/detail?id=35391
491 -#elif defined(ANGLE_PLATFORM_ANDROID)
492 +#elif defined(ANGLE_PLATFORM_ANDROID) || defined(__sun__)
493 ptr = memalign(alignment, size);
495 if (posix_memalign(&ptr, alignment, size))
498 [FILE:506:patches/patch-Source_ThirdParty_ANGLE_src_common_third__party_smhasher_src_PMurHash.cpp]
499 --- Source/ThirdParty/ANGLE/src/common/third_party/smhasher/src/PMurHash.cpp.orig 2021-02-26 09:57:06 UTC
500 +++ Source/ThirdParty/ANGLE/src/common/third_party/smhasher/src/PMurHash.cpp
501 @@ -48,6 +48,9 @@ on big endian machines, or a byte-by-byt
502 -----------------------------------------------------------------------------*/
504 #include "PMurHash.h"
506 +#define __BYTE_ORDER __LITTLE_ENDIAN
510 /* I used ugly type names in the header to avoid potential conflicts with
513 [FILE:561:patches/patch-Source_WTF_wtf_Assertions.h]
514 $NetBSD: patch-Source_WTF_wtf_Assertions.h,v 1.1 2021/01/12 15:21:31 jperkin Exp $
516 Use regular static_assert on SunOS.
518 --- Source/WTF/wtf/Assertions.h.orig 2021-02-26 09:57:08 UTC
519 +++ Source/WTF/wtf/Assertions.h
520 @@ -452,7 +452,7 @@ constexpr bool assertionFailureDueToUnre
523 #ifndef COMPILE_ASSERT
524 -#if COMPILER_SUPPORTS(C_STATIC_ASSERT)
525 +#if COMPILER_SUPPORTS(C_STATIC_ASSERT) && !defined(__sun)
526 /* Unlike static_assert below, this also works in plain C code. */
527 #define COMPILE_ASSERT(exp, name) _Static_assert((exp), #name)
531 [FILE:638:patches/patch-Source_WTF_wtf_FastMalloc.cpp]
532 --- Source/WTF/wtf/FastMalloc.cpp.orig 2021-03-25 15:14:06 UTC
533 +++ Source/WTF/wtf/FastMalloc.cpp
534 @@ -170,7 +170,11 @@ void* fastAlignedMalloc(size_t alignment
536 ASSERT_IS_WITHIN_LIMIT(size);
539 + p = memalign(alignment, size);
541 posix_memalign(&p, alignment, size);
546 @@ -180,7 +184,11 @@ void* tryFastAlignedMalloc(size_t alignm
548 FAIL_IF_EXCEEDS_LIMIT(size);
551 + p = memalign(alignment, size);
553 posix_memalign(&p, alignment, size);
560 [FILE:502:patches/patch-Source_WTF_wtf_FileSystem.cpp]
561 $NetBSD: patch-Source_WTF_wtf_FileSystem.cpp,v 1.3 2020/09/11 14:47:35 leot Exp $
563 Support MAP_FILE if unavailable.
565 --- Source/WTF/wtf/FileSystem.cpp.orig 2021-02-26 09:57:08 UTC
566 +++ Source/WTF/wtf/FileSystem.cpp
567 @@ -339,6 +339,9 @@ bool MappedFileData::mapFileHandle(Platf
574 void* data = mmap(0, size, pageProtection, MAP_FILE | (mapMode == MappedFileMode::Shared ? MAP_SHARED : MAP_PRIVATE), fd, 0);
576 if (data == MAP_FAILED) {
579 [FILE:534:patches/patch-Source_WTF_wtf_MemoryPressureHandler.cpp]
580 --- Source/WTF/wtf/MemoryPressureHandler.cpp.orig 2021-02-26 09:57:08 UTC
581 +++ Source/WTF/wtf/MemoryPressureHandler.cpp
582 @@ -57,7 +57,7 @@ MemoryPressureHandler& MemoryPressureHan
585 MemoryPressureHandler::MemoryPressureHandler()
586 -#if OS(LINUX) || OS(FREEBSD)
587 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
588 : m_holdOffTimer(RunLoop::main(), this, &MemoryPressureHandler::holdOffTimerFired)
590 : m_windowsMeasurementTimer(RunLoop::main(), this, &MemoryPressureHandler::windowsMeasurementTimerFired)
593 [FILE:644:patches/patch-Source_WTF_wtf_MemoryPressureHandler.h]
594 --- Source/WTF/wtf/MemoryPressureHandler.h.orig 2021-02-26 09:57:08 UTC
595 +++ Source/WTF/wtf/MemoryPressureHandler.h
596 @@ -66,7 +66,7 @@ public:
598 WTF_EXPORT_PRIVATE void setShouldUsePeriodicMemoryMonitor(bool);
600 -#if OS(LINUX) || OS(FREEBSD)
601 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
602 WTF_EXPORT_PRIVATE void triggerMemoryPressureEvent(bool isCritical);
605 @@ -200,7 +200,7 @@ private:
606 Win32Handle m_lowMemoryHandle;
609 -#if OS(LINUX) || OS(FREEBSD)
610 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
611 RunLoop::Timer<MemoryPressureHandler> m_holdOffTimer;
612 void holdOffTimerFired();
616 [FILE:326:patches/patch-Source_WTF_wtf_NumberOfCores.cpp]
617 --- Source/WTF/wtf/NumberOfCores.cpp.orig 2021-02-26 09:57:08 UTC
618 +++ Source/WTF/wtf/NumberOfCores.cpp
621 #include <sys/sysctl.h>
622 #elif OS(LINUX) || OS(AIX) || OS(OPENBSD) || OS(NETBSD) || OS(FREEBSD)
623 +#include <stdio.h> // sscanf
629 [FILE:390:patches/patch-Source_WTF_wtf_PlatformGTK.cmake]
630 --- Source/WTF/wtf/PlatformGTK.cmake.orig 2021-02-26 09:57:08 UTC
631 +++ Source/WTF/wtf/PlatformGTK.cmake
632 @@ -54,7 +54,7 @@ if (CMAKE_SYSTEM_NAME MATCHES "Linux")
634 unix/MemoryPressureHandlerUnix.cpp
636 -elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
637 +elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly")
638 list(APPEND WTF_SOURCES
639 generic/MemoryFootprintGeneric.cpp
643 [FILE:582:patches/patch-Source_WTF_wtf_StackBounds.cpp]
644 $NetBSD: patch-Source_WTF_wtf_StackBounds.cpp,v 1.2 2018/10/24 18:31:07 leot Exp $
646 SunOS does not have pthread_getattr_np.
648 --- Source/WTF/wtf/StackBounds.cpp.orig 2021-02-26 09:57:08 UTC
649 +++ Source/WTF/wtf/StackBounds.cpp
650 @@ -90,6 +90,7 @@ StackBounds StackBounds::newThreadStackB
651 #if HAVE(PTHREAD_NP_H) || OS(NETBSD)
652 // e.g. on FreeBSD 5.4, neundorf@kde.org
653 pthread_attr_get_np(thread, &sattr);
654 +#elif defined(__sun__)
656 // FIXME: this function is non-portable; other POSIX systems may have different np alternatives
657 pthread_getattr_np(thread, &sattr);
660 [FILE:1426:patches/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp]
661 --- Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp.orig 2021-02-26 09:57:08 UTC
662 +++ Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
665 #include <wtf/MemoryPressureHandler.h>
667 +#if OS(FREEBSD) || defined(__DragonFly__)
673 #include <wtf/MainThread.h>
674 #include <wtf/MemoryFootprint.h>
678 #include <wtf/linux/CurrentProcessMemoryStatus.h>
680 +#elif OS(FREEBSD) || defined(__DragonFly__)
681 #include <sys/sysctl.h>
682 #include <sys/types.h>
683 #include <sys/user.h>
684 @@ -116,7 +120,7 @@ static size_t processMemoryUsage()
685 ProcessMemoryStatus memoryStatus;
686 currentProcessMemoryStatus(memoryStatus);
687 return (memoryStatus.resident - memoryStatus.shared);
689 +#elif OS(FREEBSD) || defined(__DragonFly__)
690 static size_t pageSize = sysconf(_SC_PAGE_SIZE);
691 struct kinfo_proc info;
692 size_t infolen = sizeof(info);
693 @@ -130,7 +134,11 @@ static size_t processMemoryUsage()
694 if (sysctl(mib, 4, &info, &infolen, nullptr, 0))
697 +# ifdef __DragonFly__
698 + return static_cast<size_t>(info.kp_vm_rssize - info.kp_vm_tsize) * pageSize;
700 return static_cast<size_t>(info.ki_rssize - info.ki_tsize) * pageSize;
703 #error "Missing a platform specific way of determining the memory usage"
707 [FILE:610:patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp]
708 --- Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp.orig 2021-02-26 09:57:13 UTC
709 +++ Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
710 @@ -403,7 +403,7 @@ TOSTRING(neonDrawLighting) ":" NL
711 "vmin.f32 " TMP2_D0 ", " TMP2_D0 ", " CONST_ONE_HI_D NL
712 "vmul.f32 " TMP3_Q ", " COLOR_Q ", " TMP2_D0 "[1]" NL
713 "vcvt.u32.f32 " TMP3_Q ", " TMP3_Q NL
714 - "vmov.u32 r2, r3, " TMP3_S0 ", " TMP3_S1 NL
715 + "vmov r2, r3, " TMP3_S0 ", " TMP3_S1 NL
716 // The color values are stored in-place.
717 "strb r2, [" PIXELS_R ", #-11]" NL
718 "strb r3, [" PIXELS_R ", #-10]" NL
721 [FILE:328:patches/patch-Source_WebCore_platform_network_DNS.h]
722 --- Source/WebCore/platform/network/DNS.h.orig 2021-02-26 09:57:13 UTC
723 +++ Source/WebCore/platform/network/DNS.h
725 #include <ws2tcpip.h>
727 #include <netinet/in.h>
728 +# if defined __DragonFly__ || defined __FreeBSD__ || defined __sun__
729 +# include <sys/socket.h>
733 #include <wtf/Forward.h>
736 [FILE:336:patches/patch-Source_WebDriver_PlatformGTK.cmake]
737 --- Source/WebDriver/PlatformGTK.cmake.orig 2021-02-26 09:57:15 UTC
738 +++ Source/WebDriver/PlatformGTK.cmake
739 @@ -5,6 +5,7 @@ add_definitions(-DLIBEXECDIR="${CMAKE_IN
740 list(APPEND WebDriver_SYSTEM_INCLUDE_DIRECTORIES
741 "${GLIB_INCLUDE_DIRS}"
742 "${LIBSOUP_INCLUDE_DIRS}"
743 + "${ICU_INCLUDE_DIRS}"
746 list(APPEND WebDriver_SOURCES
749 [FILE:507:patches/patch-Source_WebKit_CMakeLists.txt]
750 $NetBSD: patch-Source_WebKit_CMakeLists.txt,v 1.1 2018/05/16 18:55:45 jperkin Exp $
752 SunOS requires libsocket.
754 --- Source/WebKit/CMakeLists.txt.orig 2021-03-25 13:27:32 UTC
755 +++ Source/WebKit/CMakeLists.txt
756 @@ -362,6 +362,10 @@ if (UNIX)
760 +if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
761 + list(APPEND WebKit_LIBRARIES socket)
764 macro(ADD_WEBKIT_PREFIX_HEADER _target)
765 if (WebKit_USE_PREFIX_HEADER)
766 get_target_property(OLD_COMPILE_FLAGS ${_target} COMPILE_FLAGS)
769 [FILE:551:patches/patch-Source_WebKit_PlatformGTK.cmake]
770 --- Source/WebKit/PlatformGTK.cmake.orig 2021-03-12 10:23:40 UTC
771 +++ Source/WebKit/PlatformGTK.cmake
772 @@ -23,7 +23,7 @@ add_definitions(-DLOCALEDIR="${CMAKE_INS
773 add_definitions(-DDATADIR="${CMAKE_INSTALL_FULL_DATADIR}")
774 add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}")
776 -if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
777 +if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin|SunOS")
778 WEBKIT_ADD_TARGET_PROPERTIES(WebKit LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/webkitglib-symbols.map")
783 [FILE:1241:patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp]
784 $NetBSD: patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp,v 1.3 2021/01/12 15:21:31 jperkin Exp $
786 On NetBSD we see "Error sending IPC message: Message too long" due to
787 the use of sendmsg with a large message body (EMSGSIZE).
789 WebKit already uses shared memory to communicate the message body when
790 the message is too large, so force it to always use this method to avoid
791 encountering EMSGSIZE.
793 --- Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp.orig 2021-02-26 09:57:15 UTC
794 +++ Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp
797 #endif // SOCK_SEQPACKET
799 +#ifndef MSG_NOSIGNAL
800 +#define MSG_NOSIGNAL 0
805 static const size_t messageMaxSize = 4096;
806 @@ -434,8 +438,12 @@ bool Connection::sendOutgoingMessage(std
811 size_t messageSizeWithBodyInline = sizeof(MessageInfo) + (outputMessage.attachments().size() * sizeof(AttachmentInfo)) + outputMessage.bodySize();
812 if (messageSizeWithBodyInline > messageMaxSize && outputMessage.bodySize()) {
816 RefPtr<WebKit::SharedMemory> oolMessageBody = WebKit::SharedMemory::allocate(encoder->bufferSize());
821 [FILE:792:patches/patch-Source_WebKit_Platform_unix_SharedMemoryUnix.cpp]
822 --- Source/WebKit/Platform/unix/SharedMemoryUnix.cpp.orig 2021-02-26 09:57:15 UTC
823 +++ Source/WebKit/Platform/unix/SharedMemoryUnix.cpp
824 @@ -147,7 +147,13 @@ static int createSharedMemory()
827 for (int tries = 0; fileDescriptor == -1 && tries < 10; ++tries) {
828 - String name = String("/WK2SharedMemory.") + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
830 +#ifdef __DragonFly__
831 + String("/tmp/WK2SharedMemory.")
833 + String("/WK2SharedMemory.")
835 + + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
836 tempName = name.utf8();
841 [FILE:1374:patches/patch-Source_bmalloc_bmalloc_AvailableMemory.cpp]
842 Add DragonFly support
843 FreeBSD 11 doesn't have sysinfo.h like DragonFly doesn't
845 --- Source/bmalloc/bmalloc/AvailableMemory.cpp.orig 2021-02-26 09:57:17 UTC
846 +++ Source/bmalloc/bmalloc/AvailableMemory.cpp
851 +#elif defined(__DragonFly__)
852 +#include "VMAllocate.h"
853 +#include <sys/sysctl.h>
854 +#include <sys/kinfo.h>
855 +#include <sys/types.h>
856 +#include <sys/user.h>
858 #include "VMAllocate.h"
859 #include <sys/sysctl.h>
860 -#include <sys/sysinfo.h>
861 #include <sys/types.h>
862 #include <sys/user.h>
864 @@ -169,7 +174,7 @@ static size_t computeAvailableMemory()
865 return ((sizeAccordingToKernel + multiple - 1) / multiple) * multiple;
867 return LinuxMemory::singleton().availableMemory;
872 return info.totalram * info.mem_unit;
873 @@ -223,7 +228,11 @@ MemoryStatus memoryStatus()
875 size_t memoryFootprint = 0;
876 if (!sysctl(mib, 4, &info, &infolen, nullptr, 0))
877 +# ifdef __DragonFly__
878 + memoryFootprint = static_cast<size_t>(info.kp_vm_rssize) * vmPageSize();
880 memoryFootprint = static_cast<size_t>(info.ki_rssize) * vmPageSize();
883 double percentInUse = static_cast<double>(memoryFootprint) / static_cast<double>(availableMemory());
887 [FILE:1075:patches/patch-Source_cmake_OptionsCommon.cmake]
888 Using the T option of GNU ar lead to malformed .a archive on NetBSD. Disable it.
890 --- Source/cmake/OptionsCommon.cmake.orig 2021-02-26 09:57:17 UTC
891 +++ Source/cmake/OptionsCommon.cmake
892 @@ -14,10 +14,10 @@ if (USE_THIN_ARCHIVES)
893 elseif ("${AR_ERROR}")
894 message(WARNING "Error from `ar`: ${AR_ERROR}")
895 elseif ("${AR_VERSION}" MATCHES "^GNU ar")
896 - set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
897 - set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
898 - set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
899 - set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
900 + set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
901 + set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
902 + set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
903 + set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
909 [FILE:520:patches/patch-Source_cmake_WebKitCompilerFlags.cmake]
910 --- Source/cmake/WebKitCompilerFlags.cmake.orig 2021-03-25 13:27:32 UTC
911 +++ Source/cmake/WebKitCompilerFlags.cmake
912 @@ -235,7 +235,7 @@ if (NOT MSVC)
913 string(REGEX MATCHALL "-fsanitize=[^ ]*" ENABLED_COMPILER_SANITIZERS ${CMAKE_CXX_FLAGS})
916 -if (UNIX AND NOT APPLE AND NOT ENABLED_COMPILER_SANITIZERS)
917 +if (UNIX AND NOT APPLE AND NOT ENABLED_COMPILER_SANITIZERS AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
918 set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_SHARED_LINKER_FLAGS}")
923 [FILE:358:patches/patch-Tools_MiniBrowser_gtk_CMakeLists.txt]
924 --- Tools/MiniBrowser/gtk/CMakeLists.txt.orig 2021-02-26 09:57:17 UTC
925 +++ Tools/MiniBrowser/gtk/CMakeLists.txt
926 @@ -42,6 +42,10 @@ set(MiniBrowser_PRIVATE_LIBRARIES
930 +if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
931 + list(APPEND MiniBrowser_PRIVATE_LIBRARIES intl)
934 set(MiniBrowser_DEPENDENCIES