diff --git a/jsaddle-wkwebview.cabal b/jsaddle-wkwebview.cabal
--- a/jsaddle-wkwebview.cabal
+++ b/jsaddle-wkwebview.cabal
@@ -1,6 +1,6 @@
+cabal-version: 3.0
 name: jsaddle-wkwebview
-version: 0.9.8.3
-cabal-version: >=1.10
+version: 0.9.9.0
 build-type: Simple
 license: MIT
 license-file: LICENSE
@@ -32,7 +32,7 @@
     ghc-options: -ferror-spans -Wall
     if os(linux)
         buildable: False
-    if impl(ghcjs)
+    if impl(ghcjs) || arch(javascript)
         hs-source-dirs: src-ghcjs
     else
         frameworks: Foundation, WebKit
@@ -40,26 +40,26 @@
             aeson >=0.8.0.2 && <2.3,
             bytestring >=0.10.6.0 && <0.13,
             directory,
-            jsaddle >= 0.9.4.0 && <0.10,
+            jsaddle >= 0.9.9.0 && <0.10,
             text,
             data-default,
             containers
         exposed-modules:
             Language.Javascript.JSaddle.WKWebView.Internal
         hs-source-dirs: src-ghc
-        c-sources:
+        cxx-sources:
             cbits/WKWebView.m
         cc-options: -Wno-everything
         if os(ios)
             frameworks: UIKit, UserNotifications
             if flag(include-app-delegate)
-              c-sources:
+              cxx-sources:
                   cbits-uikit/AppDelegate.m
                   cbits-uikit/ViewController.m
               cpp-options: -DUSE_UIKIT
         else
             frameworks: Cocoa
             if flag(include-app-delegate)
-              c-sources:
+              cxx-sources:
                   cbits-cocoa/AppDelegate.m
               cpp-options: -DUSE_COCOA
