diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # Revision history for xml-verify
 
+## 0.1.0.3 -- 2022-02-28
+
+* Added cabal flags to change the crypto backend for xmlsec1
+
 ## 0.1.0.2 -- 2022-02-24
 
 * Changed from configure build type to simple
diff --git a/xml-verify.cabal b/xml-verify.cabal
--- a/xml-verify.cabal
+++ b/xml-verify.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.4
 name:               xml-verify
-version:            0.1.0.2
+version:            0.1.0.3
 license:            BSD-3-Clause
 license-file:       LICENSE
 maintainer:         james.hobson@jotron.com
@@ -21,6 +21,26 @@
     type:     git
     location: http://github.com/jotron-as/xml-verify.git
 
+Flag OpenSSL
+  Description: Use the openSSL crypto backend for XmlSec1
+  Default: False
+  Manual: True
+
+Flag NSS
+  Description: Use the NSS crypto backend for XmlSec1
+  Default: False
+  Manual: True
+
+Flag GCrypt
+  Description: Use the GCrypt crypto backend for XmlSec1
+  Default: False
+  Manual: True
+
+Flag GNUTLS
+  Description: Use the GNUTLS crypto backend for XmlSec1
+  Default: False
+  Manual: True
+
 library
     exposed-modules:
         Crypto.PubKey.Xml
@@ -33,7 +53,16 @@
 
     hs-source-dirs:   src
     default-language: Haskell2010
-    pkgconfig-depends: xmlsec1
+    if (!flag(OpenSSL) && !flag(NSS) && !flag(GCrypt) && !flag(GNUTLS))
+      pkgconfig-depends: xmlsec1
+    if flag(OpenSSL)
+      pkgconfig-depends: xmlsec1-openssl
+    if flag(NSS)
+      pkgconfig-depends: xmlsec1-nss
+    if flag(GCrypt)
+      pkgconfig-depends: xmlsec1-GCrypt
+    if flag(GNUTLS)
+      pkgconfig-depends: xmlsec1-gnutls
     include-dirs:     cbits
     build-depends:
         base >=4.13.0.0 && <=5.0,
