From 1fcb94eb6acbacb7336bcee74c108f7d06f05c8c Mon Sep 17 00:00:00 2001 From: Jon Kristensen Date: Tue, 11 Jun 2013 01:29:17 +0200 Subject: [PATCH] Conditional dependencies for GHC 7.0.1 and README.md note --- README.md | 5 +++ pontarius-xmpp.cabal | 104 ++++++++++++++++++++++++++++++------------- 2 files changed, 77 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index 216eab4..a4bcbfa 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,11 @@ higher, or the build will fail with an "unrecognized option: --disable-benchmarks" error. The versions *1.16.0* and higher might not build on your system; if so, install *0.14.0* with "cabal install cabal-install-0.14.0". +_Note to GHC 7.0.1 users:_ You will want to configure your Cabal environment +(including *cabal-install*) for *bytestring*, version *0.9.2.1*. We recommend +that you run "cabal install bytestring-0.9.2.1 cabal-install-0.14.0" prior to +installing Pontarius XMPP. + The first thing to do is to import the modules that we are going to use. We are also using the OverloadedStrings LANGUAGE pragma in order to be able to type Text values like strings. diff --git a/pontarius-xmpp.cabal b/pontarius-xmpp.cabal index c3637a4..c5f9b6d 100644 --- a/pontarius-xmpp.cabal +++ b/pontarius-xmpp.cabal @@ -28,38 +28,78 @@ Extra-Source-Files: README.md Library hs-source-dirs: source Exposed: True - Build-Depends: attoparsec >=0.10.0.3 - , base >4 && <5 - , base64-bytestring >=0.1.0.0 - , binary >=0.4.1 - , bytestring >=0.9.1.9 && <=0.9.2.1 - , conduit >=0.5 - , containers >=0.5.0.0 - , crypto-api >=0.9 - , crypto-random-api >=0.2 - , cryptohash >=0.6.1 - , cryptohash-cryptoapi >=0.1 - , data-default >=0.2 - , dns >=0.3.0 - , hslogger >=1.1.0 - , iproute >=1.2.4 - , lifted-base >=0.1.0.1 - , mtl >=2.0.0.0 - , network >=2.4.1.0 - , pureMD5 >=2.1.2.1 - , resourcet >=0.3.0 - , random >=1.0.0.0 - , split >=0.1.2.3 - , stm >=2.1.2.1 - , stringprep >=0.1.3 - , text >=0.11.1.5 - , tls >=1.1.0 - , tls-extra >=0.5.0 - , transformers >=0.2.2.0 - , void >=0.5.5 - , xml-types >=0.3.1 - , xml-conduit >=1.0 - , xml-picklers >=0.3.3 + -- The only different between the below two blocks is that the first one caps + -- the range for the `bytestring' package. + If impl(ghc == 7.0.1) + { + Build-Depends: attoparsec >=0.10.0.3 + , base >4 && <5 + , base64-bytestring >=0.1.0.0 + , binary >=0.4.1 + , bytestring >=0.9.1.9 && <=0.9.2.1 + , conduit >=0.5 + , containers >=0.5.0.0 + , crypto-api >=0.9 + , crypto-random-api >=0.2 + , cryptohash >=0.6.1 + , cryptohash-cryptoapi >=0.1 + , data-default >=0.2 + , dns >=0.3.0 + , hslogger >=1.1.0 + , iproute >=1.2.4 + , lifted-base >=0.1.0.1 + , mtl >=2.0.0.0 + , network >=2.4.1.0 + , pureMD5 >=2.1.2.1 + , resourcet >=0.3.0 + , random >=1.0.0.0 + , split >=0.1.2.3 + , stm >=2.1.2.1 + , stringprep >=0.1.3 + , text >=0.11.1.5 + , tls >=1.1.0 + , tls-extra >=0.5.0 + , transformers >=0.2.2.0 + , void >=0.5.5 + , xml-types >=0.3.1 + , xml-conduit >=1.0 + , xml-picklers >=0.3.3 + } + else + { + Build-Depends: attoparsec >=0.10.0.3 + , base >4 && <5 + , base64-bytestring >=0.1.0.0 + , binary >=0.4.1 + , bytestring >=0.9.1.9 + , conduit >=0.5 + , containers >=0.5.0.0 + , crypto-api >=0.9 + , crypto-random-api >=0.2 + , cryptohash >=0.6.1 + , cryptohash-cryptoapi >=0.1 + , data-default >=0.2 + , dns >=0.3.0 + , hslogger >=1.1.0 + , iproute >=1.2.4 + , lifted-base >=0.1.0.1 + , mtl >=2.0.0.0 + , network >=2.4.1.0 + , pureMD5 >=2.1.2.1 + , resourcet >=0.3.0 + , random >=1.0.0.0 + , split >=0.1.2.3 + , stm >=2.1.2.1 + , stringprep >=0.1.3 + , text >=0.11.1.5 + , tls >=1.1.0 + , tls-extra >=0.5.0 + , transformers >=0.2.2.0 + , void >=0.5.5 + , xml-types >=0.3.1 + , xml-conduit >=1.0 + , xml-picklers >=0.3.3 + } Exposed-modules: Network.Xmpp , Network.Xmpp.IM , Network.Xmpp.Internal