d1dbf266f6
I have seen some other programs do this, and think it's pretty cool. Means you can test wherever it's deployed, as well as at build time. My other reason for doing it is less happy. Cabal's handling of test suites sucks, requiring duplicated info, and even when that's done, it fails to preprocess hsc files here. Building it in avoids that and avoids having to explicitly tell cabal to enable test suites, which would then make it link the test executable every time, which is unnecessarily slow. This also has the benefit that now "make fast test" does a max speed build and tests it.
133 lines
3.8 KiB
Text
133 lines
3.8 KiB
Text
Name: git-annex
|
|
Version: 4.20130227
|
|
Cabal-Version: >= 1.8
|
|
License: GPL
|
|
Maintainer: Joey Hess <joey@kitenet.net>
|
|
Author: Joey Hess
|
|
Stability: Stable
|
|
Copyright: 2010-2013 Joey Hess
|
|
License-File: COPYRIGHT
|
|
Homepage: http://git-annex.branchable.com/
|
|
Build-type: Custom
|
|
Category: Utility
|
|
Synopsis: manage files with git, without checking their contents into git
|
|
Description:
|
|
git-annex allows managing files with git, without checking the file
|
|
contents into git. While that may seem paradoxical, it is useful when
|
|
dealing with files larger than git can currently easily handle, whether due
|
|
to limitations in memory, time, or disk space.
|
|
.
|
|
Even without file content tracking, being able to manage files with git,
|
|
move files around and delete files with versioned directory trees, and use
|
|
branches and distributed clones, are all very handy reasons to use git. And
|
|
annexed files can co-exist in the same git repository with regularly
|
|
versioned files, which is convenient for maintaining documents, Makefiles,
|
|
etc that are associated with annexed files but that benefit from full
|
|
revision control.
|
|
|
|
Flag S3
|
|
Description: Enable S3 support
|
|
|
|
Flag WebDAV
|
|
Description: Enable WebDAV support
|
|
|
|
Flag Inotify
|
|
Description: Enable inotify support
|
|
|
|
Flag Dbus
|
|
Description: Enable dbus support
|
|
|
|
Flag Assistant
|
|
Description: Enable git-annex assistant and watch command
|
|
|
|
Flag Webapp
|
|
Description: Enable git-annex webapp
|
|
|
|
Flag Pairing
|
|
Description: Enable pairing
|
|
|
|
Flag XMPP
|
|
Description: Enable notifications using XMPP
|
|
|
|
Flag DNS
|
|
Description: Enable the haskell DNS library for DNS lookup
|
|
|
|
Flag Production
|
|
Description: Enable production build (slower build; faster binary)
|
|
|
|
Flag Android
|
|
Description: Building for Android
|
|
Default: False
|
|
|
|
Executable git-annex
|
|
Main-Is: git-annex.hs
|
|
Build-Depends: MissingH, hslogger, directory, filepath,
|
|
unix, containers, utf8-string, network (>= 2.0), mtl (>= 2.1.1),
|
|
bytestring, old-locale, time, testpack, HUnit,
|
|
extensible-exceptions, dataenc, SHA, process, json,
|
|
base (>= 4.5 && < 4.8), monad-control, transformers-base, lifted-base,
|
|
IfElse, text, QuickCheck >= 2.1, bloomfilter, edit-distance, process,
|
|
SafeSemaphore, uuid, random, regex-compat
|
|
-- Need to list these because they're generated from .hsc files.
|
|
Other-Modules: Utility.Touch Utility.Mounts
|
|
Include-Dirs: Utility
|
|
C-Sources: Utility/libdiskfree.c Utility/libmounts.c
|
|
CC-Options: -Wall
|
|
GHC-Options: -threaded -Wall
|
|
|
|
if flag(Production)
|
|
GHC-Options: -O2
|
|
|
|
if flag(S3)
|
|
Build-Depends: hS3
|
|
CPP-Options: -DWITH_S3
|
|
|
|
if flag(WebDAV)
|
|
Build-Depends: DAV (>= 0.3), http-conduit, xml-conduit, http-types
|
|
CPP-Options: -DWITH_WEBDAV
|
|
|
|
if flag(Assistant) && ! os(windows) && ! os(solaris)
|
|
Build-Depends: async, stm (>= 2.3)
|
|
CPP-Options: -DWITH_ASSISTANT
|
|
|
|
if flag(Android)
|
|
CPP-Options: -D__ANDROID__
|
|
|
|
if os(linux) && flag(Inotify)
|
|
Build-Depends: hinotify
|
|
CPP-Options: -DWITH_INOTIFY
|
|
else
|
|
if os(darwin)
|
|
Build-Depends: hfsevents
|
|
CPP-Options: -DWITH_FSEVENTS
|
|
else
|
|
if (! os(windows) && ! os(solaris) && ! os(linux))
|
|
CPP-Options: -DWITH_KQUEUE
|
|
C-Sources: Utility/libkqueue.c
|
|
|
|
if os(linux) && flag(Dbus)
|
|
Build-Depends: dbus (>= 0.10.3)
|
|
CPP-Options: -DWITH_DBUS
|
|
|
|
if flag(Webapp)
|
|
Build-Depends: yesod, yesod-static, case-insensitive,
|
|
http-types, transformers, wai, wai-logger, warp, blaze-builder,
|
|
crypto-api, hamlet, clientsession, aeson, yesod-form,
|
|
template-haskell, yesod-default, data-default
|
|
CPP-Options: -DWITH_WEBAPP
|
|
|
|
if flag(Pairing)
|
|
Build-Depends: network-multicast, network-info
|
|
CPP-Options: -DWITH_PAIRING
|
|
|
|
if flag(XMPP)
|
|
Build-Depends: network-protocol-xmpp, gnutls (>= 0.1.4), xml-types
|
|
CPP-Options: -DWITH_XMPP
|
|
|
|
if flag(DNS)
|
|
Build-Depends: dns
|
|
CPP-Options: -DWITH_DNS
|
|
|
|
source-repository head
|
|
type: git
|
|
location: git://git-annex.branchable.com/
|