1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 VARIANTS= api40 api41 api50
8 SDESC[api50]= Opensource browser engine using GTK4 (API 5.0)
9 SDESC[api40]= Opensource browser engine using GTK+3 (API 4.0)
10 SDESC[api41]= Opensource browser engine using GTK+3 (API 4.1)
11 HOMEPAGE= https://www.webkitgtk.org/
15 SITES[main]= https://www.webkitgtk.org/releases/
16 https://fossies.org/linux/www/
17 DISTFILE[1]= webkitgtk-2.36.3.tar.xz:main
19 SPKGS[api50]= complete
22 SPKGS[api40]= complete
25 SPKGS[api41]= complete
29 OPTIONS_AVAILABLE= API40 API41 API50
30 OPTIONS_STANDARD= none
31 VOPTS[api50]= API40=OFF API41=OFF API50=ON
32 VOPTS[api40]= API40=ON API41=OFF API50=OFF
33 VOPTS[api41]= API40=OFF API41=ON API50=OFF
35 BUILD_DEPENDS= gperf:primary:standard
36 BUILDRUN_DEPENDS= enchant:single:standard
37 fontconfig:primary:standard
38 freetype:primary:standard
40 libsecret:primary:standard
41 libnotify:primary:standard
42 hyphen:single:standard
45 libgcrypt:single:standard
46 gnutls:primary:standard
47 libtasn1:primary:standard
48 geoclue:single:standard
50 gstreamer1-plugins-base:primary:standard
51 openjpeg:single:standard
53 USES= png mesa cmake pkgconfig sqlite bison perl:build
54 python:build ruby:build gettext-tools cpe
55 GNOME_COMPONENTS= gdkpixbuf introspection libxslt
56 XORG_COMPONENTS= x11 xcomposite xdamage xext xrender xt ice
58 DISTNAME= webkitgtk-2.36.3
60 LICENSE= GPLv2+:primary BSD3CLAUSE:primary
61 LICENSE_TERMS= primary:{{WRKDIR}}/TERMS
62 LICENSE_FILE= GPLv2+:stock
63 BSD3CLAUSE:{{WRKDIR}}/LICENSE_BSD
64 LICENSE_AWK= BSD3CLAUSE:"^$$"
66 LICENSE_SOURCE= BSD3CLAUSE:{{WRKSRC}}/Source/WebCore/css/parser/MediaQueryBlockWatcher.h
67 TERMS:{{WRKSRC}}/Source/WebCore/style/StyleScope.cpp
70 CPE_PRODUCT= webkitgtk
72 FPC_EQUIVALENT= www/webkit2-gtk3
74 CONFIGURE_ENV= XDG_CACHE_HOME={{WRKDIR}}
76 MAKE_JOBS_NUMBER_LIMIT= 8
78 INSTALL_TARGET= install
79 PLIST_SUB= INTRO="@comment "
81 CXXFLAGS= -DFIXED_EXECUTABLE_MEMORY_POOL_SIZE_IN_MB=32
82 CMAKE_ARGS= -DPORT=GTK
83 -DENABLE_GEOLOCATION:BOOL=ON
84 -DENABLE_GLES2:BOOL=ON
85 -DENABLE_MINIBROWSER:BOOL=ON
86 -DENABLE_WAYLAND_TARGET:BOOL=OFF
87 -DENABLE_BUBBLEWRAP_SANDBOX:BOOL=OFF
88 -DENABLE_GAMEPAD:BOOL=OFF
89 -DENABLE_INTROSPECTION:BOOL=OFF
90 -DENABLE_JOURNALD_LOG:BOOL=OFF
91 -DSUPPRESS_ASSERT:BOOL=ON
92 -DUSE_SYSTEMD:BOOL=OFF
93 -DUSE_GSTREAMER_GL:BOOL=OFF
94 VAR_OPSYS[sunos]= CMAKE_ARGS=-DUSE_LD_GOLD:BOOL=OFF
96 [API50].DESCRIPTION= Build WebKit2 API 5.0 variant
97 [API50].BUILDRUN_DEPENDS_ON= libsoup:primary:standard
98 [API50].CMAKE_ARGS_ON= -DUSE_GTK4=ON
99 [API50].GNOME_COMPONENTS_ON= gtk4
100 [API50].PLIST_SUB_ON= JSSOVERSION=0.0.0
107 [API40].DESCRIPTION= Build WebKit2 API 4.0 variant
108 [API40].BUILDRUN_DEPENDS_ON= libsoup-2.4:primary:standard
109 [API40].CMAKE_ARGS_ON= -DUSE_SOUP2=ON
110 [API40].GNOME_COMPONENTS_ON= gtk3
111 [API40].PLIST_SUB_ON= JSSOVERSION=18.20.7
118 [API41].DESCRIPTION= Build WebKit2 API 4.1 variant
119 [API41].BUILDRUN_DEPENDS_ON= libsoup:primary:standard
120 [API41].GNOME_COMPONENTS_ON= gtk3
121 [API41].PLIST_SUB_ON= JSSOVERSION=0.1.7
129 echo 'add_compile_definitions("U_DEFINE_FALSE_AND_TRUE=1")' \
130 >> ${WRKSRC}/Source/WTF/wtf/CMakeLists.txt
132 post-install-API40-ON:
133 (cd ${STAGEDIR}${PREFIX}/bin && \
134 ${LN} -s ../libexec/webkit2gtk-4.0/jsc jsc-4 && \
135 ${LN} -s ../libexec/webkit2gtk-4.0/MiniBrowser MiniBrowser-4)
136 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so
137 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/*
139 post-install-API50-ON:
140 (cd ${STAGEDIR}${PREFIX}/bin && \
141 ${LN} -s ../libexec/webkit2gtk-5.0/jsc jsc-5 && \
142 ${LN} -s ../libexec/webkit2gtk-5.0/MiniBrowser MiniBrowser-5)
143 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-5.0/injected-bundle/*.so
144 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-5.0/*
147 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*.*
148 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/WebKitWebDriver
150 post-install-API41-ON:
151 (cd ${STAGEDIR}${PREFIX}/bin && \
152 ${LN} -s ../libexec/webkit2gtk-4.1/jsc jsc-4 && \
153 ${LN} -s ../libexec/webkit2gtk-4.1/MiniBrowser MiniBrowser-4)
154 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.1/injected-bundle/*.so
155 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.1/*
158 ${REINPLACE_CMD} -e '/USE_FILE_LOCK/ s|1|0|' \
159 ${WRKSRC}/Source/WTF/wtf/PlatformUse.h \
160 ${WRKSRC}/Source/WebCore/config.h
162 [FILE:574:descriptions/desc.primary]
163 WebKitGTK+ is a full-featured port of the WebKit rendering engine, suitable
164 for projects requiring any kind of web integration, from hybrid HTML/CSS
165 applications to full-fledged web browsers. It offers WebKit's full
166 functionality and is useful in a wide range of systems from desktop
167 computers to embedded systems like phones, tablets, and televisions.
169 WebKitGTK+ is made by a lively community of developers and designers,
170 who hope to bring the web platform to everyone. It's the official web
171 engine of the GNOME platform and is used in browsers such as Epiphany
176 732fcf8c4ec644b8ed28b46ebbd7c1ebab9d9e0afea9bdf5e5d12786afc478d1 26600236 webkitgtk-2.36.3.tar.xz
179 [FILE:6416:manifests/plist.primary]
180 %%INTRO%%lib/girepository-1.0/
181 JavaScriptCore-%%WKAPI%%.typelib
182 WebKit2-%%WKAPI%%.typelib
183 WebKit2WebExtension-%%WKAPI%%.typelib
184 %%INTRO%%share/gir-1.0/
185 JavaScriptCore-%%WKAPI%%.gir
186 WebKit2-%%WKAPI%%.gir
187 WebKit2WebExtension-%%WKAPI%%.gir
189 MiniBrowser-%%WKAPIMAJOR%%
192 include/webkitgtk-%%WKAPI%%/JavaScriptCore/
201 include/webkitgtk-%%WKAPI%%/jsc/
213 include/webkitgtk-%%WKAPI%%/webkit2/
214 WebKitApplicationInfo.h
215 WebKitAuthenticationRequest.h
217 WebKitAutomationSession.h
218 WebKitBackForwardList.h
219 WebKitBackForwardListItem.h
220 WebKitColorChooserRequest.h
221 WebKitConsoleMessage.h
223 WebKitContextMenuActions.h
224 WebKitContextMenuItem.h
225 WebKitCookieManager.h
228 WebKitDeviceInfoPermissionRequest.h
230 WebKitEditingCommands.h
234 WebKitFaviconDatabase.h
235 WebKitFileChooserRequest.h
236 WebKitFindController.h
237 WebKitFormSubmissionRequest.h
238 WebKitForwardDeclarations.h
240 WebKitGeolocationManager.h
241 WebKitGeolocationPermissionRequest.h
242 WebKitHitTestResult.h
243 WebKitInputMethodContext.h
244 WebKitInstallMissingMediaPluginsPermissionRequest.h
245 WebKitJavascriptResult.h
246 WebKitMediaKeySystemPermissionRequest.h
247 WebKitMemoryPressureSettings.h
249 WebKitNavigationAction.h
250 WebKitNavigationPolicyDecision.h
251 WebKitNetworkProxySettings.h
253 WebKitNotificationPermissionRequest.h
255 WebKitOptionMenuItem.h
256 WebKitPermissionRequest.h
258 WebKitPointerLockPermissionRequest.h
259 WebKitPolicyDecision.h
260 WebKitPrintCustomWidget.h
261 WebKitPrintOperation.h
262 WebKitResponsePolicyDecision.h
265 WebKitSecurityManager.h
266 WebKitSecurityOrigin.h
270 WebKitURISchemeRequest.h
271 WebKitURISchemeResponse.h
274 WebKitUserContentFilterStore.h
275 WebKitUserContentManager.h
276 WebKitUserMediaPermissionRequest.h
282 WebKitWebExtensionAutocleanups.h
283 WebKitWebHitTestResult.h
286 WebKitWebProcessEnumTypes.h
290 WebKitWebViewSessionState.h
292 WebKitWebsiteDataAccessPermissionRequest.h
293 WebKitWebsiteDataManager.h
294 WebKitWebsitePolicies.h
295 WebKitWindowProperties.h
296 webkit-web-extension.h
298 include/webkitgtk-%%WKAPI%%/webkitdom/
301 WebKitDOMCDATASection.h
303 WebKitDOMCSSRuleList.h
304 WebKitDOMCSSStyleDeclaration.h
305 WebKitDOMCSSStyleSheet.h
307 WebKitDOMCharacterData.h
308 WebKitDOMClientRect.h
309 WebKitDOMClientRectList.h
312 WebKitDOMCustomUnstable.h
313 WebKitDOMDOMImplementation.h
314 WebKitDOMDOMSelection.h
315 WebKitDOMDOMTokenList.h
317 WebKitDOMDOMWindowUnstable.h
318 WebKitDOMDeprecated.h
320 WebKitDOMDocumentFragment.h
321 WebKitDOMDocumentFragmentUnstable.h
322 WebKitDOMDocumentType.h
323 WebKitDOMDocumentUnstable.h
325 WebKitDOMElementUnstable.h
327 WebKitDOMEventTarget.h
330 WebKitDOMHTMLAnchorElement.h
331 WebKitDOMHTMLAppletElement.h
332 WebKitDOMHTMLAreaElement.h
333 WebKitDOMHTMLBRElement.h
334 WebKitDOMHTMLBaseElement.h
335 WebKitDOMHTMLBodyElement.h
336 WebKitDOMHTMLButtonElement.h
337 WebKitDOMHTMLCanvasElement.h
338 WebKitDOMHTMLCollection.h
339 WebKitDOMHTMLDListElement.h
340 WebKitDOMHTMLDirectoryElement.h
341 WebKitDOMHTMLDivElement.h
342 WebKitDOMHTMLDocument.h
343 WebKitDOMHTMLElement.h
344 WebKitDOMHTMLElementUnstable.h
345 WebKitDOMHTMLEmbedElement.h
346 WebKitDOMHTMLFieldSetElement.h
347 WebKitDOMHTMLFontElement.h
348 WebKitDOMHTMLFormElement.h
349 WebKitDOMHTMLFrameElement.h
350 WebKitDOMHTMLFrameSetElement.h
351 WebKitDOMHTMLHRElement.h
352 WebKitDOMHTMLHeadElement.h
353 WebKitDOMHTMLHeadingElement.h
354 WebKitDOMHTMLHtmlElement.h
355 WebKitDOMHTMLIFrameElement.h
356 WebKitDOMHTMLImageElement.h
357 WebKitDOMHTMLInputElement.h
358 WebKitDOMHTMLLIElement.h
359 WebKitDOMHTMLLabelElement.h
360 WebKitDOMHTMLLegendElement.h
361 WebKitDOMHTMLLinkElement.h
362 WebKitDOMHTMLMapElement.h
363 WebKitDOMHTMLMarqueeElement.h
364 WebKitDOMHTMLMenuElement.h
365 WebKitDOMHTMLMetaElement.h
366 WebKitDOMHTMLModElement.h
367 WebKitDOMHTMLOListElement.h
368 WebKitDOMHTMLObjectElement.h
369 WebKitDOMHTMLOptGroupElement.h
370 WebKitDOMHTMLOptionElement.h
371 WebKitDOMHTMLOptionsCollection.h
372 WebKitDOMHTMLParagraphElement.h
373 WebKitDOMHTMLParamElement.h
374 WebKitDOMHTMLPreElement.h
375 WebKitDOMHTMLQuoteElement.h
376 WebKitDOMHTMLScriptElement.h
377 WebKitDOMHTMLSelectElement.h
378 WebKitDOMHTMLStyleElement.h
379 WebKitDOMHTMLTableCaptionElement.h
380 WebKitDOMHTMLTableCellElement.h
381 WebKitDOMHTMLTableColElement.h
382 WebKitDOMHTMLTableElement.h
383 WebKitDOMHTMLTableRowElement.h
384 WebKitDOMHTMLTableSectionElement.h
385 WebKitDOMHTMLTextAreaElement.h
386 WebKitDOMHTMLTitleElement.h
387 WebKitDOMHTMLUListElement.h
388 WebKitDOMKeyboardEvent.h
390 WebKitDOMMouseEvent.h
391 WebKitDOMNamedNodeMap.h
393 WebKitDOMNodeFilter.h
394 WebKitDOMNodeIterator.h
397 WebKitDOMProcessingInstruction.h
399 WebKitDOMRangeUnstable.h
400 WebKitDOMStyleSheet.h
401 WebKitDOMStyleSheetList.h
403 WebKitDOMTreeWalker.h
405 WebKitDOMWheelEvent.h
406 WebKitDOMXPathExpression.h
407 WebKitDOMXPathNSResolver.h
408 WebKitDOMXPathResult.h
410 webkitdomautocleanups.h
413 libjavascriptcoregtk-%%WKAPI%%.so
414 libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOMAJOR%%
415 libjavascriptcoregtk-%%WKAPI%%.so.%%JSSOVERSION%%
416 libwebkit2gtk-%%WKAPI%%.so
417 libwebkit2gtk-%%WKAPI%%.so.%%SOMAJOR%%
418 libwebkit2gtk-%%WKAPI%%.so.%%SOVERSION%%
420 javascriptcoregtk-%%WKAPI%%.pc
421 webkit2gtk-%%WKAPI%%.pc
422 webkit2gtk-web-extension-%%WKAPI%%.pc
423 lib/webkit2gtk-%%WKAPI%%/injected-bundle/libwebkit2gtkinjectedbundle.so
424 libexec/webkit2gtk-%%WKAPI%%/
431 [FILE:2618:manifests/plist.nls]
432 share/locale/ar/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
433 share/locale/as/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
434 share/locale/bg/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
435 share/locale/ca/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
436 share/locale/cs/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
437 share/locale/da/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
438 share/locale/de/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
439 share/locale/el/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
440 share/locale/en_CA/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
441 share/locale/en_GB/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
442 share/locale/eo/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
443 share/locale/es/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
444 share/locale/et/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
445 share/locale/eu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
446 share/locale/fi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
447 share/locale/fr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
448 share/locale/gl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
449 share/locale/gu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
450 share/locale/he/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
451 share/locale/hi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
452 share/locale/hr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
453 share/locale/hu/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
454 share/locale/id/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
455 share/locale/it/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
456 share/locale/ja/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
457 share/locale/kn/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
458 share/locale/ko/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
459 share/locale/lt/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
460 share/locale/lv/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
461 share/locale/ml/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
462 share/locale/mr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
463 share/locale/nb/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
464 share/locale/nl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
465 share/locale/or/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
466 share/locale/pa/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
467 share/locale/pl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
468 share/locale/pt/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
469 share/locale/pt_BR/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
470 share/locale/ro/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
471 share/locale/ru/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
472 share/locale/sl/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
473 share/locale/sr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
474 share/locale/sr@latin/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
475 share/locale/sv/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
476 share/locale/ta/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
477 share/locale/te/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
478 share/locale/tr/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
479 share/locale/uk/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
480 share/locale/vi/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
481 share/locale/zh_CN/LC_MESSAGES/WebKit2GTK-%%WKAPI%%.mo
484 [FILE:431:patches/patch-CMakeLists.txt]
485 --- CMakeLists.txt.orig 2022-02-23 11:41:01 UTC
487 @@ -26,6 +26,11 @@ if (ENABLE_API_TESTS)
491 +if (SUPPRESS_ASSERT)
492 + add_definitions(-DNDEBUG=1)
493 + add_definitions(-D__OPTIMIZE__)
496 # -----------------------------------------------------------------------------
497 # Add module directories
498 # -----------------------------------------------------------------------------
501 [FILE:534:patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h]
502 --- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig 2022-02-23 11:41:41 UTC
503 +++ Source/JavaScriptCore/assembler/ARM64Assembler.h
504 @@ -2947,6 +2947,8 @@ public:
505 sys_cache_control(kCacheFunctionPrepareForExecution, code, size);
507 zx_cache_flush(code, size, ZX_CACHE_FLUSH_INSN);
508 +#elif OS(FREEBSD) || OS(NETBSD)
509 + __clear_cache(code, reinterpret_cast<char*>(code) + size);
511 size_t page = pageSize();
512 uintptr_t current = reinterpret_cast<uintptr_t>(code);
515 [FILE:3892:patches/patch-Source_JavaScriptCore_runtime_MachineContext.h]
516 $NetBSD: patch-Source_JavaScriptCore_runtime_MachineContext.h,v 1.2 2021/05/13 08:20:58 leot Exp $
518 Add support for NetBSD.
520 --- Source/JavaScriptCore/runtime/MachineContext.h.orig 2022-02-23 11:41:41 UTC
521 +++ Source/JavaScriptCore/runtime/MachineContext.h
522 @@ -176,6 +176,22 @@ static inline void*& stackPointerImpl(mc
523 #error Unknown Architecture
529 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_UESP]);
531 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RSP]);
533 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_SP]);
535 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_SP]);
537 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_SP]);
539 +#error Unknown Architecture
542 #elif OS(FUCHSIA) || OS(LINUX)
545 @@ -305,6 +321,22 @@ static inline void*& framePointerImpl(mc
546 #error Unknown Architecture
552 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EBP]);
554 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RBP]);
556 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_FP]);
558 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_FP]);
560 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_S8]);
562 +#error Unknown Architecture
565 #elif OS(FUCHSIA) || OS(LINUX)
567 // The following sequence depends on glibc's sys/ucontext.h.
568 @@ -446,6 +478,22 @@ static inline void*& instructionPointerI
570 #error Unknown Architecture
576 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EIP]);
578 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RIP]);
580 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_PC]);
582 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_PC]);
584 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EPC]);
586 +#error Unknown Architecture
589 #elif OS(FUCHSIA) || OS(LINUX)
591 @@ -586,6 +634,22 @@ inline void*& argumentPointer<1>(mcontex
593 #error Unknown Architecture
599 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_EDX]);
601 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_RSI]);
603 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R1]);
605 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_X1]);
607 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_A1]);
609 +#error Unknown Architecture
612 #elif OS(FUCHSIA) || OS(LINUX)
614 @@ -705,6 +769,22 @@ inline void*& llintInstructionPointer(mc
616 #error Unknown Architecture
622 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_ESI]);
624 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R8]);
626 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_R8]);
628 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_X4]);
630 + return reinterpret_cast<void*&>((uintptr_t&) machineContext.__gregs[_REG_T4]);
632 +#error Unknown Architecture
635 #elif OS(FUCHSIA) || OS(LINUX)
639 [FILE:597:patches/patch-Source_ThirdParty_ANGLE_src_common_aligned__memory.cpp]
640 --- Source/ThirdParty/ANGLE/src/common/aligned_memory.cpp.orig 2022-02-23 11:41:42 UTC
641 +++ Source/ThirdParty/ANGLE/src/common/aligned_memory.cpp
642 @@ -33,7 +33,7 @@ void *AlignedAlloc(size_t size, size_t a
643 // memalign() on Android returns pointers which can safely be used with
644 // free(), so we can use it instead. Issue filed to document this:
645 // http://code.google.com/p/android/issues/detail?id=35391
646 -#elif defined(ANGLE_PLATFORM_ANDROID)
647 +#elif defined(ANGLE_PLATFORM_ANDROID) || defined(__sun__)
648 ptr = memalign(alignment, size);
650 if (posix_memalign(&ptr, alignment, size))
653 [FILE:506:patches/patch-Source_ThirdParty_ANGLE_src_common_third__party_smhasher_src_PMurHash.cpp]
654 --- Source/ThirdParty/ANGLE/src/common/third_party/smhasher/src/PMurHash.cpp.orig 2022-02-23 11:41:42 UTC
655 +++ Source/ThirdParty/ANGLE/src/common/third_party/smhasher/src/PMurHash.cpp
656 @@ -48,6 +48,9 @@ on big endian machines, or a byte-by-byt
657 -----------------------------------------------------------------------------*/
659 #include "PMurHash.h"
661 +#define __BYTE_ORDER __LITTLE_ENDIAN
665 /* I used ugly type names in the header to avoid potential conflicts with
668 [FILE:561:patches/patch-Source_WTF_wtf_Assertions.h]
669 $NetBSD: patch-Source_WTF_wtf_Assertions.h,v 1.1 2021/01/12 15:21:31 jperkin Exp $
671 Use regular static_assert on SunOS.
673 --- Source/WTF/wtf/Assertions.h.orig 2022-02-23 11:41:47 UTC
674 +++ Source/WTF/wtf/Assertions.h
675 @@ -462,7 +462,7 @@ constexpr bool assertionFailureDueToUnre
678 #ifndef COMPILE_ASSERT
679 -#if COMPILER_SUPPORTS(C_STATIC_ASSERT)
680 +#if COMPILER_SUPPORTS(C_STATIC_ASSERT) && !defined(__sun)
681 /* Unlike static_assert below, this also works in plain C code. */
682 #define COMPILE_ASSERT(exp, name) _Static_assert((exp), #name)
686 [FILE:638:patches/patch-Source_WTF_wtf_FastMalloc.cpp]
687 --- Source/WTF/wtf/FastMalloc.cpp.orig 2022-02-23 11:41:47 UTC
688 +++ Source/WTF/wtf/FastMalloc.cpp
689 @@ -197,7 +197,11 @@ void* fastAlignedMalloc(size_t alignment
691 ASSERT_IS_WITHIN_LIMIT(size);
694 + p = memalign(alignment, size);
696 posix_memalign(&p, alignment, size);
701 @@ -207,7 +211,11 @@ void* tryFastAlignedMalloc(size_t alignm
703 FAIL_IF_EXCEEDS_LIMIT(size);
706 + p = memalign(alignment, size);
708 posix_memalign(&p, alignment, size);
715 [FILE:502:patches/patch-Source_WTF_wtf_FileSystem.cpp]
716 $NetBSD: patch-Source_WTF_wtf_FileSystem.cpp,v 1.3 2020/09/11 14:47:35 leot Exp $
718 Support MAP_FILE if unavailable.
720 --- Source/WTF/wtf/FileSystem.cpp.orig 2022-02-23 11:41:47 UTC
721 +++ Source/WTF/wtf/FileSystem.cpp
722 @@ -371,6 +371,9 @@ bool MappedFileData::mapFileHandle(Platf
729 void* data = mmap(0, size, pageProtection, MAP_FILE | (mapMode == MappedFileMode::Shared ? MAP_SHARED : MAP_PRIVATE), fd, 0);
731 if (data == MAP_FAILED) {
734 [FILE:534:patches/patch-Source_WTF_wtf_MemoryPressureHandler.cpp]
735 --- Source/WTF/wtf/MemoryPressureHandler.cpp.orig 2022-02-23 11:41:47 UTC
736 +++ Source/WTF/wtf/MemoryPressureHandler.cpp
737 @@ -56,7 +56,7 @@ MemoryPressureHandler& MemoryPressureHan
740 MemoryPressureHandler::MemoryPressureHandler()
741 -#if OS(LINUX) || OS(FREEBSD)
742 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
743 : m_holdOffTimer(RunLoop::main(), this, &MemoryPressureHandler::holdOffTimerFired)
745 : m_windowsMeasurementTimer(RunLoop::main(), this, &MemoryPressureHandler::windowsMeasurementTimerFired)
748 [FILE:644:patches/patch-Source_WTF_wtf_MemoryPressureHandler.h]
749 --- Source/WTF/wtf/MemoryPressureHandler.h.orig 2022-02-23 11:41:47 UTC
750 +++ Source/WTF/wtf/MemoryPressureHandler.h
751 @@ -81,7 +81,7 @@ public:
753 WTF_EXPORT_PRIVATE void setShouldUsePeriodicMemoryMonitor(bool);
755 -#if OS(LINUX) || OS(FREEBSD)
756 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
757 WTF_EXPORT_PRIVATE void triggerMemoryPressureEvent(bool isCritical);
760 @@ -277,7 +277,7 @@ private:
761 Win32Handle m_lowMemoryHandle;
764 -#if OS(LINUX) || OS(FREEBSD)
765 +#if OS(LINUX) || OS(FREEBSD) || defined(__DragonFly__)
766 RunLoop::Timer<MemoryPressureHandler> m_holdOffTimer;
767 void holdOffTimerFired();
771 [FILE:326:patches/patch-Source_WTF_wtf_NumberOfCores.cpp]
772 --- Source/WTF/wtf/NumberOfCores.cpp.orig 2022-02-23 11:41:47 UTC
773 +++ Source/WTF/wtf/NumberOfCores.cpp
776 #include <sys/sysctl.h>
777 #elif OS(LINUX) || OS(AIX) || OS(OPENBSD) || OS(NETBSD) || OS(FREEBSD)
778 +#include <stdio.h> // sscanf
784 [FILE:390:patches/patch-Source_WTF_wtf_PlatformGTK.cmake]
785 --- Source/WTF/wtf/PlatformGTK.cmake.orig 2022-02-23 11:41:47 UTC
786 +++ Source/WTF/wtf/PlatformGTK.cmake
787 @@ -58,7 +58,7 @@ if (CMAKE_SYSTEM_NAME MATCHES "Linux")
789 unix/MemoryPressureHandlerUnix.cpp
791 -elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
792 +elseif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly")
793 list(APPEND WTF_SOURCES
794 generic/MemoryFootprintGeneric.cpp
798 [FILE:570:patches/patch-Source_WTF_wtf_PlatformHave.h]
799 Add support for NetBSD.
801 --- Source/WTF/wtf/PlatformHave.h.orig 2022-02-23 11:41:47 UTC
802 +++ Source/WTF/wtf/PlatformHave.h
804 #define HAVE_HOSTED_CORE_ANIMATION 1
807 -#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || OS(OPENBSD) || OS(LINUX)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS) || CPU(RISCV64)))
808 +#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || OS(OPENBSD) || OS(NETBSD) || OS(LINUX)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS) || CPU(RISCV64)))
809 #define HAVE_MACHINE_CONTEXT 1
814 [FILE:582:patches/patch-Source_WTF_wtf_StackBounds.cpp]
815 $NetBSD: patch-Source_WTF_wtf_StackBounds.cpp,v 1.2 2018/10/24 18:31:07 leot Exp $
817 SunOS does not have pthread_getattr_np.
819 --- Source/WTF/wtf/StackBounds.cpp.orig 2022-02-23 11:41:47 UTC
820 +++ Source/WTF/wtf/StackBounds.cpp
821 @@ -98,6 +98,7 @@ StackBounds StackBounds::newThreadStackB
822 #if HAVE(PTHREAD_NP_H) || OS(NETBSD)
823 // e.g. on FreeBSD 5.4, neundorf@kde.org
824 pthread_attr_get_np(thread, &sattr);
825 +#elif defined(__sun__)
827 // FIXME: this function is non-portable; other POSIX systems may have different np alternatives
828 pthread_getattr_np(thread, &sattr);
831 [FILE:1418:patches/patch-Source_WTF_wtf_unix_MemoryPressureHandlerUnix.cpp]
832 --- Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp.orig 2022-02-23 11:41:47 UTC
833 +++ Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
836 #include <wtf/MemoryPressureHandler.h>
838 +#if OS(FREEBSD) || defined(__DragonFly__)
844 #include <wtf/Logging.h>
845 #include <wtf/MainThread.h>
849 #include <wtf/linux/CurrentProcessMemoryStatus.h>
851 +#elif OS(FREEBSD) || defined(__DragonFly__)
852 #include <sys/sysctl.h>
853 #include <sys/types.h>
854 #include <sys/user.h>
855 @@ -112,7 +116,7 @@ static size_t processMemoryUsage()
856 ProcessMemoryStatus memoryStatus;
857 currentProcessMemoryStatus(memoryStatus);
858 return (memoryStatus.resident - memoryStatus.shared);
860 +#elif OS(FREEBSD) || defined(__DragonFly__)
861 static size_t pageSize = sysconf(_SC_PAGE_SIZE);
862 struct kinfo_proc info;
863 size_t infolen = sizeof(info);
864 @@ -126,7 +130,11 @@ static size_t processMemoryUsage()
865 if (sysctl(mib, 4, &info, &infolen, nullptr, 0))
868 +# ifdef __DragonFly__
869 + return static_cast<size_t>(info.kp_vm_rssize - info.kp_vm_tsize) * pageSize;
871 return static_cast<size_t>(info.ki_rssize - info.ki_tsize) * pageSize;
874 #error "Missing a platform specific way of determining the memory usage"
878 [FILE:848:patches/patch-Source_WebCore_Modules_fetch_FetchBodyConsumer.cpp]
879 --- Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp.orig 2022-02-23 11:41:48 UTC
880 +++ Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp
882 #include <wtf/StringExtras.h>
883 #include <wtf/URLParser.h>
886 +static void *memmem(
887 + const void *big, size_t big_len,
888 + const void *little, size_t little_len)
890 + const char *bp = (const char *)big;
891 + const char *lp = (const char *)little;
894 + if (big_len < little_len || little_len == 0 || big_len == 0)
897 + while (big_len > 0) {
898 + for (l = 0; l < little_len; l++) {
899 + if (bp[l] != lp[l])
902 + if (l == little_len)
913 static inline Ref<Blob> blobFromData(ScriptExecutionContext* context, Vector<uint8_t>&& data, const String& contentType)
916 [FILE:610:patches/patch-Source_WebCore_platform_graphics_cpu_arm_filters_FELightingNEON.cpp]
917 --- Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp.orig 2022-02-23 11:41:50 UTC
918 +++ Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNEON.cpp
919 @@ -403,7 +403,7 @@ TOSTRING(neonDrawLighting) ":" NL
920 "vmin.f32 " TMP2_D0 ", " TMP2_D0 ", " CONST_ONE_HI_D NL
921 "vmul.f32 " TMP3_Q ", " COLOR_Q ", " TMP2_D0 "[1]" NL
922 "vcvt.u32.f32 " TMP3_Q ", " TMP3_Q NL
923 - "vmov.u32 r2, r3, " TMP3_S0 ", " TMP3_S1 NL
924 + "vmov r2, r3, " TMP3_S0 ", " TMP3_S1 NL
925 // The color values are stored in-place.
926 "strb r2, [" PIXELS_R ", #-11]" NL
927 "strb r3, [" PIXELS_R ", #-10]" NL
930 [FILE:323:patches/patch-Source_WebCore_platform_network_DNS.h]
931 --- Source/WebCore/platform/network/DNS.h.orig 2022-02-23 11:41:50 UTC
932 +++ Source/WebCore/platform/network/DNS.h
934 #include <ws2tcpip.h>
936 #include <netinet/in.h>
937 +# if defined __DragonFly__ || defined __FreeBSD__ || defined __sun__
938 +# include <sys/socket.h>
945 [FILE:336:patches/patch-Source_WebDriver_PlatformGTK.cmake]
946 --- Source/WebDriver/PlatformGTK.cmake.orig 2022-02-23 11:41:51 UTC
947 +++ Source/WebDriver/PlatformGTK.cmake
948 @@ -5,6 +5,7 @@ add_definitions(-DLIBEXECDIR="${CMAKE_IN
949 list(APPEND WebDriver_SYSTEM_INCLUDE_DIRECTORIES
950 "${GLIB_INCLUDE_DIRS}"
951 "${LIBSOUP_INCLUDE_DIRS}"
952 + "${ICU_INCLUDE_DIRS}"
955 list(APPEND WebDriver_SOURCES
958 [FILE:507:patches/patch-Source_WebKit_CMakeLists.txt]
959 $NetBSD: patch-Source_WebKit_CMakeLists.txt,v 1.1 2018/05/16 18:55:45 jperkin Exp $
961 SunOS requires libsocket.
963 --- Source/WebKit/CMakeLists.txt.orig 2022-02-23 11:41:51 UTC
964 +++ Source/WebKit/CMakeLists.txt
965 @@ -407,6 +407,10 @@ if (UNIX)
969 +if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
970 + list(APPEND WebKit_LIBRARIES socket)
973 macro(ADD_WEBKIT_PREFIX_HEADER _target)
974 if (WebKit_USE_PREFIX_HEADER)
975 get_target_property(OLD_COMPILE_FLAGS ${_target} COMPILE_FLAGS)
978 [FILE:551:patches/patch-Source_WebKit_PlatformGTK.cmake]
979 --- Source/WebKit/PlatformGTK.cmake.orig 2022-02-24 12:51:39 UTC
980 +++ Source/WebKit/PlatformGTK.cmake
981 @@ -34,7 +34,7 @@ add_definitions(-DLOCALEDIR="${CMAKE_INS
982 add_definitions(-DDATADIR="${CMAKE_INSTALL_FULL_DATADIR}")
983 add_definitions(-DLIBDIR="${LIB_INSTALL_DIR}")
985 -if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin")
986 +if (NOT DEVELOPER_MODE AND NOT CMAKE_SYSTEM_NAME MATCHES "Darwin|SunOS")
987 WEBKIT_ADD_TARGET_PROPERTIES(WebKit LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/webkitglib-symbols.map")
992 [FILE:1241:patches/patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp]
993 $NetBSD: patch-Source_WebKit_Platform_IPC_unix_ConnectionUnix.cpp,v 1.3 2021/01/12 15:21:31 jperkin Exp $
995 On NetBSD we see "Error sending IPC message: Message too long" due to
996 the use of sendmsg with a large message body (EMSGSIZE).
998 WebKit already uses shared memory to communicate the message body when
999 the message is too large, so force it to always use this method to avoid
1000 encountering EMSGSIZE.
1002 --- Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp.orig 2022-02-23 11:41:51 UTC
1003 +++ Source/WebKit/Platform/IPC/unix/ConnectionUnix.cpp
1006 #endif // SOCK_SEQPACKET
1008 +#ifndef MSG_NOSIGNAL
1009 +#define MSG_NOSIGNAL 0
1014 static const size_t messageMaxSize = 4096;
1015 @@ -442,8 +446,12 @@ bool Connection::sendOutgoingMessage(Uni
1020 size_t messageSizeWithBodyInline = sizeof(MessageInfo) + (outputMessage.attachments().size() * sizeof(AttachmentInfo)) + outputMessage.bodySize();
1021 if (messageSizeWithBodyInline > messageMaxSize && outputMessage.bodySize()) {
1025 RefPtr<WebKit::SharedMemory> oolMessageBody = WebKit::SharedMemory::allocate(encoder->bufferSize());
1026 if (!oolMessageBody)
1030 [FILE:797:patches/patch-Source_WebKit_Platform_unix_SharedMemoryUnix.cpp]
1031 --- Source/WebKit/Platform/unix/SharedMemoryUnix.cpp.orig 2022-02-23 11:41:51 UTC
1032 +++ Source/WebKit/Platform/unix/SharedMemoryUnix.cpp
1033 @@ -153,7 +153,13 @@ static int createSharedMemory()
1036 for (int tries = 0; fileDescriptor == -1 && tries < 10; ++tries) {
1037 - String name = String("/WK2SharedMemory.") + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
1039 +#ifdef __DragonFly__
1040 + String("/tmp/WK2SharedMemory.")
1042 + String("/WK2SharedMemory.")
1044 + + String::number(static_cast<unsigned>(WTF::randomNumber() * (std::numeric_limits<unsigned>::max() + 1.0)));
1045 tempName = name.utf8();
1050 [FILE:1464:patches/patch-Source_bmalloc_bmalloc_AvailableMemory.cpp]
1051 --- Source/bmalloc/bmalloc/AvailableMemory.cpp.orig 2022-02-23 11:41:53 UTC
1052 +++ Source/bmalloc/bmalloc/AvailableMemory.cpp
1054 #import <mach/mach_error.h>
1057 -#include <sys/sysinfo.h>
1059 +#include <sys/sysinfo.h>
1060 #include <algorithm>
1063 @@ -159,7 +159,13 @@ static size_t computeAvailableMemory()
1064 // Round up the memory size to a multiple of 128MB because max_mem may not be exactly 512MB
1065 // (for example) and we have code that depends on those boundaries.
1066 return ((sizeAccordingToKernel + multiple - 1) / multiple) * multiple;
1067 -#elif BOS(FREEBSD) || BOS(LINUX)
1069 + long pages = sysconf(_SC_PHYS_PAGES);
1070 + long pageSize = sysconf(_SC_PAGE_SIZE);
1071 + if (pages == -1 || pageSize == -1)
1072 + return availableMemoryGuess;
1073 + return pages * pageSize;
1075 struct sysinfo info;
1076 if (!sysinfo(&info))
1077 return info.totalram * info.mem_unit;
1078 @@ -210,7 +216,11 @@ MemoryStatus memoryStatus()
1080 size_t memoryFootprint = 0;
1081 if (!sysctl(mib, 4, &info, &infolen, nullptr, 0))
1082 +# ifdef __DragonFly__
1083 + memoryFootprint = static_cast<size_t>(info.kp_vm_rssize) * vmPageSize();
1085 memoryFootprint = static_cast<size_t>(info.ki_rssize) * vmPageSize();
1089 double percentInUse = static_cast<double>(memoryFootprint) / static_cast<double>(availableMemory());
1092 [FILE:971:patches/patch-Source_cmake_OptionsCommon.cmake]
1093 --- Source/cmake/OptionsCommon.cmake.orig 2022-02-23 11:41:53 UTC
1094 +++ Source/cmake/OptionsCommon.cmake
1095 @@ -128,10 +128,10 @@ endif ()
1096 option(USE_THIN_ARCHIVES "Produce all static libraries as thin archives" ${USE_THIN_ARCHIVES_DEFAULT})
1098 if (USE_THIN_ARCHIVES)
1099 - set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
1100 - set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
1101 - set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
1102 - set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
1103 + set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
1104 + set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS>")
1105 + set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
1106 + set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> r <TARGET> <LINK_FLAGS> <OBJECTS>")
1109 set(ENABLE_DEBUG_FISSION_DEFAULT OFF)
1112 [FILE:520:patches/patch-Source_cmake_WebKitCompilerFlags.cmake]
1113 --- Source/cmake/WebKitCompilerFlags.cmake.orig 2022-03-24 13:31:53 UTC
1114 +++ Source/cmake/WebKitCompilerFlags.cmake
1115 @@ -260,7 +260,7 @@ if (NOT MSVC)
1116 string(REGEX MATCHALL "-fsanitize=[^ ]*" ENABLED_COMPILER_SANITIZERS ${CMAKE_CXX_FLAGS})
1119 -if (UNIX AND NOT APPLE AND NOT ENABLED_COMPILER_SANITIZERS)
1120 +if (UNIX AND NOT APPLE AND NOT ENABLED_COMPILER_SANITIZERS AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
1121 set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined ${CMAKE_SHARED_LINKER_FLAGS}")
1126 [FILE:358:patches/patch-Tools_MiniBrowser_gtk_CMakeLists.txt]
1127 --- Tools/MiniBrowser/gtk/CMakeLists.txt.orig 2022-02-23 11:41:54 UTC
1128 +++ Tools/MiniBrowser/gtk/CMakeLists.txt
1129 @@ -41,6 +41,10 @@ set(MiniBrowser_PRIVATE_LIBRARIES
1133 +if (CMAKE_SYSTEM_NAME MATCHES "SunOS")
1134 + list(APPEND MiniBrowser_PRIVATE_LIBRARIES intl)
1137 set(MiniBrowser_DEPENDENCIES