[[!comment format=mdwn
 username="http://joeyh.name/"
 ip="4.152.108.27"
 subject="comment 1"
 date="2012-11-11T21:49:10Z"
 content="""
My code already supports using either, but I don't know how to tell cabal to set -DWITH_OLD_URI to build with the old one, when it's installed. I've in the past tried to deal with this by defining cabal flags, and it didn't work out too well, tending to land users solidly in cabal hell.

You can patch the cabal file like so to make it build with the old network:

<pre>
--- a/git-annex.cabal
+++ b/git-annex.cabal
@@ -52,7 +52,7 @@ Flag DNS
 Executable git-annex
   Main-Is: git-annex.hs
   Build-Depends: MissingH, hslogger, directory, filepath,
-   unix, containers, utf8-string, network (>= 2.4.0.1), mtl,
+   unix, containers, utf8-string, network (< 2.4.0.1), mtl,
    bytestring, old-locale, time,
    pcre-light, extensible-exceptions, dataenc, SHA, process, json, HTTP,
    base (>= 4.5 && < 4.7), monad-control, transformers-base, lifted-base,
@@ -64,6 +64,7 @@ Executable git-annex
   C-Sources: Utility/libdiskfree.c Utility/libmounts.c
   Extensions: CPP
   GHC-Options: -threaded
+  CPP-Options: -DWITH_OLD_URI
</pre>
"""]]
