diff -urp webkitgtk-2.44.0.atk/Source/cmake/OptionsGTK.cmake webkitgtk-2.44.0/Source/cmake/OptionsGTK.cmake
--- webkitgtk-2.44.0.atk/Source/cmake/OptionsGTK.cmake	2024-03-26 13:31:28.624042893 -0500
+++ webkitgtk-2.44.0/Source/cmake/OptionsGTK.cmake	2024-03-26 13:31:44.387515569 -0500
@@ -16,8 +16,7 @@ set(USER_AGENT_BRANDING "" CACHE STRING
 find_package(Cairo 1.15.2 REQUIRED)
 find_package(Fontconfig 2.11 REQUIRED)
 find_package(Freetype 2.6.3 REQUIRED)
-find_package(LibGcrypt 1.7.0 REQUIRED)
-find_package(Libtasn1 REQUIRED)
+find_package(LibGcrypt 1.6.0 REQUIRED)
 find_package(HarfBuzz 1.4.2 REQUIRED COMPONENTS ICU)
 find_package(ICU 52.1 REQUIRED COMPONENTS data i18n uc)
 find_package(JPEG REQUIRED)
@@ -106,6 +105,7 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_PDFJS PUBLIC ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SPELLCHECK PUBLIC ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_TOUCH_EVENTS PUBLIC ON)
+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_CRYPTO PUBLIC ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBDRIVER PUBLIC ON)
 
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(USE_AVIF PUBLIC ON)
@@ -306,6 +306,16 @@ if (ENABLE_DOCUMENTATION AND NOT GIDocge
     message(FATAL_ERROR "ENABLE_INTROSPECTION is needed for gi-docgen.")
 endif ()
 
+if (ENABLE_WEB_CRYPTO)
+    find_package(Libtasn1 REQUIRED)
+    if (NOT LIBTASN1_FOUND)
+        message(FATAL_ERROR "libtasn1 is required to enable Web Crypto API support.")
+    endif ()
+    if (LibGcrypt_VERSION VERSION_LESS 1.7.0)
+        message(FATAL_ERROR "libgcrypt 1.7.0 is required to enable Web Crypto API support.")
+    endif ()
+endif ()
+
 if (ENABLE_WEBDRIVER)
     SET_AND_EXPOSE_TO_BUILD(ENABLE_WEBDRIVER_KEYBOARD_INTERACTIONS ON)
     SET_AND_EXPOSE_TO_BUILD(ENABLE_WEBDRIVER_MOUSE_INTERACTIONS ON)
diff -urp webkitgtk-2.44.0.atk/Source/cmake/OptionsPlayStation.cmake webkitgtk-2.44.0/Source/cmake/OptionsPlayStation.cmake
--- webkitgtk-2.44.0.atk/Source/cmake/OptionsPlayStation.cmake	2024-03-16 01:45:51.284670000 -0500
+++ webkitgtk-2.44.0/Source/cmake/OptionsPlayStation.cmake	2024-03-26 13:31:44.387515569 -0500
@@ -186,6 +186,7 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_REMOTE_INSPECTOR PRIVATE ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_RESOURCE_USAGE PRIVATE ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SMOOTH_SCROLLING PRIVATE ON)
+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_CRYPTO PRIVATE ON)
 
 if (USE_WPE_BACKEND_PLAYSTATION)
     WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBDRIVER PRIVATE ON)
diff -urp webkitgtk-2.44.0.atk/Source/cmake/OptionsWin.cmake webkitgtk-2.44.0/Source/cmake/OptionsWin.cmake
--- webkitgtk-2.44.0.atk/Source/cmake/OptionsWin.cmake	2024-03-16 01:45:51.284670000 -0500
+++ webkitgtk-2.44.0/Source/cmake/OptionsWin.cmake	2024-03-26 13:31:44.387515569 -0500
@@ -175,6 +175,7 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_RESOURCE_USAGE PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES})
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_VARIATION_FONTS PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES})
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEBDRIVER PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES})
+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_WEB_CRYPTO PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES})
 
 # No support planned
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_FTPDIR PRIVATE OFF)
diff -urp webkitgtk-2.44.0.atk/Source/cmake/WebKitFeatures.cmake webkitgtk-2.44.0/Source/cmake/WebKitFeatures.cmake
--- webkitgtk-2.44.0.atk/Source/cmake/WebKitFeatures.cmake	2024-03-16 01:45:51.288670000 -0500
+++ webkitgtk-2.44.0/Source/cmake/WebKitFeatures.cmake	2024-03-26 13:31:44.387515569 -0500
@@ -251,6 +251,7 @@ macro(WEBKIT_OPTION_BEGIN)
     WEBKIT_OPTION_DEFINE(ENABLE_WEB_AUDIO "Toggle Web Audio support" PRIVATE ON)
     WEBKIT_OPTION_DEFINE(ENABLE_WEB_AUTHN "Toggle Web AuthN support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_WEB_CODECS "Toggle WebCodecs support" PRIVATE OFF)
+    WEBKIT_OPTION_DEFINE(ENABLE_WEB_CRYPTO "Toggle WebCrypto Subtle-Crypto support" PRIVATE ON)
     WEBKIT_OPTION_DEFINE(ENABLE_WEB_RTC "Toggle WebRTC support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_WIRELESS_PLAYBACK_TARGET "Toggle wireless playback target support" PRIVATE OFF)
     WEBKIT_OPTION_DEFINE(ENABLE_XSLT "Toggle XSLT support" PRIVATE ON)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/bindings/js/SerializedScriptValue.cpp webkitgtk-2.44.0/Source/WebCore/bindings/js/SerializedScriptValue.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/bindings/js/SerializedScriptValue.cpp	2024-03-16 01:47:05.620925200 -0500
+++ webkitgtk-2.44.0/Source/WebCore/bindings/js/SerializedScriptValue.cpp	2024-03-26 14:24:06.312331934 -0500
@@ -195,7 +195,9 @@ enum SerializationTag {
     MapObjectTag = 30,
     NonMapPropertiesTag = 31,
     NonSetPropertiesTag = 32,
+#if ENABLE(WEB_CRYPTO)
     CryptoKeyTag = 33,
+#endif
     SharedArrayBufferTag = 34,
 #if ENABLE(WEBASSEMBLY)
     WasmModuleTag = 35,
@@ -294,7 +296,9 @@ static const char* name(SerializationTag
     case MapObjectTag: return "MapObjectTag";
     case NonMapPropertiesTag: return "NonMapPropertiesTag";
     case NonSetPropertiesTag: return "NonSetPropertiesTag";
+#if ENABLE(WEB_CRYPTO)
     case CryptoKeyTag: return "CryptoKeyTag";
+#endif
     case SharedArrayBufferTag: return "SharedArrayBufferTag";
 #if ENABLE(WEBASSEMBLY)
     case WasmModuleTag: return "WasmModuleTag";
@@ -449,7 +453,9 @@ static bool isTypeExposedToGlobalObject(
     case FileListTag:
     case ImageDataTag:
     case BlobTag:
+#if ENABLE(WEB_CRYPTO)
     case CryptoKeyTag:
+#endif
     case DOMPointReadOnlyTag:
     case DOMPointTag:
     case DOMRectReadOnlyTag:
@@ -608,6 +614,8 @@ static String agentClusterIDFromGlobalOb
 }
 #endif
 
+#if ENABLE(WEB_CRYPTO)
+
 const uint32_t currentKeyFormatVersion = 1;
 
 enum class CryptoKeyClassSubtag {
@@ -680,6 +688,7 @@ enum class CryptoKeyOKPOpNameTag {
     ED25519 = 1,
 };
 const uint8_t cryptoKeyOKPOpNameTagMaximumValue = 1;
+#endif
 
 static constexpr unsigned CurrentMajorVersion = 15;
 static constexpr unsigned CurrentMinorVersion = 0;
@@ -944,6 +953,7 @@ protected:
 #endif
 };
 
+#if ENABLE(WEB_CRYPTO)
 static bool wrapCryptoKey(JSGlobalObject* lexicalGlobalObject, const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey)
 {
     auto context = executionContext(lexicalGlobalObject);
@@ -955,6 +965,7 @@ static bool unwrapCryptoKey(JSGlobalObje
     auto context = executionContext(lexicalGlobalObject);
     return context && context->unwrapCryptoKey(wrappedKey, key);
 }
+#endif
 
 #if ASSUME_LITTLE_ENDIAN
 template <typename T> static void writeLittleEndian(Vector<uint8_t>& buffer, T value)
@@ -1965,6 +1976,7 @@ private:
                 addToObjectPool<ArrayBufferViewTag>(obj);
                 return success;
             }
+#if ENABLE(WEB_CRYPTO)
             if (auto* key = JSCryptoKey::toWrapped(vm, obj)) {
                 write(CryptoKeyTag);
                 Vector<uint8_t> serializedKey;
@@ -2019,6 +2031,7 @@ private:
                 write(wrappedKey);
                 return true;
             }
+#endif
 #if ENABLE(WEB_RTC)
             if (auto* rtcCertificate = JSRTCCertificate::toWrapped(vm, obj)) {
                 write(RTCCertificateTag);
@@ -2160,6 +2173,7 @@ private:
         writeLittleEndian<uint8_t>(m_buffer, static_cast<uint8_t>(tag));
     }
 
+#if ENABLE(WEB_CRYPTO)
     void write(CryptoKeyClassSubtag tag)
     {
         writeLittleEndian<uint8_t>(m_buffer, static_cast<uint8_t>(tag));
@@ -2184,6 +2198,7 @@ private:
     {
         writeLittleEndian<uint8_t>(m_buffer, static_cast<uint8_t>(tag));
     }
+#endif
 
     void write(bool b)
     {
@@ -2394,6 +2409,7 @@ private:
         write(DestinationColorSpaceSRGBTag);
     }
 
+#if ENABLE(WEB_CRYPTO)
     void write(CryptoKeyOKP::NamedCurve curve)
     {
         switch (curve) {
@@ -2598,6 +2614,7 @@ private:
             break;
         }
     }
+#endif
 
     void write(const uint8_t* data, unsigned length)
     {
@@ -3827,6 +3844,7 @@ private:
         return false;
     }
 
+#if ENABLE(WEB_CRYPTO)
     bool read(CryptoKeyOKP::NamedCurve& result)
     {
         uint8_t nameTag;
@@ -4198,6 +4216,7 @@ private:
         cryptoKey = getJSValue(result.get());
         return true;
     }
+#endif
 
     bool read(SerializableErrorType& errorType)
     {
@@ -5145,6 +5164,7 @@ private:
             addToObjectPool<ArrayBufferViewTag>(arrayBufferView);
             return arrayBufferView;
         }
+#if ENABLE(WEB_CRYPTO)
         case CryptoKeyTag: {
             Vector<uint8_t> wrappedKey;
             if (!read(wrappedKey)) {
@@ -5168,6 +5188,7 @@ private:
             }
             return cryptoKey;
         }
+#endif
         case DOMPointReadOnlyTag:
             return readDOMPoint<DOMPointReadOnly>();
         case DOMPointTag:
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.cpp	2024-03-26 14:28:47.477493155 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmAESCBC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmAesCbcCfbParams.h"
 #include "CryptoAlgorithmAesKeyParams.h"
 #include "CryptoKeyAES.h"
@@ -193,3 +195,5 @@ ExceptionOr<size_t> CryptoAlgorithmAESCB
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCBC.h	2024-03-26 14:25:33.492895418 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesCbcCfbParams;
@@ -57,3 +59,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.cpp	2024-03-26 14:29:40.444505080 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmAESCFB.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmAesCbcCfbParams.h"
 #include "CryptoAlgorithmAesKeyParams.h"
 #include "CryptoKeyAES.h"
@@ -193,3 +195,5 @@ ExceptionOr<size_t> CryptoAlgorithmAESCF
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCFB.h	2024-03-26 14:29:32.021116840 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesCbcCfbParams;
@@ -54,3 +56,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.cpp	2024-03-26 14:31:04.478386154 -0500
@@ -27,6 +27,8 @@
 #include "config.h"
 #include "CryptoAlgorithmAESCTR.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmAesCtrParams.h"
 #include "CryptoAlgorithmAesKeyParams.h"
 #include "CryptoKeyAES.h"
@@ -314,3 +316,5 @@ auto CryptoAlgorithmAESCTR::CounterBlock
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESCTR.h	2024-03-26 14:30:56.405000193 -0500
@@ -28,6 +28,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesCtrParams;
@@ -82,3 +84,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.cpp	2024-03-26 14:32:29.072270864 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmAESGCM.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmAesGcmParams.h"
 #include "CryptoAlgorithmAesKeyParams.h"
 #include "CryptoKeyAES.h"
@@ -242,3 +244,5 @@ ExceptionOr<size_t> CryptoAlgorithmAESGC
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESGCM.h	2024-03-26 14:32:35.855648408 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesGcmParams;
@@ -55,3 +57,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.cpp	2024-03-26 14:28:06.933895562 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmAESKW.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmAesKeyParams.h"
 #include "CryptoKeyAES.h"
 #include <variant>
@@ -183,3 +185,5 @@ ExceptionOr<size_t> CryptoAlgorithmAESKW
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmAESKW.h	2024-03-26 14:26:39.979995460 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyAES;
@@ -53,3 +55,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.cpp	2024-03-26 13:31:44.390848931 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmECDH.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmEcKeyParams.h"
 #include "CryptoAlgorithmEcdhKeyDeriveParams.h"
 #include "CryptoKeyEC.h"
@@ -229,3 +231,5 @@ void CryptoAlgorithmECDH::exportKey(Cryp
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDH.h	2024-03-26 13:31:44.390848931 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyEC;
@@ -51,3 +53,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.cpp	2024-03-26 13:31:44.390848931 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmECDSA.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmEcKeyParams.h"
 #include "CryptoAlgorithmEcdsaParams.h"
 #include "CryptoKeyEC.h"
@@ -217,3 +219,5 @@ void CryptoAlgorithmECDSA::exportKey(Cry
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmECDSA.h	2024-03-26 13:31:44.394182294 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmEcdsaParams;
@@ -53,3 +55,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.cpp	2024-03-26 13:31:44.394182294 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmEd25519.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyOKP.h"
 #include "NotImplemented.h"
 #include <JavaScriptCore/JSCJSValueInlines.h>
@@ -193,3 +195,4 @@ void CryptoAlgorithmEd25519::exportKey(C
 }
 
 } // namespace WebCore
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmEd25519.h	2024-03-26 13:31:44.394182294 -0500
@@ -26,6 +26,7 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
 namespace WebCore {
 
 class CryptoKeyOKP;
@@ -56,3 +57,5 @@ inline CryptoAlgorithmIdentifier CryptoA
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.cpp	2024-03-26 13:31:44.394182294 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmHKDF.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmHkdfParams.h"
 #include "CryptoKeyRaw.h"
 #include <JavaScriptCore/JSCJSValueInlines.h>
@@ -80,3 +82,5 @@ ExceptionOr<size_t> CryptoAlgorithmHKDF:
 }
     
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHKDF.h	2024-03-26 13:31:44.397515657 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmHkdfParams;
@@ -50,3 +52,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.cpp	2024-03-26 13:31:44.397515657 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmHMAC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmHmacKeyParams.h"
 #include "CryptoKeyHMAC.h"
 #include <variant>
@@ -195,4 +197,6 @@ ExceptionOr<size_t> CryptoAlgorithmHMAC:
     return CryptoKeyHMAC::getKeyLength(parameters);
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmHMAC.h	2024-03-26 13:31:44.397515657 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyHMAC;
@@ -54,3 +56,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.cpp	2024-03-26 13:31:44.397515657 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmPBKDF2.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmPbkdf2Params.h"
 #include "CryptoKeyRaw.h"
 #include <JavaScriptCore/JSCJSValueInlines.h>
@@ -80,3 +82,5 @@ ExceptionOr<size_t> CryptoAlgorithmPBKDF
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmPBKDF2.h	2024-03-26 13:31:44.397515657 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmPbkdf2Params;
@@ -50,3 +52,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp	2024-03-26 13:31:44.397515657 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSAES_PKCS1_v1_5.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRsaKeyGenParams.h"
 #include "CryptoKeyPair.h"
 #include "CryptoKeyRSA.h"
@@ -184,4 +186,6 @@ void CryptoAlgorithmRSAES_PKCS1_v1_5::ex
     callback(format, WTFMove(result));
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h	2024-03-26 13:31:44.397515657 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyRSA;
@@ -52,3 +54,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp	2024-03-26 13:31:44.397515657 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSA_OAEP.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRsaHashedImportParams.h"
 #include "CryptoAlgorithmRsaHashedKeyGenParams.h"
 #include "CryptoAlgorithmRsaOaepParams.h"
@@ -254,4 +256,6 @@ void CryptoAlgorithmRSA_OAEP::exportKey(
     callback(format, WTFMove(result));
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_OAEP.h	2024-03-26 13:31:44.397515657 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmRsaOaepParams;
@@ -53,3 +55,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.cpp	2024-03-26 13:31:44.397515657 -0500
@@ -26,7 +26,7 @@
 #include "config.h"
 #include "CryptoAlgorithmRSA_PSS.h"
 
-#if HAVE(RSA_PSS)
+#if ENABLE(WEB_CRYPTO) && HAVE(RSA_PSS)
 
 #include "CryptoAlgorithmRsaHashedImportParams.h"
 #include "CryptoAlgorithmRsaHashedKeyGenParams.h"
@@ -244,4 +244,4 @@ void CryptoAlgorithmRSA_PSS::exportKey(C
 
 }
 
-#endif // HAVE(RSA_PSS)
+#endif // ENABLE(WEB_CRYPTO) && HAVE(RSA_PSS)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSA_PSS.h	2024-03-26 13:31:44.400849019 -0500
@@ -27,7 +27,7 @@
 
 #include "CryptoAlgorithm.h"
 
-#if HAVE(RSA_PSS)
+#if ENABLE(WEB_CRYPTO) && HAVE(RSA_PSS)
 
 namespace WebCore {
 
@@ -56,4 +56,4 @@ private:
 
 } // namespace WebCore
 
-#endif // HAVE(RSA_PSS)
+#endif // ENABLE(WEB_CRYPTO) && HAVE(RSA_PSS)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp	2024-03-26 13:31:44.400849019 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSASSA_PKCS1_v1_5.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRsaHashedImportParams.h"
 #include "CryptoAlgorithmRsaHashedKeyGenParams.h"
 #include "CryptoKeyPair.h"
@@ -238,4 +240,6 @@ void CryptoAlgorithmRSASSA_PKCS1_v1_5::e
     callback(format, WTFMove(result));
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h	2024-03-26 13:31:44.400849019 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyRSA;
@@ -52,3 +54,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.cpp	2024-03-26 13:31:44.400849019 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmSHA1.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ScriptExecutionContext.h"
 #include <pal/crypto/CryptoDigest.h>
 
@@ -58,4 +60,6 @@ void CryptoAlgorithmSHA1::digest(Vector<
     });
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA1.h	2024-03-26 13:31:44.400849019 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmSHA1 final : public CryptoAlgorithm {
@@ -42,3 +44,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.cpp	2024-03-26 13:31:44.400849019 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmSHA224.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ScriptExecutionContext.h"
 #include <pal/crypto/CryptoDigest.h>
 
@@ -58,4 +60,6 @@ void CryptoAlgorithmSHA224::digest(Vecto
     });
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA224.h	2024-03-26 13:31:44.400849019 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmSHA224 final : public CryptoAlgorithm {
@@ -42,3 +44,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.cpp	2024-03-26 13:31:44.400849019 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmSHA256.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ScriptExecutionContext.h"
 #include <pal/crypto/CryptoDigest.h>
 
@@ -58,4 +60,6 @@ void CryptoAlgorithmSHA256::digest(Vecto
     });
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA256.h	2024-03-26 13:31:44.400849019 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmSHA256 final : public CryptoAlgorithm {
@@ -42,3 +44,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.cpp	2024-03-26 13:31:44.400849019 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmSHA384.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ScriptExecutionContext.h"
 #include <pal/crypto/CryptoDigest.h>
 
@@ -58,4 +60,6 @@ void CryptoAlgorithmSHA384::digest(Vecto
     });
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA384.h	2024-03-26 13:31:44.400849019 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmSHA384 final : public CryptoAlgorithm {
@@ -42,3 +44,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.cpp	2024-03-26 13:31:44.400849019 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmSHA512.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ScriptExecutionContext.h"
 #include <pal/crypto/CryptoDigest.h>
 
@@ -58,4 +60,6 @@ void CryptoAlgorithmSHA512::digest(Vecto
     });
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmSHA512.h	2024-03-26 13:31:44.404182383 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmSHA512 final : public CryptoAlgorithm {
@@ -42,3 +44,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.cpp webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.cpp	2024-03-26 13:31:44.404182383 -0500
@@ -20,6 +20,8 @@
 #include "config.h"
 #include "CryptoAlgorithmX25519.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmEcKeyParams.h"
 #include "CryptoAlgorithmX25519Params.h"
 #include "CryptoKeyOKP.h"
@@ -225,3 +227,5 @@ void CryptoAlgorithmX25519::exportKey(Cr
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.h webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/algorithms/CryptoAlgorithmX25519.h	2024-03-26 13:31:44.404182383 -0500
@@ -21,6 +21,7 @@
 
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
 namespace WebCore {
 
 class CryptoKeyOKP;
@@ -44,3 +45,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CommonCryptoUtilities.cpp webkitgtk-2.44.0/Source/WebCore/crypto/CommonCryptoUtilities.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CommonCryptoUtilities.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CommonCryptoUtilities.cpp	2024-03-26 13:31:44.404182383 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CommonCryptoUtilities.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 bool getCommonCryptoDigestAlgorithm(CryptoAlgorithmIdentifier hashFunction, CCDigestAlgorithm& algorithm)
@@ -54,3 +56,5 @@ ALLOW_DEPRECATED_DECLARATIONS_END
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CommonCryptoUtilities.h webkitgtk-2.44.0/Source/WebCore/crypto/CommonCryptoUtilities.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CommonCryptoUtilities.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CommonCryptoUtilities.h	2024-03-26 13:31:44.404182383 -0500
@@ -25,6 +25,8 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmIdentifier.h"
 #include <CommonCrypto/CommonCryptor.h>
 #include <CommonCrypto/CommonRandom.h>
@@ -36,3 +38,5 @@ namespace WebCore {
 bool getCommonCryptoDigestAlgorithm(CryptoAlgorithmIdentifier, CCDigestAlgorithm&);
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithm.cpp webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithm.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithm.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithm.cpp	2024-03-26 13:31:44.404182383 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithm.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ScriptExecutionContext.h"
 
 namespace WebCore {
@@ -116,4 +118,6 @@ void CryptoAlgorithm::dispatchOperationI
     dispatchAlgorithmOperation(workQueue, context, WTFMove(callback), WTFMove(exceptionCallback), WTFMove(operation));
 }
 
-} // namespace WebCore
+}
+
+#endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithm.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithm.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithm.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithm.h	2024-03-26 13:31:44.407515745 -0500
@@ -37,6 +37,8 @@
 #include <wtf/Vector.h>
 #include <wtf/WorkQueue.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmParameters;
@@ -80,3 +82,5 @@ public:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmIdentifier.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmIdentifier.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmIdentifier.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmIdentifier.h	2024-03-26 13:31:44.407515745 -0500
@@ -25,9 +25,11 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
-enum class CryptoAlgorithmIdentifier : uint8_t {
+enum class CryptoAlgorithmIdentifier {
     RSAES_PKCS1_v1_5 = 1,
     RSASSA_PKCS1_v1_5,
     RSA_PSS,
@@ -52,3 +54,5 @@ enum class CryptoAlgorithmIdentifier : u
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmParameters.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmParameters.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmParameters.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmParameters.h	2024-03-26 13:31:44.407515745 -0500
@@ -29,12 +29,14 @@
 #include <wtf/TypeCasts.h>
 #include <wtf/text/WTFString.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmParameters {
     WTF_MAKE_FAST_ALLOCATED;
 public:
-    enum class Class : uint8_t {
+    enum class Class {
         None,
         AesCbcCfbParams,
         AesCtrParams,
@@ -69,3 +71,5 @@ public:
 SPECIALIZE_TYPE_TRAITS_BEGIN(WebCore::CryptoAlgorithm##ToClassName) \
 static bool isType(const WebCore::CryptoAlgorithmParameters& parameters) { return parameters.parametersClass() == WebCore::CryptoAlgorithmParameters::Class::ToClassName; } \
 SPECIALIZE_TYPE_TRAITS_END()
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmParameters.idl webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmParameters.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmParameters.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmParameters.idl	2024-03-26 13:31:44.407515745 -0500
@@ -23,6 +23,8 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-dictionary CryptoAlgorithmParameters {
+[
+    Conditional=WEB_CRYPTO,
+] dictionary CryptoAlgorithmParameters {
     required DOMString name;
 };
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmRegistry.cpp webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmRegistry.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmRegistry.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmRegistry.cpp	2024-03-26 13:31:44.407515745 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRegistry.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithm.h"
 #include <wtf/NeverDestroyed.h>
 
@@ -96,3 +98,5 @@ void CryptoAlgorithmRegistry::registerAl
 
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmRegistry.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmRegistry.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoAlgorithmRegistry.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoAlgorithmRegistry.h	2024-03-26 13:31:44.407515745 -0500
@@ -32,6 +32,8 @@
 #include <wtf/Noncopyable.h>
 #include <wtf/text/StringHash.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithm;
@@ -67,3 +69,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKey.cpp webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKey.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKey.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKey.cpp	2024-03-26 13:31:44.407515745 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKey.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRegistry.h"
 #include "WebCoreOpaqueRoot.h"
 #include <wtf/CryptographicallyRandomNumber.h>
@@ -80,3 +82,5 @@ Vector<uint8_t> CryptoKey::randomData(si
 #endif
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyFormat.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyFormat.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyFormat.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyFormat.h	2024-03-26 13:31:44.407515745 -0500
@@ -25,13 +25,17 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
-enum class CryptoKeyFormat : uint8_t {
+enum class CryptoKeyFormat {
     Raw,
     Spki,
     Pkcs8,
     Jwk
 };
 
-} // namespace WebCore
+}
+
+#endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKey.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKey.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKey.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKey.h	2024-03-26 13:31:44.410849108 -0500
@@ -25,6 +25,8 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAesKeyAlgorithm.h"
 #include "CryptoAlgorithmIdentifier.h"
 #include "CryptoEcKeyAlgorithm.h"
@@ -96,3 +98,5 @@ WebCoreOpaqueRoot root(CryptoKey*);
 SPECIALIZE_TYPE_TRAITS_BEGIN(WebCore::ToClassName) \
     static bool isType(const WebCore::CryptoKey& key) { return key.keyClass() == WebCore::KeyClass; } \
 SPECIALIZE_TYPE_TRAITS_END()
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKey.idl webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKey.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKey.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKey.idl	2024-03-26 13:31:44.410849108 -0500
@@ -32,6 +32,7 @@ enum KeyType {
 typedef (CryptoKeyAlgorithm or CryptoAesKeyAlgorithm or CryptoEcKeyAlgorithm or CryptoHmacKeyAlgorithm or CryptoRsaHashedKeyAlgorithm or CryptoRsaKeyAlgorithm) KeyAlgorithm;
 
 [
+    Conditional=WEB_CRYPTO,
     Exposed=(Window,Worker),
     GenerateIsReachable=Impl,
     SecureContext,
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyPair.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyPair.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyPair.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyPair.h	2024-03-26 13:31:44.410849108 -0500
@@ -27,6 +27,8 @@
 
 #include <wtf/RefPtr.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKey;
@@ -37,3 +39,5 @@ struct CryptoKeyPair {
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyPair.idl webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyPair.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyPair.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyPair.idl	2024-03-26 13:31:44.410849108 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoKeyPair {
     CryptoKey publicKey;
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyType.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyType.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyType.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyType.h	2024-03-26 13:31:44.410849108 -0500
@@ -25,12 +25,16 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
-enum class CryptoKeyType : uint8_t {
+enum class CryptoKeyType {
     Public,
     Private,
     Secret
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyUsage.h webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyUsage.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyUsage.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyUsage.h	2024-03-26 13:31:44.410849108 -0500
@@ -25,6 +25,8 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 enum {
@@ -53,3 +55,5 @@ enum class CryptoKeyUsage {
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyUsage.idl webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyUsage.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/CryptoKeyUsage.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/CryptoKeyUsage.idl	2024-03-26 13:31:44.410849108 -0500
@@ -23,7 +23,9 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-enum CryptoKeyUsage {
+[
+    Conditional=WEB_CRYPTO,
+] enum CryptoKeyUsage {
     "encrypt",
     "decrypt",
     "sign",
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDHGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDHGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDHGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDHGCrypt.cpp	2024-03-26 13:31:44.410849108 -0500
@@ -28,6 +28,8 @@
 #include "config.h"
 #include "CryptoAlgorithmECDH.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyEC.h"
 #include "GCryptUtilities.h"
 #include <pal/crypto/gcrypt/Handle.h>
@@ -104,3 +106,5 @@ std::optional<Vector<uint8_t>> CryptoAlg
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDSAGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDSAGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDSAGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmECDSAGCrypt.cpp	2024-03-26 13:31:44.410849108 -0500
@@ -28,6 +28,8 @@
 #include "config.h"
 #include "CryptoAlgorithmECDSA.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmEcdsaParams.h"
 #include "CryptoKeyEC.h"
 #include "GCryptUtilities.h"
@@ -185,3 +187,5 @@ ExceptionOr<bool> CryptoAlgorithmECDSA::
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmEd25519GCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmEd25519GCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmEd25519GCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmEd25519GCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -20,6 +20,8 @@
 #include "config.h"
 #include "CryptoAlgorithmEd25519.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyOKP.h"
 #include "GCryptUtilities.h"
 
@@ -153,4 +155,5 @@ ExceptionOr<bool> CryptoAlgorithmEd25519
     return verifyEd25519(key.platformKey(), key.keySizeInBytes(), signature, data);
 }
 
-} // namespace WebCore
+}
+#endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHKDFGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHKDFGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHKDFGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHKDFGCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -28,6 +28,8 @@
 #include "config.h"
 #include "CryptoAlgorithmHKDF.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmHkdfParams.h"
 #include "CryptoKeyRaw.h"
 #include "GCryptUtilities.h"
@@ -159,3 +161,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHMACGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHMACGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHMACGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmHMACGCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -29,6 +29,8 @@
 #include "config.h"
 #include "CryptoAlgorithmHMAC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyHMAC.h"
 #include <pal/crypto/gcrypt/Handle.h>
 #include <wtf/CryptographicUtilities.h>
@@ -105,4 +107,6 @@ ExceptionOr<bool> CryptoAlgorithmHMAC::p
     return signature.size() == expectedSignature->size() && !constantTimeMemcmp(expectedSignature->data(), signature.data(), expectedSignature->size());
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmPBKDF2GCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmPBKDF2GCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmPBKDF2GCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmPBKDF2GCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -28,6 +28,8 @@
 #include "config.h"
 #include "CryptoAlgorithmPBKDF2.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmPbkdf2Params.h"
 #include "CryptoKeyRaw.h"
 #include "GCryptUtilities.h"
@@ -64,3 +66,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRegistryGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRegistryGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRegistryGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRegistryGCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "CryptoAlgorithmRegistry.h"
 
+#if ENABLE(WEB_CRYPTO)
 #include "CryptoAlgorithmAESCBC.h"
 #include "CryptoAlgorithmAESCTR.h"
 #include "CryptoAlgorithmAESGCM.h"
@@ -73,4 +74,6 @@ void CryptoAlgorithmRegistry::platformRe
     registerAlgorithm<CryptoAlgorithmX25519>();
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSAES_PKCS1_v1_5GCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSAES_PKCS1_v1_5GCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSAES_PKCS1_v1_5GCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSAES_PKCS1_v1_5GCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSAES_PKCS1_v1_5.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyRSA.h"
 #include "GCryptUtilities.h"
 
@@ -109,3 +111,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_OAEPGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_OAEPGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_OAEPGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_OAEPGCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSA_OAEP.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRsaOaepParams.h"
 #include "CryptoKeyRSA.h"
 #include "GCryptUtilities.h"
@@ -126,3 +128,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_PSSGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_PSSGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_PSSGCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSA_PSSGCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -28,6 +28,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSA_PSS.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRsaPssParams.h"
 #include "CryptoKeyRSA.h"
 #include "GCryptUtilities.h"
@@ -152,3 +154,5 @@ ExceptionOr<bool> CryptoAlgorithmRSA_PSS
 
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSASSA_PKCS1_v1_5GCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSASSA_PKCS1_v1_5GCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSASSA_PKCS1_v1_5GCrypt.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmRSASSA_PKCS1_v1_5GCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -27,6 +27,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSASSA_PKCS1_v1_5.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyRSA.h"
 #include "GCryptUtilities.h"
 #include "NotImplemented.h"
@@ -150,3 +152,5 @@ ExceptionOr<bool> CryptoAlgorithmRSASSA_
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmX25519GCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmX25519GCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoAlgorithmX25519GCrypt.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoAlgorithmX25519GCrypt.cpp	2024-03-26 13:31:44.414182471 -0500
@@ -20,6 +20,8 @@
 #include "config.h"
 #include "CryptoAlgorithmX25519.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyOKP.h"
 #include "GCryptRFC7748.h"
 #include <pal/crypto/gcrypt/Handle.h>
@@ -38,3 +40,6 @@ std::optional<Vector<uint8_t>> CryptoAlg
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
+
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoKeyECGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoKeyECGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoKeyECGCrypt.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoKeyECGCrypt.cpp	2024-03-26 13:31:44.417515833 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyEC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyPair.h"
 #include "GCryptUtilities.h"
 #include "JsonWebKey.h"
@@ -726,3 +728,5 @@ Vector<uint8_t> CryptoKeyEC::platformExp
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoKeyOKPGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoKeyOKPGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoKeyOKPGCrypt.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoKeyOKPGCrypt.cpp	2024-03-26 13:31:44.417515833 -0500
@@ -20,6 +20,8 @@
 #include "config.h"
 #include "CryptoKeyOKP.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyPair.h"
 #include "GCryptRFC7748.h"
 #include "GCryptRFC8032.h"
@@ -512,3 +514,5 @@ Vector<uint8_t> CryptoKeyOKP::platformEx
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoKeyRSAGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoKeyRSAGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/CryptoKeyRSAGCrypt.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/CryptoKeyRSAGCrypt.cpp	2024-03-26 13:31:44.417515833 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyRSA.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRegistry.h"
 #include "CryptoKeyPair.h"
 #include "CryptoKeyRSAComponents.h"
@@ -708,3 +710,5 @@ std::unique_ptr<CryptoKeyRSAComponents>
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/SerializedCryptoKeyWrapGCrypt.cpp webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/SerializedCryptoKeyWrapGCrypt.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/gcrypt/SerializedCryptoKeyWrapGCrypt.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/gcrypt/SerializedCryptoKeyWrapGCrypt.cpp	2024-03-26 13:31:44.417515833 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "SerializedCryptoKeyWrap.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "NotImplemented.h"
 
 namespace WebCore {
@@ -59,4 +61,6 @@ bool unwrapSerializedCryptoKey(const Vec
     return true;
 }
 
-} // namespace WebCore
+}
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/JsonWebKey.h webkitgtk-2.44.0/Source/WebCore/crypto/JsonWebKey.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/JsonWebKey.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/JsonWebKey.h	2024-03-26 13:31:44.420849197 -0500
@@ -29,6 +29,8 @@
 #include "RsaOtherPrimesInfo.h"
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 struct JsonWebKey {
@@ -57,3 +59,5 @@ struct JsonWebKey {
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/JsonWebKey.idl webkitgtk-2.44.0/Source/WebCore/crypto/JsonWebKey.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/JsonWebKey.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/JsonWebKey.idl	2024-03-26 13:31:44.420849197 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject,
 ] dictionary JsonWebKey {
     // The following fields are defined in Section 3.1 of JSON Web Key
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoAesKeyAlgorithm.idl webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoAesKeyAlgorithm.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoAesKeyAlgorithm.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoAesKeyAlgorithm.idl	2024-03-26 13:31:44.420849197 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoAesKeyAlgorithm : CryptoKeyAlgorithm {
     // The length, in bits, of the key.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoEcKeyAlgorithm.idl webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoEcKeyAlgorithm.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoEcKeyAlgorithm.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoEcKeyAlgorithm.idl	2024-03-26 13:31:44.420849197 -0500
@@ -26,6 +26,7 @@
 typedef DOMString NamedCurve;
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoEcKeyAlgorithm : CryptoKeyAlgorithm {
     // The named curve that the key uses
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoHmacKeyAlgorithm.idl webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoHmacKeyAlgorithm.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoHmacKeyAlgorithm.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoHmacKeyAlgorithm.idl	2024-03-26 13:31:44.420849197 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoHmacKeyAlgorithm : CryptoKeyAlgorithm {
     // The inner hash function to use.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyAES.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyAES.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyAES.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyAES.cpp	2024-03-26 13:31:44.420849197 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyAES.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAesKeyAlgorithm.h"
 #include "CryptoAlgorithmAesKeyParams.h"
 #include "CryptoAlgorithmRegistry.h"
@@ -128,3 +130,5 @@ auto CryptoKeyAES::algorithm() const ->
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyAES.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyAES.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyAES.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyAES.h	2024-03-26 13:31:44.420849197 -0500
@@ -31,6 +31,8 @@
 #include <wtf/Function.h>
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmParameters;
@@ -75,3 +77,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_KEY(CryptoKeyAES, CryptoKeyClass::AES)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyAlgorithm.idl webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyAlgorithm.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyAlgorithm.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyAlgorithm.idl	2024-03-26 13:31:44.420849197 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoKeyAlgorithm {
     required DOMString name;
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyEC.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyEC.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyEC.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyEC.cpp	2024-03-26 13:31:44.424182559 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyEC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRegistry.h"
 #include "JsonWebKey.h"
 #include <wtf/text/Base64.h>
@@ -228,3 +230,5 @@ auto CryptoKeyEC::algorithm() const -> K
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyEC.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyEC.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyEC.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyEC.h	2024-03-26 13:31:44.427515922 -0500
@@ -29,6 +29,8 @@
 #include "CryptoKeyPair.h"
 #include "ExceptionOr.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #if OS(DARWIN) && !PLATFORM(GTK)
 #include "CommonCryptoUtilities.h"
 
@@ -116,3 +118,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_KEY(CryptoKeyEC, CryptoKeyClass::EC)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyHMAC.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyHMAC.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyHMAC.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyHMAC.cpp	2024-03-26 13:31:44.427515922 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyHMAC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmHmacKeyParams.h"
 #include "CryptoAlgorithmRegistry.h"
 #include "ExceptionOr.h"
@@ -147,3 +149,5 @@ auto CryptoKeyHMAC::algorithm() const ->
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyHMAC.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyHMAC.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyHMAC.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyHMAC.h	2024-03-26 13:31:44.427515922 -0500
@@ -25,6 +25,8 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKey.h"
 #include "ExceptionOr.h"
 #include <wtf/Function.h>
@@ -70,3 +72,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_KEY(CryptoKeyHMAC, CryptoKeyClass::HMAC)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyOKP.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyOKP.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyOKP.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyOKP.cpp	2024-03-26 13:31:44.427515922 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyOKP.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRegistry.h"
 #include "JsonWebKey.h"
 #include <wtf/text/Base64.h>
@@ -255,3 +257,5 @@ Vector<uint8_t> CryptoKeyOKP::platformEx
 #endif
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyOKP.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyOKP.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyOKP.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyOKP.h	2024-03-26 13:31:44.427515922 -0500
@@ -29,6 +29,8 @@
 #include "CryptoKeyPair.h"
 #include "ExceptionOr.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 struct JsonWebKey;
@@ -87,3 +89,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_KEY(CryptoKeyOKP, CryptoKeyClass::OKP)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRaw.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRaw.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRaw.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRaw.cpp	2024-03-26 13:31:44.427515922 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyRaw.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRegistry.h"
 
 namespace WebCore {
@@ -44,3 +46,5 @@ auto CryptoKeyRaw::algorithm() const ->
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRaw.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRaw.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRaw.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRaw.h	2024-03-26 13:31:44.427515922 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoKey.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyRaw final : public CryptoKey {
@@ -51,3 +53,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_KEY(CryptoKeyRaw, CryptoKeyClass::Raw)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.cpp	2024-03-26 13:31:44.427515922 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyRSAComponents.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 CryptoKeyRSAComponents::CryptoKeyRSAComponents(const Vector<uint8_t>& modulus, const Vector<uint8_t>& exponent)
@@ -87,3 +89,5 @@ CryptoKeyRSAComponents::CryptoKeyRSAComp
 CryptoKeyRSAComponents::~CryptoKeyRSAComponents() = default;
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSAComponents.h	2024-03-26 13:31:44.427515922 -0500
@@ -27,11 +27,13 @@
 
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKeyRSAComponents {
 public:
-    enum class Type : bool {
+    enum class Type {
         Public,
         Private
     };
@@ -109,3 +111,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSA.cpp webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSA.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSA.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSA.cpp	2024-03-26 13:31:44.427515922 -0500
@@ -30,6 +30,8 @@
 #include "JsonWebKey.h"
 #include <wtf/text/Base64.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 RefPtr<CryptoKeyRSA> CryptoKeyRSA::importJwk(CryptoAlgorithmIdentifier algorithm, std::optional<CryptoAlgorithmIdentifier> hash, JsonWebKey&& keyData, bool extractable, CryptoKeyUsageBitmap usages)
@@ -172,3 +174,5 @@ JsonWebKey CryptoKeyRSA::exportJwk() con
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSA.h webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSA.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoKeyRSA.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoKeyRSA.h	2024-03-26 13:31:44.427515922 -0500
@@ -29,6 +29,8 @@
 #include "ExceptionOr.h"
 #include <wtf/Function.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 #if OS(DARWIN) && !PLATFORM(GTK)
 #include "CommonCryptoUtilities.h"
 
@@ -108,3 +110,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_KEY(CryptoKeyRSA, CryptoKeyClass::RSA)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoRsaHashedKeyAlgorithm.idl webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoRsaHashedKeyAlgorithm.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoRsaHashedKeyAlgorithm.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoRsaHashedKeyAlgorithm.idl	2024-03-26 13:31:44.430849285 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoRsaHashedKeyAlgorithm : CryptoRsaKeyAlgorithm {
     // The hash algorithm that is used with this key
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoRsaKeyAlgorithm.idl webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoRsaKeyAlgorithm.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/keys/CryptoRsaKeyAlgorithm.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/keys/CryptoRsaKeyAlgorithm.idl	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,7 @@
 typedef Uint8Array BigInteger;
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject
 ] dictionary CryptoRsaKeyAlgorithm : CryptoKeyAlgorithm {
     // The length, in bits, of the RSA modulus
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmECDHOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmECDHOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmECDHOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmECDHOpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmECDH.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyEC.h"
 #include "OpenSSLUtilities.h"
 
@@ -59,3 +61,5 @@ std::optional<Vector<uint8_t>> CryptoAlg
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmECDSAOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmECDSAOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmECDSAOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmECDSAOpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmECDSA.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmEcdsaParams.h"
 #include "CryptoKeyEC.h"
 #include "OpenSSLUtilities.h"
@@ -97,3 +99,5 @@ ExceptionOr<bool> CryptoAlgorithmECDSA::
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmHKDFOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmHKDFOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmHKDFOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmHKDFOpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmHKDF.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmHkdfParams.h"
 #include "CryptoKeyRaw.h"
 #include "OpenSSLUtilities.h"
@@ -47,3 +49,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmHMACOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmHMACOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmHMACOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmHMACOpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmHMAC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyHMAC.h"
 #include "OpenSSLCryptoUniquePtr.h"
 #include "OpenSSLUtilities.h"
@@ -83,3 +85,5 @@ ExceptionOr<bool> CryptoAlgorithmHMAC::p
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmPBKDF2OpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmPBKDF2OpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmPBKDF2OpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmPBKDF2OpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmPBKDF2.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmPbkdf2Params.h"
 #include "CryptoKeyRaw.h"
 #include "OpenSSLUtilities.h"
@@ -51,3 +53,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRegistryOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRegistryOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRegistryOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRegistryOpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "CryptoAlgorithmRegistry.h"
 
+-#if ENABLE(WEB_CRYPTO)
 #include "CryptoAlgorithmAESCBC.h"
 #include "CryptoAlgorithmAESCFB.h"
 #include "CryptoAlgorithmAESCTR.h"
@@ -72,3 +73,5 @@ void CryptoAlgorithmRegistry::platformRe
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSAES_PKCS1_v1_5OpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSAES_PKCS1_v1_5OpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSAES_PKCS1_v1_5OpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSAES_PKCS1_v1_5OpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSAES_PKCS1_v1_5.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyRSA.h"
 #include "OpenSSLUtilities.h"
 
@@ -80,3 +82,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_OAEPOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_OAEPOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_OAEPOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_OAEPOpenSSL.cpp	2024-03-26 13:31:44.430849285 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSA_OAEP.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRsaOaepParams.h"
 #include "CryptoKeyRSA.h"
 #include "OpenSSLUtilities.h"
@@ -131,3 +133,5 @@ ExceptionOr<Vector<uint8_t>> CryptoAlgor
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_PSSOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_PSSOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_PSSOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSA_PSSOpenSSL.cpp	2024-03-26 13:31:44.434182648 -0500
@@ -26,7 +26,7 @@
 #include "config.h"
 #include "CryptoAlgorithmRSA_PSS.h"
 
-#if HAVE(RSA_PSS)
+#if ENABLE(WEB_CRYPTO) && HAVE(RSA_PSS)
 
 #include "CryptoAlgorithmRsaPssParams.h"
 #include "CryptoKeyRSA.h"
@@ -119,4 +119,4 @@ ExceptionOr<bool> CryptoAlgorithmRSA_PSS
 
 } // namespace WebCore
 
-#endif // HAVE(RSA_PSS)
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSASSA_PKCS1_v1_5OpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSASSA_PKCS1_v1_5OpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoAlgorithmRSASSA_PKCS1_v1_5OpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoAlgorithmRSASSA_PKCS1_v1_5OpenSSL.cpp	2024-03-26 13:31:44.434182648 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoAlgorithmRSASSA_PKCS1_v1_5.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoKeyRSA.h"
 #include "OpenSSLUtilities.h"
 
@@ -95,3 +97,5 @@ ExceptionOr<bool> CryptoAlgorithmRSASSA_
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoKeyECOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoKeyECOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoKeyECOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoKeyECOpenSSL.cpp	2024-03-26 13:31:44.434182648 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyEC.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "JsonWebKey.h"
 #include "OpenSSLUtilities.h"
 #include <wtf/text/Base64.h>
@@ -458,3 +460,5 @@ Vector<uint8_t> CryptoKeyEC::platformExp
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoKeyRSAOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoKeyRSAOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/CryptoKeyRSAOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/CryptoKeyRSAOpenSSL.cpp	2024-03-26 13:31:44.434182648 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "CryptoKeyRSA.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmRegistry.h"
 #include "CryptoKeyPair.h"
 #include "CryptoKeyRSAComponents.h"
@@ -402,3 +404,5 @@ std::unique_ptr<CryptoKeyRSAComponents>
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/OpenSSLUtilities.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/OpenSSLUtilities.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/OpenSSLUtilities.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/OpenSSLUtilities.cpp	2024-03-26 13:31:44.434182648 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "OpenSSLUtilities.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "OpenSSLCryptoUniquePtr.h"
 
 namespace WebCore {
@@ -131,3 +133,6 @@ AESKey::~AESKey()
 }
 
 } // namespace WebCore
+
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/OpenSSLUtilities.h webkitgtk-2.44.0/Source/WebCore/crypto/openssl/OpenSSLUtilities.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/OpenSSLUtilities.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/OpenSSLUtilities.h	2024-03-26 13:31:44.434182648 -0500
@@ -33,6 +33,8 @@
 #include <wtf/Noncopyable.h>
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 const EVP_MD* digestAlgorithm(CryptoAlgorithmIdentifier hashFunction);
@@ -59,3 +61,5 @@ private:
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/SerializedCryptoKeyWrapOpenSSL.cpp webkitgtk-2.44.0/Source/WebCore/crypto/openssl/SerializedCryptoKeyWrapOpenSSL.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/openssl/SerializedCryptoKeyWrapOpenSSL.cpp	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/openssl/SerializedCryptoKeyWrapOpenSSL.cpp	2024-03-26 13:31:44.437516010 -0500
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "SerializedCryptoKeyWrap.h"
 
+-#if ENABLE(WEB_CRYPTO)
 #include "CryptoAlgorithmAESCTR.h"
 #include "NotImplemented.h"
 
@@ -61,3 +62,5 @@ bool unwrapSerializedCryptoKey(const Vec
 }
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesCbcCfbParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesCbcCfbParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesCbcCfbParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesCbcCfbParams.idl	2024-03-26 13:31:44.437516010 -0500
@@ -27,6 +27,7 @@
 // https://www.w3.org/TR/WebCryptoAPI/#dfn-AesCbcParams, and
 // https://www.w3.org/TR/2014/CR-WebCryptoAPI-20141211/#dfn-AesCfbParams
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmAesCbcCfbParams
 ] dictionary AesCbcCfbParams : CryptoAlgorithmParameters {
     // The initialization vector. MUST be 16 bytes.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesCtrParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesCtrParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesCtrParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesCtrParams.idl	2024-03-26 13:31:44.437516010 -0500
@@ -23,6 +23,7 @@
 */
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmAesCtrParams
 ] dictionary AesCtrParams : CryptoAlgorithmParameters {
     // The initial value of the counter block. counter MUST be 16 bytes
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesGcmParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesGcmParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesGcmParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesGcmParams.idl	2024-03-26 13:31:44.437516010 -0500
@@ -23,6 +23,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmAesGcmParams
 ] dictionary AesGcmParams : CryptoAlgorithmParameters {
     // The initialization vector to use. May be up to 2^64-1 bytes long.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesKeyParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesKeyParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/AesKeyParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/AesKeyParams.idl	2024-03-26 13:31:44.437516010 -0500
@@ -27,6 +27,7 @@
 // https://www.w3.org/TR/WebCryptoAPI/#aes-derivedkey-params, and
 // https://www.w3.org/TR/WebCryptoAPI/#aes-keygen-params
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmAesKeyParams
 ] dictionary AesKeyParams : CryptoAlgorithmParameters {
     // The length, in bits, of the key.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCbcCfbParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCbcCfbParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCbcCfbParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCbcCfbParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -29,6 +29,8 @@
 #include "CryptoAlgorithmParameters.h"
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesCbcCfbParams final : public CryptoAlgorithmParameters {
@@ -62,3 +64,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(AesCbcCfbParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCtrParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCtrParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCtrParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesCtrParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -29,6 +29,8 @@
 #include "CryptoAlgorithmParameters.h"
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesCtrParams final : public CryptoAlgorithmParameters {
@@ -64,3 +66,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(AesCtrParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesGcmParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesGcmParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesGcmParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesGcmParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -29,6 +29,8 @@
 #include "CryptoAlgorithmParameters.h"
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesGcmParams final : public CryptoAlgorithmParameters {
@@ -82,3 +84,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(AesGcmParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesKeyParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesKeyParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmAesKeyParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmAesKeyParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithmParameters.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmAesKeyParams final : public CryptoAlgorithmParameters {
@@ -39,3 +41,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(AesKeyParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdhKeyDeriveParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdhKeyDeriveParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdhKeyDeriveParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdhKeyDeriveParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithmParameters.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoKey;
@@ -41,3 +43,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(EcdhKeyDeriveParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdsaParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdsaParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdsaParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmEcdsaParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -30,6 +30,8 @@
 #include <JavaScriptCore/Strong.h>
 #include <variant>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmEcdsaParams final : public CryptoAlgorithmParameters {
@@ -53,3 +55,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(EcdsaParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmEcKeyParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmEcKeyParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmEcKeyParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmEcKeyParams.h	2024-03-26 13:31:44.437516010 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithmParameters.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmEcKeyParams final : public CryptoAlgorithmParameters {
@@ -48,3 +50,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(EcKeyParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmHkdfParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmHkdfParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmHkdfParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmHkdfParams.h	2024-03-26 13:31:44.440849373 -0500
@@ -31,6 +31,8 @@
 #include <JavaScriptCore/Strong.h>
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmHkdfParams final : public CryptoAlgorithmParameters {
@@ -80,3 +82,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(HkdfParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmHmacKeyParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmHmacKeyParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmHmacKeyParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmHmacKeyParams.h	2024-03-26 13:31:44.440849373 -0500
@@ -25,6 +25,8 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "CryptoAlgorithmParameters.h"
 #include <JavaScriptCore/JSObject.h>
 #include <JavaScriptCore/Strong.h>
@@ -55,3 +57,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(HmacKeyParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmPbkdf2Params.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmPbkdf2Params.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmPbkdf2Params.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmPbkdf2Params.h	2024-03-26 13:31:44.440849373 -0500
@@ -31,6 +31,8 @@
 #include <JavaScriptCore/Strong.h>
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmPbkdf2Params final : public CryptoAlgorithmParameters {
@@ -70,3 +72,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(Pbkdf2Params)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedImportParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedImportParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedImportParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedImportParams.h	2024-03-26 13:31:44.440849373 -0500
@@ -30,6 +30,8 @@
 #include <JavaScriptCore/Strong.h>
 #include <variant>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmRsaHashedImportParams final : public CryptoAlgorithmParameters {
@@ -53,3 +55,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(RsaHashedImportParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedKeyGenParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedKeyGenParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedKeyGenParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaHashedKeyGenParams.h	2024-03-26 13:31:44.440849373 -0500
@@ -30,6 +30,8 @@
 #include <JavaScriptCore/Strong.h>
 #include <variant>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmRsaHashedKeyGenParams final : public CryptoAlgorithmRsaKeyGenParams {
@@ -44,3 +46,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(RsaHashedKeyGenParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h	2024-03-26 13:31:44.440849373 -0500
@@ -29,6 +29,8 @@
 #include <JavaScriptCore/Uint8Array.h>
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmRsaKeyGenParams : public CryptoAlgorithmParameters {
@@ -53,3 +55,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(RsaKeyGenParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaOaepParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaOaepParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaOaepParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaOaepParams.h	2024-03-26 13:31:44.444182736 -0500
@@ -29,6 +29,8 @@
 #include "CryptoAlgorithmParameters.h"
 #include <wtf/Vector.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmRsaOaepParams final : public CryptoAlgorithmParameters {
@@ -68,3 +70,5 @@ private:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(RsaOaepParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaPssParams.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaPssParams.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaPssParams.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmRsaPssParams.h	2024-03-26 13:31:44.444182736 -0500
@@ -27,6 +27,8 @@
 
 #include "CryptoAlgorithmParameters.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmRsaPssParams final : public CryptoAlgorithmParameters {
@@ -48,3 +50,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(RsaPssParams)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmX25519Params.h webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmX25519Params.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/CryptoAlgorithmX25519Params.h	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/CryptoAlgorithmX25519Params.h	2024-03-26 13:31:44.444182736 -0500
@@ -25,6 +25,8 @@
 #include <JavaScriptCore/Strong.h>
 #include <variant>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 class CryptoAlgorithmX25519Params final : public CryptoAlgorithmParameters {
@@ -36,3 +38,5 @@ public:
 } // namespace WebCore
 
 SPECIALIZE_TYPE_TRAITS_CRYPTO_ALGORITHM_PARAMETERS(X25519Params)
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/EcdhKeyDeriveParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/EcdhKeyDeriveParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/EcdhKeyDeriveParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/EcdhKeyDeriveParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmEcdhKeyDeriveParams,
 ] dictionary EcdhKeyDeriveParams : CryptoAlgorithmParameters {
     // We should rename this to public once https://bugs.webkit.org/show_bug.cgi?id=169333 is fixed.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/EcdsaParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/EcdsaParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/EcdsaParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/EcdsaParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -26,6 +26,7 @@
 typedef (object or DOMString) HashAlgorithmIdentifier;
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmEcdsaParams
 ] dictionary EcdsaParams : CryptoAlgorithmParameters {
     // The hash algorithm to use
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/EcKeyParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/EcKeyParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/EcKeyParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/EcKeyParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -27,6 +27,7 @@
 // https://www.w3.org/TR/WebCryptoAPI/#EcKeyImportParams-dictionary, and
 // https://www.w3.org/TR/WebCryptoAPI/#EcKeyGenParams-dictionary
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmEcKeyParams
 ] dictionary EcKeyParams : CryptoAlgorithmParameters {
     required DOMString namedCurve;
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/HkdfParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/HkdfParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/HkdfParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/HkdfParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -26,6 +26,7 @@
 typedef (object or DOMString) HashAlgorithmIdentifier;
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmHkdfParams,
 ] dictionary HkdfParams : CryptoAlgorithmParameters {
     // The algorithm to use with HMAC (e.g.: SHA-256)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/HmacKeyParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/HmacKeyParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/HmacKeyParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/HmacKeyParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -29,6 +29,7 @@ typedef (object or DOMString) HashAlgori
 // https://www.w3.org/TR/WebCryptoAPI/#hmac-importparams, and
 // https://www.w3.org/TR/WebCryptoAPI/#hmac-keygen-params
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmHmacKeyParams
 ] dictionary HmacKeyParams : CryptoAlgorithmParameters {
     // The inner hash function to use.
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/Pbkdf2Params.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/Pbkdf2Params.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/Pbkdf2Params.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/Pbkdf2Params.idl	2024-03-26 13:31:44.444182736 -0500
@@ -26,6 +26,7 @@
 typedef (object or DOMString) HashAlgorithmIdentifier;
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmPbkdf2Params,
 ] dictionary Pbkdf2Params : CryptoAlgorithmParameters {
     required BufferSource salt;
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaHashedImportParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaHashedImportParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaHashedImportParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaHashedImportParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -26,6 +26,7 @@
 typedef (object or DOMString) HashAlgorithmIdentifier;
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmRsaHashedImportParams
 ] dictionary RsaHashedImportParams : CryptoAlgorithmParameters {
     // The hash algorithm to use
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaHashedKeyGenParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaHashedKeyGenParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaHashedKeyGenParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaHashedKeyGenParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -26,6 +26,7 @@
 typedef (object or DOMString) HashAlgorithmIdentifier;
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmRsaHashedKeyGenParams
 ] dictionary RsaHashedKeyGenParams : RsaKeyGenParams {
     // The hash algorithm to use
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaKeyGenParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaKeyGenParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaKeyGenParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaKeyGenParams.idl	2024-03-26 13:31:44.444182736 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmRsaKeyGenParams
 ] dictionary RsaKeyGenParams : CryptoAlgorithmParameters {
     // The length, in bits, of the RSA modulus
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaOaepParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaOaepParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaOaepParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaOaepParams.idl	2024-03-26 13:31:44.447516099 -0500
@@ -24,6 +24,7 @@
 */
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmRsaOaepParams
 ] dictionary RsaOaepParams : CryptoAlgorithmParameters {
     // The optional label/application data to associate with the message
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaPssParams.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaPssParams.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/RsaPssParams.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/RsaPssParams.idl	2024-03-26 13:31:44.450849462 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmRsaPssParams
 ] dictionary RsaPssParams : CryptoAlgorithmParameters {
     // The desired length of the random salt
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/X25519Params.idl webkitgtk-2.44.0/Source/WebCore/crypto/parameters/X25519Params.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/parameters/X25519Params.idl	2024-03-16 01:45:50.068672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/parameters/X25519Params.idl	2024-03-26 13:31:44.450849462 -0500
@@ -1,4 +1,5 @@
 [
+    Conditional=WEB_CRYPTO,
     ImplementedAs=CryptoAlgorithmX25519Params,
 ] dictionary X25519Params : CryptoAlgorithmParameters {
     required CryptoKey publicKey;
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/RsaOtherPrimesInfo.h webkitgtk-2.44.0/Source/WebCore/crypto/RsaOtherPrimesInfo.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/RsaOtherPrimesInfo.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/RsaOtherPrimesInfo.h	2024-03-26 13:31:44.450849462 -0500
@@ -27,6 +27,8 @@
 
 #include <wtf/text/WTFString.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 struct RsaOtherPrimesInfo {
@@ -36,3 +38,5 @@ struct RsaOtherPrimesInfo {
 };
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/RsaOtherPrimesInfo.idl webkitgtk-2.44.0/Source/WebCore/crypto/RsaOtherPrimesInfo.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/RsaOtherPrimesInfo.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/RsaOtherPrimesInfo.idl	2024-03-26 13:31:44.450849462 -0500
@@ -24,6 +24,7 @@
  */
 
 [
+    Conditional=WEB_CRYPTO,
     JSGenerateToJSObject,
 ] dictionary RsaOtherPrimesInfo {
     // The following fields are defined in Section 6.3.2.7 of JSON Web Algorithms
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/SerializedCryptoKeyWrap.h webkitgtk-2.44.0/Source/WebCore/crypto/SerializedCryptoKeyWrap.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/SerializedCryptoKeyWrap.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/SerializedCryptoKeyWrap.h	2024-03-26 13:31:44.450849462 -0500
@@ -28,6 +28,8 @@
 #include <wtf/Forward.h>
 #include <wtf/text/WTFString.h>
 
+#if ENABLE(WEB_CRYPTO)
+
 namespace WebCore {
 
 // The purpose of the following APIs is to protect serialized CryptoKey data in IndexedDB or
@@ -44,3 +46,5 @@ WEBCORE_EXPORT bool wrapSerializedCrypto
 WEBCORE_EXPORT bool unwrapSerializedCryptoKey(const Vector<uint8_t>& masterKey, const Vector<uint8_t>& wrappedKey, Vector<uint8_t>& key);
 
 } // namespace WebCore
+
+#endif // ENABLE(WEB_CRYPTO)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/SubtleCrypto.cpp webkitgtk-2.44.0/Source/WebCore/crypto/SubtleCrypto.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/SubtleCrypto.cpp	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/SubtleCrypto.cpp	2024-03-26 13:31:44.450849462 -0500
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "SubtleCrypto.h"
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ContextDestructionObserverInlines.h"
 #include "CryptoAlgorithm.h"
 #include "CryptoAlgorithmRegistry.h"
@@ -66,7 +68,7 @@ SubtleCrypto::SubtleCrypto(ScriptExecuti
 
 SubtleCrypto::~SubtleCrypto() = default;
 
-enum class Operations : uint8_t {
+enum class Operations {
     Encrypt,
     Decrypt,
     Sign,
@@ -1279,4 +1281,6 @@ void SubtleCrypto::unwrapKey(JSC::JSGlob
     unwrapAlgorithm->decrypt(*unwrapParams, unwrappingKey, WTFMove(wrappedKey), WTFMove(callback), WTFMove(exceptionCallback), *scriptExecutionContext(), m_workQueue);
 }
 
-} // namespace WebCore
+}
+
+#endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/SubtleCrypto.h webkitgtk-2.44.0/Source/WebCore/crypto/SubtleCrypto.h
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/SubtleCrypto.h	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/SubtleCrypto.h	2024-03-26 13:31:44.450849462 -0500
@@ -25,6 +25,8 @@
 
 #pragma once
 
+#if ENABLE(WEB_CRYPTO)
+
 #include "ContextDestructionObserver.h"
 #include "CryptoKeyFormat.h"
 #include <JavaScriptCore/Strong.h>
@@ -48,7 +50,7 @@ class BufferSource;
 class CryptoKey;
 class DeferredPromise;
 
-enum class CryptoAlgorithmIdentifier : uint8_t;
+enum class CryptoAlgorithmIdentifier;
 enum class CryptoKeyUsage;
 
 class SubtleCrypto : public ContextDestructionObserver, public RefCounted<SubtleCrypto>, public CanMakeWeakPtr<SubtleCrypto> {
@@ -84,4 +86,6 @@ private:
     HashMap<DeferredPromise*, Ref<DeferredPromise>> m_pendingPromises;
 };
 
-} // namespace WebCore
+}
+
+#endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/crypto/SubtleCrypto.idl webkitgtk-2.44.0/Source/WebCore/crypto/SubtleCrypto.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/crypto/SubtleCrypto.idl	2024-03-16 01:45:50.064672000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/crypto/SubtleCrypto.idl	2024-03-26 13:31:44.450849462 -0500
@@ -28,6 +28,7 @@ enum KeyFormat { "raw", "spki", "pkcs8",
 typedef (object or DOMString) AlgorithmIdentifier;
 
 [
+    Conditional=WEB_CRYPTO,
     Exposed=(Window,Worker),
     GenerateIsReachable=ImplScriptExecutionContext,
     SecureContext,
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/dom/Document.cpp webkitgtk-2.44.0/Source/WebCore/dom/Document.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/dom/Document.cpp	2024-03-16 01:47:05.620925200 -0500
+++ webkitgtk-2.44.0/Source/WebCore/dom/Document.cpp	2024-03-26 13:31:44.454182824 -0500
@@ -8791,6 +8791,8 @@ void Document::ensurePlugInsInjectedScri
     m_hasInjectedPlugInsScript = true;
 }
 
+#if ENABLE(WEB_CRYPTO)
+
 bool Document::wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey)
 {
     RefPtr page = this->page();
@@ -8803,6 +8805,8 @@ bool Document::unwrapCryptoKey(const Vec
     return page && page->chrome().client().unwrapCryptoKey(wrappedKey, key);
 }
 
+#endif // ENABLE(WEB_CRYPTO)
+
 Element* Document::activeElement()
 {
     if (Element* element = treeScope().focusedElementInScope())
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/dom/Document.h webkitgtk-2.44.0/Source/WebCore/dom/Document.h
--- webkitgtk-2.44.0.atk/Source/WebCore/dom/Document.h	2024-03-16 01:47:05.624925100 -0500
+++ webkitgtk-2.44.0/Source/WebCore/dom/Document.h	2024-03-26 13:31:44.457516187 -0500
@@ -1583,8 +1583,10 @@ public:
 
     void setVisualUpdatesAllowedByClient(bool);
 
+#if ENABLE(WEB_CRYPTO)
     bool wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey) final;
     bool unwrapCryptoKey(const Vector<uint8_t>& wrappedKey, Vector<uint8_t>& key) final;
+#endif
 
     void setHasStyleWithViewportUnits() { m_hasStyleWithViewportUnits = true; }
     bool hasStyleWithViewportUnits() const { return m_hasStyleWithViewportUnits; }
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/dom/EmptyScriptExecutionContext.h webkitgtk-2.44.0/Source/WebCore/dom/EmptyScriptExecutionContext.h
--- webkitgtk-2.44.0.atk/Source/WebCore/dom/EmptyScriptExecutionContext.h	2024-03-16 01:45:50.140671700 -0500
+++ webkitgtk-2.44.0/Source/WebCore/dom/EmptyScriptExecutionContext.h	2024-03-26 13:31:44.457516187 -0500
@@ -75,8 +75,10 @@ public:
     void postTask(Task&&) final { ASSERT_NOT_REACHED(); }
     EventTarget* errorEventTarget() final { return nullptr; };
 
+#if ENABLE(WEB_CRYPTO)
     bool wrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) final { return false; }
     bool unwrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) final { return false; }
+#endif
 
     JSC::VM& vm() final { return m_vm; }
 
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/dom/ScriptExecutionContext.h webkitgtk-2.44.0/Source/WebCore/dom/ScriptExecutionContext.h
--- webkitgtk-2.44.0.atk/Source/WebCore/dom/ScriptExecutionContext.h	2024-03-16 01:45:50.156671800 -0500
+++ webkitgtk-2.44.0/Source/WebCore/dom/ScriptExecutionContext.h	2024-03-26 13:31:44.457516187 -0500
@@ -274,11 +274,13 @@ public:
     DatabaseContext* databaseContext() { return m_databaseContext.get(); }
     void setDatabaseContext(DatabaseContext*);
 
+#if ENABLE(WEB_CRYPTO)
     // These two methods are used when CryptoKeys are serialized into IndexedDB. As a side effect, it is also
     // used for things that utilize the same structure clone algorithm, for example, message passing between
     // worker and document.
     virtual bool wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey) = 0;
     virtual bool unwrapCryptoKey(const Vector<uint8_t>& wrappedKey, Vector<uint8_t>& key) = 0;
+#endif
 
     int timerNestingLevel() const { return m_timerNestingLevel; }
     void setTimerNestingLevel(int timerNestingLevel) { m_timerNestingLevel = timerNestingLevel; }
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/page/ChromeClient.h webkitgtk-2.44.0/Source/WebCore/page/ChromeClient.h
--- webkitgtk-2.44.0.atk/Source/WebCore/page/ChromeClient.h	2024-03-16 01:45:50.308671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/page/ChromeClient.h	2024-03-26 13:31:44.460849550 -0500
@@ -548,8 +548,10 @@ public:
     virtual void isPlayingMediaDidChange(MediaProducerMediaStateFlags) { }
     virtual void handleAutoplayEvent(AutoplayEvent, OptionSet<AutoplayEventFlags>) { }
 
+#if ENABLE(WEB_CRYPTO)
     virtual bool wrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) const { return false; }
     virtual bool unwrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) const { return false; }
+#endif
 
 #if ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC)
     virtual void handleTelephoneNumberClick(const String&, const IntPoint&, const IntRect&) { }
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/page/Crypto.cpp webkitgtk-2.44.0/Source/WebCore/page/Crypto.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/page/Crypto.cpp	2024-03-16 01:45:50.308671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/page/Crypto.cpp	2024-03-26 13:31:44.460849550 -0500
@@ -46,7 +46,9 @@ namespace WebCore {
 
 Crypto::Crypto(ScriptExecutionContext* context)
     : ContextDestructionObserver(context)
+#if ENABLE(WEB_CRYPTO)
     , m_subtle(SubtleCrypto::create(context))
+#endif
 {
 }
 
@@ -72,9 +74,13 @@ String Crypto::randomUUID() const
     return createVersion4UUIDString();
 }
 
+#if ENABLE(WEB_CRYPTO)
+
 SubtleCrypto& Crypto::subtle()
 {
     return m_subtle;
 }
 
-} // namespace WebCore
+#endif
+
+}
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/page/Crypto.h webkitgtk-2.44.0/Source/WebCore/page/Crypto.h
--- webkitgtk-2.44.0.atk/Source/WebCore/page/Crypto.h	2024-03-16 01:45:50.308671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/page/Crypto.h	2024-03-26 13:31:44.460849550 -0500
@@ -48,12 +48,16 @@ public:
     ExceptionOr<void> getRandomValues(JSC::ArrayBufferView&);
     String randomUUID() const;
 
+#if ENABLE(WEB_CRYPTO)
     SubtleCrypto& subtle();
+#endif
 
 private:
     Crypto(ScriptExecutionContext*);
 
+#if ENABLE(WEB_CRYPTO)
     Ref<SubtleCrypto> m_subtle;
+#endif
 };
 
 }
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/page/Crypto.idl webkitgtk-2.44.0/Source/WebCore/page/Crypto.idl
--- webkitgtk-2.44.0.atk/Source/WebCore/page/Crypto.idl	2024-03-16 01:45:50.308671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/page/Crypto.idl	2024-03-26 13:31:44.460849550 -0500
@@ -31,7 +31,7 @@
     Exposed=(Window,Worker),
     GenerateIsReachable=ImplScriptExecutionContext
 ] interface Crypto {
-    [SecureContext] readonly attribute SubtleCrypto subtle;
+    [Conditional=WEB_CRYPTO, SecureContext] readonly attribute SubtleCrypto subtle;
     ArrayBufferView getRandomValues([ReturnValue] ArrayBufferView array);
     [SecureContext] DOMString randomUUID();
 };
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/PAL/pal/PlatformGTK.cmake webkitgtk-2.44.0/Source/WebCore/PAL/pal/PlatformGTK.cmake
--- webkitgtk-2.44.0.atk/Source/WebCore/PAL/pal/PlatformGTK.cmake	2024-03-16 01:45:49.916672200 -0500
+++ webkitgtk-2.44.0/Source/WebCore/PAL/pal/PlatformGTK.cmake	2024-03-26 13:31:44.460849550 -0500
@@ -3,16 +3,12 @@ list(APPEND PAL_PUBLIC_HEADERS
     crypto/gcrypt/Initialization.h
     crypto/gcrypt/Utilities.h
 
-    crypto/tasn1/Utilities.h
-
     system/glib/SleepDisablerGLib.h
 )
 
 list(APPEND PAL_SOURCES
     crypto/gcrypt/CryptoDigestGCrypt.cpp
 
-    crypto/tasn1/Utilities.cpp
-
     system/ClockGeneric.cpp
 
     system/glib/SleepDisablerGLib.cpp
@@ -24,6 +20,16 @@ list(APPEND PAL_SOURCES
     unix/LoggingUnix.cpp
 )
 
+if (ENABLE_WEB_CRYPTO)
+    list(APPEND PAL_PUBLIC_HEADERS
+        crypto/tasn1/Utilities.h
+    )
+
+    list(APPEND PAL_SOURCES
+        crypto/tasn1/Utilities.cpp
+    )
+endif ()
+
 list(APPEND PAL_LIBRARIES
     GTK::GTK
 )
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/platform/GCrypt.cmake webkitgtk-2.44.0/Source/WebCore/platform/GCrypt.cmake
--- webkitgtk-2.44.0.atk/Source/WebCore/platform/GCrypt.cmake	2024-03-16 01:45:50.356671600 -0500
+++ webkitgtk-2.44.0/Source/WebCore/platform/GCrypt.cmake	2024-03-26 13:31:44.460849550 -0500
@@ -1,6 +1,8 @@
-list(APPEND WebCore_UNIFIED_SOURCE_LIST_FILES
-    "platform/SourcesGCrypt.txt"
-)
+if (ENABLE_WEB_CRYPTO)
+    list(APPEND WebCore_UNIFIED_SOURCE_LIST_FILES
+        "platform/SourcesGCrypt.txt"
+    )
+endif ()
 
 list(APPEND WebCore_LIBRARIES
     LibGcrypt::LibGcrypt
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/platform/LocalizedStrings.cpp webkitgtk-2.44.0/Source/WebCore/platform/LocalizedStrings.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/platform/LocalizedStrings.cpp	2024-03-16 01:45:50.360671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/platform/LocalizedStrings.cpp	2024-03-26 13:31:44.460849550 -0500
@@ -1447,11 +1447,17 @@ String useBlockedPlugInContextMenuTitle(
     return WEB_UI_STRING("Show in blocked plug-in", "Title of the context menu item to show when PDFPlugin was used instead of a blocked plugin");
 }
 
-#if PLATFORM(COCOA)
+#if ENABLE(WEB_CRYPTO) && PLATFORM(COCOA)
 
 String webCryptoMasterKeyKeychainLabel(const String& localizedApplicationName)
 {
+#if PLATFORM(COCOA)
     return WEB_UI_FORMAT_CFSTRING("%@ WebCrypto Master Key", "Name of application's single WebCrypto master key in Keychain", localizedApplicationName.createCFString().get());
+#elif USE(GLIB)
+    return WEB_UI_FORMAT_STRING("%s WebCrypto Master Key", "Name of application's single WebCrypto master key in Keychain", localizedApplicationName.utf8().data());
+#else
+    return makeStringByReplacingAll(WEB_UI_STRING("<application> WebCrypto Master Key", "Name of application's single WebCrypto master key in Keychain"), "<application>"_s, localizedApplicationName);
+#endif
 }
 
 String webCryptoMasterKeyKeychainComment()
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/platform/LocalizedStrings.h webkitgtk-2.44.0/Source/WebCore/platform/LocalizedStrings.h
--- webkitgtk-2.44.0.atk/Source/WebCore/platform/LocalizedStrings.h	2024-03-16 01:45:50.360671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/platform/LocalizedStrings.h	2024-03-26 13:31:44.464182913 -0500
@@ -369,7 +369,7 @@ namespace WebCore {
 
     WEBCORE_EXPORT String useBlockedPlugInContextMenuTitle();
 
-#if PLATFORM(COCOA)
+#if ENABLE(WEB_CRYPTO) && PLATFORM(COCOA)
     String webCryptoMasterKeyKeychainLabel(const String& localizedApplicationName);
     String webCryptoMasterKeyKeychainComment();
 #endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/platform/OpenSSL.cmake webkitgtk-2.44.0/Source/WebCore/platform/OpenSSL.cmake
--- webkitgtk-2.44.0.atk/Source/WebCore/platform/OpenSSL.cmake	2024-03-16 01:45:50.360671500 -0500
+++ webkitgtk-2.44.0/Source/WebCore/platform/OpenSSL.cmake	2024-03-26 13:31:44.464182913 -0500
@@ -1,3 +1,4 @@
+if (ENABLE_WEB_CRYPTO)
 list(APPEND WebCore_SOURCES
     crypto/openssl/CryptoAlgorithmAESCBCOpenSSL.cpp
     crypto/openssl/CryptoAlgorithmAESCFBOpenSSL.cpp
@@ -19,3 +20,4 @@ list(APPEND WebCore_SOURCES
     crypto/openssl/OpenSSLUtilities.cpp
     crypto/openssl/SerializedCryptoKeyWrapOpenSSL.cpp
 )
+endif
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/workers/WorkerGlobalScope.cpp webkitgtk-2.44.0/Source/WebCore/workers/WorkerGlobalScope.cpp
--- webkitgtk-2.44.0.atk/Source/WebCore/workers/WorkerGlobalScope.cpp	2024-03-16 01:45:50.700671000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/workers/WorkerGlobalScope.cpp	2024-03-26 13:31:44.467516276 -0500
@@ -471,6 +471,8 @@ void WorkerGlobalScope::addMessage(Messa
     InspectorInstrumentation::addMessageToConsole(*this, WTFMove(message));
 }
 
+#if ENABLE(WEB_CRYPTO)
+
 bool WorkerGlobalScope::wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey)
 {
     Ref protectedThis { *this };
@@ -505,6 +507,8 @@ bool WorkerGlobalScope::unwrapCryptoKey(
     return success;
 }
 
+#endif // ENABLE(WEB_CRYPTO)
+
 Crypto& WorkerGlobalScope::crypto()
 {
     if (!m_crypto)
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/workers/WorkerGlobalScope.h webkitgtk-2.44.0/Source/WebCore/workers/WorkerGlobalScope.h
--- webkitgtk-2.44.0.atk/Source/WebCore/workers/WorkerGlobalScope.h	2024-03-16 01:45:50.700671000 -0500
+++ webkitgtk-2.44.0/Source/WebCore/workers/WorkerGlobalScope.h	2024-03-26 13:31:44.467516276 -0500
@@ -203,8 +203,10 @@ private:
 
     bool shouldBypassMainWorldContentSecurityPolicy() const final { return m_shouldBypassMainWorldContentSecurityPolicy; }
 
+#if ENABLE(WEB_CRYPTO)
     bool wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey) final;
     bool unwrapCryptoKey(const Vector<uint8_t>& wrappedKey, Vector<uint8_t>& key) final;
+#endif
 
     void stopIndexedDatabase();
 
diff -urp webkitgtk-2.44.0.atk/Source/WebCore/worklets/WorkletGlobalScope.h webkitgtk-2.44.0/Source/WebCore/worklets/WorkletGlobalScope.h
--- webkitgtk-2.44.0.atk/Source/WebCore/worklets/WorkletGlobalScope.h	2024-03-16 01:45:50.708670900 -0500
+++ webkitgtk-2.44.0/Source/WebCore/worklets/WorkletGlobalScope.h	2024-03-26 13:31:44.467516276 -0500
@@ -106,8 +106,10 @@ private:
 
     EventTarget* errorEventTarget() final { return this; }
 
+#if ENABLE(WEB_CRYPTO)
     bool wrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) final { RELEASE_ASSERT_NOT_REACHED(); return false; }
     bool unwrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) final { RELEASE_ASSERT_NOT_REACHED(); return false; }
+#endif
     URL completeURL(const String&, ForceUTF8 = ForceUTF8::No) const final;
     String userAgent(const URL&) const final;
     const Settings::Values& settingsValues() const final { return m_settingsValues; }
diff -urp webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/API/C/WKPage.cpp webkitgtk-2.44.0/Source/WebKit/UIProcess/API/C/WKPage.cpp
--- webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/API/C/WKPage.cpp	2024-03-16 01:45:50.964670700 -0500
+++ webkitgtk-2.44.0/Source/WebKit/UIProcess/API/C/WKPage.cpp	2024-03-26 13:31:44.467516276 -0500
@@ -2349,10 +2349,14 @@ void WKPageSetPageNavigationClient(WKPag
             if (m_client.copyWebCryptoMasterKey)
                 return adoptRef(toImpl(m_client.copyWebCryptoMasterKey(toAPI(&page), m_client.base.clientInfo)));
 
+#if ENABLE(WEB_CRYPTO)
             auto masterKey = defaultWebCryptoMasterKey();
             if (!masterKey)
                 return nullptr;
             return API::Data::create(WTFMove(*masterKey));
+#else
+            return API::Data::create(nullptr, 0);
+#endif
         }
 
         void navigationActionDidBecomeDownload(WebKit::WebPageProxy& page, API::NavigationAction& action, WebKit::DownloadProxy& download) override
diff -urp webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/WebPageProxy.cpp webkitgtk-2.44.0/Source/WebKit/UIProcess/WebPageProxy.cpp
--- webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/WebPageProxy.cpp	2024-03-22 15:52:25.456376240 -0500
+++ webkitgtk-2.44.0/Source/WebKit/UIProcess/WebPageProxy.cpp	2024-03-26 13:31:44.474183001 -0500
@@ -11089,6 +11089,7 @@ void WebPageProxy::setOverlayScrollbarSt
         send(Messages::WebPage::SetScrollbarOverlayStyle(scrollbarStyleForMessage), internals().webPageID);
 }
 
+#if ENABLE(WEB_CRYPTO)
 void WebPageProxy::wrapCryptoKey(const Vector<uint8_t>& key, CompletionHandler<void(bool, Vector<uint8_t>&&)>&& completionHandler)
 {
     Ref protectedPageClient { pageClient() };
@@ -11116,6 +11117,7 @@ void WebPageProxy::unwrapCryptoKey(const
     bool succeeded = unwrapSerializedCryptoKey(masterKey, wrappedKey, key);
     completionHandler(succeeded, WTFMove(key));
 }
+#endif
 
 void WebPageProxy::addMIMETypeWithCustomContentProvider(const String& mimeType)
 {
diff -urp webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/WebPageProxy.h webkitgtk-2.44.0/Source/WebKit/UIProcess/WebPageProxy.h
--- webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/WebPageProxy.h	2024-03-22 15:52:25.459709585 -0500
+++ webkitgtk-2.44.0/Source/WebKit/UIProcess/WebPageProxy.h	2024-03-26 13:31:44.474183001 -0500
@@ -1724,8 +1724,10 @@ public:
     RefPtr<ViewSnapshot> takeViewSnapshot(std::optional<WebCore::IntRect>&&);
 #endif
 
+#if ENABLE(WEB_CRYPTO)
     void wrapCryptoKey(const Vector<uint8_t>&, CompletionHandler<void(bool, Vector<uint8_t>&&)>&&);
     void unwrapCryptoKey(const Vector<uint8_t>&, CompletionHandler<void(bool, Vector<uint8_t>&&)>&&);
+#endif
 
     void takeSnapshot(WebCore::IntRect, WebCore::IntSize bitmapSize, SnapshotOptions, CompletionHandler<void(std::optional<WebCore::ShareableBitmapHandle>&&)>&&);
 
diff -urp webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/WebPageProxy.messages.in webkitgtk-2.44.0/Source/WebKit/UIProcess/WebPageProxy.messages.in
--- webkitgtk-2.44.0.atk/Source/WebKit/UIProcess/WebPageProxy.messages.in	2024-03-22 15:52:25.459709585 -0500
+++ webkitgtk-2.44.0/Source/WebKit/UIProcess/WebPageProxy.messages.in	2024-03-26 13:31:44.477516364 -0500
@@ -413,8 +413,10 @@ messages -> WebPageProxy {
 
     DidUpdateActivityState() CanDispatchOutOfOrder
 
+#if ENABLE(WEB_CRYPTO)
     WrapCryptoKey(Vector<uint8_t> key) -> (bool succeeded, Vector<uint8_t> wrappedKey) Synchronous
     UnwrapCryptoKey(Vector<uint8_t> wrappedKey) -> (bool succeeded, Vector<uint8_t> key) Synchronous
+#endif
 
 
 #if ENABLE(TELEPHONE_NUMBER_DETECTION)
diff -urp webkitgtk-2.44.0.atk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp webkitgtk-2.44.0/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
--- webkitgtk-2.44.0.atk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp	2024-03-16 01:45:51.164670200 -0500
+++ webkitgtk-2.44.0/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp	2024-03-26 13:31:44.477516364 -0500
@@ -1474,6 +1474,8 @@ void WebChromeClient::handleAutoplayEven
     protectedPage()->send(Messages::WebPageProxy::HandleAutoplayEvent(event, flags));
 }
 
+#if ENABLE(WEB_CRYPTO)
+
 bool WebChromeClient::wrapCryptoKey(const Vector<uint8_t>& key, Vector<uint8_t>& wrappedKey) const
 {
     auto sendResult = WebProcess::singleton().parentProcessConnection()->sendSync(Messages::WebPageProxy::WrapCryptoKey(key), page().identifier());
@@ -1496,6 +1498,8 @@ bool WebChromeClient::unwrapCryptoKey(co
     return succeeded;
 }
 
+#endif
+
 #if ENABLE(APP_HIGHLIGHTS)
 void WebChromeClient::storeAppHighlight(WebCore::AppHighlight&& highlight) const
 {
diff -urp webkitgtk-2.44.0.atk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h webkitgtk-2.44.0/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
--- webkitgtk-2.44.0.atk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h	2024-03-16 01:45:51.164670200 -0500
+++ webkitgtk-2.44.0/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h	2024-03-26 13:31:44.477516364 -0500
@@ -393,8 +393,10 @@ private:
 
     void setTextIndicator(const WebCore::TextIndicatorData&) const final;
 
+#if ENABLE(WEB_CRYPTO)
     bool wrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) const final;
     bool unwrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) const final;
+#endif
 
 #if ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC)
     void handleTelephoneNumberClick(const String& number, const WebCore::IntPoint&, const WebCore::IntRect&) final;
diff -urp webkitgtk-2.44.0.atk/Source/WTF/wtf/PlatformEnableCocoa.h webkitgtk-2.44.0/Source/WTF/wtf/PlatformEnableCocoa.h
--- webkitgtk-2.44.0.atk/Source/WTF/wtf/PlatformEnableCocoa.h	2024-03-16 01:45:49.644672600 -0500
+++ webkitgtk-2.44.0/Source/WTF/wtf/PlatformEnableCocoa.h	2024-03-26 13:31:44.480849727 -0500
@@ -908,6 +908,10 @@
 #define ENABLE_WEB_CODECS 1
 #endif
 
+#if !defined(ENABLE_WEB_CRYPTO)
+#define ENABLE_WEB_CRYPTO 1
+#endif
+
 #if !defined(ENABLE_WEB_PLAYBACK_CONTROLS_MANAGER) && PLATFORM(MAC)
 #define ENABLE_WEB_PLAYBACK_CONTROLS_MANAGER 1
 #endif
