aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-07-16 11:29:43 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-07-16 11:29:43 -0400
commit6cbf529b9b9dfa797e0c21c8226e6ea072a721c6 (patch)
treed4c8130acc82f18728c2ca985474276b96f8857f
parent33b726f9a13e97d07e3a7309b8fa43f1ea75948a (diff)
Revert "avoid pulling in unneeded dependencies when the assistant is disabled"
Cabal does not seem to have a way to check if flag A is set and then, if flag B is set, add a dep. Instead, it makes flag B get unset if the dep is not available.
-rw-r--r--debian/changelog2
-rw-r--r--doc/install/cabal.mdwn25
-rw-r--r--git-annex.cabal16
3 files changed, 22 insertions, 21 deletions
diff --git a/debian/changelog b/debian/changelog
index 68737eda1..9cbe2d692 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,8 +6,6 @@ git-annex (4.20130710) UNRELEASED; urgency=low
* Rsync.net have committed to support git-annex and offer a special
discounted rate for git-annex users. Updated the webapp to reflect this.
http://www.rsync.net/products/git-annex-pricing.html
- * Improve cabal file to avoid unncessary dependencies when building with
- the assistant disabled.
-- Joey Hess <joeyh@debian.org> Tue, 09 Jul 2013 19:17:13 -0400
diff --git a/doc/install/cabal.mdwn b/doc/install/cabal.mdwn
index 0f381472d..383978d36 100644
--- a/doc/install/cabal.mdwn
+++ b/doc/install/cabal.mdwn
@@ -1,22 +1,25 @@
As a haskell package, git-annex can be installed using cabal.
-Start by installing the [Haskell Platform](http://hackage.haskell.org/platform/),
-and then:
+Start by installing the [Haskell Platform](http://hackage.haskell.org/platform/).
+
+## minimal build
+
+This builds git-annex without some features that require C libraries, that
+can be harder to get installed. This is plenty to get started using it,
+although it does not include the assistant or webapp.
cabal update
PATH=$HOME/bin:$PATH
- cabal install git-annex -f-assistant --bindir=$HOME/bin
-
-The above downloads the latest release and installs it into a ~/bin/
-directory, which you can put in your PATH.
+ cabal install git-annex --bindir=$HOME/bin -f"-assistant -webapp -webdav -pairing -xmpp -dns"
-## building in the assistant and webapp
+## full build
-The above builds git-annex without the git-annex assistant and webapp. To
-build with those features enabled, you will need to install several C
-libraries and their headers, including libgnutls, libgsasl, libxml2, and
-zlib. Then run:
+To build with all features enabled, including the assistant and webapp,
+you will need to install several C libraries and their headers,
+including libgnutls, libgsasl, libxml2, and zlib. Then run:
+ cabal update
+ PATH=$HOME/bin:$PATH
cabal install c2hs --bindir=$HOME/bin
cabal install git-annex --bindir=$HOME/bin
diff --git a/git-annex.cabal b/git-annex.cabal
index 831aada96..47b301b2d 100644
--- a/git-annex.cabal
+++ b/git-annex.cabal
@@ -103,7 +103,7 @@ Executable git-annex
Build-Depends: hS3
CPP-Options: -DWITH_S3
- if flag(WebDAV) && flag(Assistant)
+ if flag(WebDAV)
Build-Depends: DAV (>= 0.3), http-conduit, xml-conduit, http-types
CPP-Options: -DWITH_WEBDAV
@@ -117,8 +117,8 @@ Executable git-annex
if flag(Assistant)
if os(linux) && flag(Inotify)
- Build-Depends: hinotify
- CPP-Options: -DWITH_INOTIFY
+ Build-Depends: hinotify
+ CPP-Options: -DWITH_INOTIFY
else
if os(darwin)
Build-Depends: hfsevents
@@ -128,11 +128,11 @@ Executable git-annex
CPP-Options: -DWITH_KQUEUE
C-Sources: Utility/libkqueue.c
- if os(linux) && flag(Dbus) && flag(Assistant)
+ if os(linux) && flag(Dbus)
Build-Depends: dbus (>= 0.10.3)
CPP-Options: -DWITH_DBUS
- if flag(Webapp) && flag(Assistant)
+ if flag(Webapp)
Build-Depends:
yesod, yesod-default, yesod-static, yesod-form, yesod-core,
case-insensitive, http-types, transformers, wai, wai-logger, warp,
@@ -141,15 +141,15 @@ Executable git-annex
CPP-Options: -DWITH_WEBAPP
GHC-Options: -threaded
- if flag(Pairing) && flag(WebApp)
+ if flag(Pairing)
Build-Depends: network-multicast, network-info
CPP-Options: -DWITH_PAIRING
- if flag(XMPP) && flag(Assistant)
+ if flag(XMPP)
Build-Depends: network-protocol-xmpp, gnutls (>= 0.1.4), xml-types
CPP-Options: -DWITH_XMPP
- if flag(DNS) && flag(WebApp)
+ if flag(DNS)
Build-Depends: dns
CPP-Options: -DWITH_DNS