git-annex-6.20160126.ebuild 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. # Copyright 1999-2016 Gentoo Foundation
  2. # Distributed under the terms of the GNU General Public License v2
  3. EAPI=5
  4. # ebuild generated by hackport 0.4.6.9999
  5. #hackport: flags: -production,-android,-androidsplice,-testsuite
  6. CABAL_FEATURES="bin"
  7. inherit haskell-cabal
  8. DESCRIPTION="manage files with git, without checking their contents into git"
  9. HOMEPAGE="http://git-annex.branchable.com/"
  10. SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
  11. RESTRICT="test"
  12. LICENSE="GPL-3"
  13. SLOT="0"
  14. KEYWORDS="~amd64 ~x86 ~amd64-linux"
  15. IUSE="+assistant benchmark +concurrentoutput +cryptonite doc ekg +network-uri +pairing +s3 +torrentparser +webapp +webdav"
  16. RDEPEND="dev-haskell/aeson:=
  17. dev-haskell/async:=
  18. dev-haskell/bloomfilter:=
  19. dev-haskell/case-insensitive:=
  20. dev-haskell/data-default:=
  21. >=dev-haskell/dbus-0.10.7:=
  22. dev-haskell/dlist:=
  23. dev-haskell/edit-distance:=
  24. dev-haskell/esqueleto:=
  25. >=dev-haskell/exceptions-0.6:=
  26. >=dev-haskell/fdo-notify-0.3:=
  27. dev-haskell/feed:=
  28. >=dev-haskell/gnutls-0.1.4:=
  29. dev-haskell/hslogger:=
  30. dev-haskell/http-client:=
  31. dev-haskell/http-conduit:=
  32. dev-haskell/http-types:=
  33. dev-haskell/ifelse:=
  34. dev-haskell/json:=
  35. dev-haskell/missingh:=
  36. dev-haskell/monad-control:=
  37. dev-haskell/monad-logger:=
  38. >=dev-haskell/mtl-2:=
  39. dev-haskell/network-protocol-xmpp:=
  40. dev-haskell/old-locale:=
  41. >=dev-haskell/optparse-applicative-0.11.0:=
  42. dev-haskell/persistent:=
  43. dev-haskell/persistent-sqlite:=
  44. dev-haskell/persistent-template:=
  45. >=dev-haskell/quickcheck-2.1:2=
  46. dev-haskell/random:=
  47. dev-haskell/regex-tdfa:=
  48. dev-haskell/resourcet:=
  49. dev-haskell/safesemaphore:=
  50. dev-haskell/sandi:=
  51. >=dev-haskell/stm-2.3:=
  52. dev-haskell/text:=
  53. dev-haskell/transformers:=
  54. dev-haskell/unix-compat:=
  55. dev-haskell/utf8-string:=
  56. dev-haskell/uuid:=
  57. dev-haskell/xml-types:=
  58. >=dev-lang/ghc-7.6.1:=
  59. assistant? ( dev-haskell/dns:=
  60. dev-haskell/hinotify:=
  61. sys-process/lsof )
  62. benchmark? ( dev-haskell/criterion:= )
  63. concurrentoutput? ( >=dev-haskell/concurrent-output-1.6:= )
  64. cryptonite? ( dev-haskell/cryptonite:= )
  65. !cryptonite? ( >=dev-haskell/cryptohash-0.11.0:= )
  66. ekg? ( dev-haskell/ekg:= )
  67. network-uri? ( >=dev-haskell/network-2.6:=
  68. >=dev-haskell/network-uri-2.6:= )
  69. !network-uri? ( >=dev-haskell/network-2.0:= <dev-haskell/network-2.6:= )
  70. pairing? ( dev-haskell/network-info:=
  71. dev-haskell/network-multicast:= )
  72. s3? ( >=dev-haskell/aws-0.9.2:=
  73. dev-haskell/conduit:=
  74. dev-haskell/conduit-extra:= )
  75. torrentparser? ( >=dev-haskell/torrent-10000.0.0:= )
  76. webapp? ( dev-haskell/blaze-builder:=
  77. dev-haskell/byteable:=
  78. dev-haskell/clientsession:=
  79. dev-haskell/crypto-api:=
  80. >=dev-haskell/path-pieces-0.1.4:=
  81. dev-haskell/securemem:=
  82. >=dev-haskell/shakespeare-2.0.0:=
  83. dev-haskell/wai:=
  84. dev-haskell/wai-extra:=
  85. >=dev-haskell/warp-3.0.0.5:=
  86. >=dev-haskell/warp-tls-1.4:=
  87. >=dev-haskell/yesod-1.2.6:=
  88. >=dev-haskell/yesod-core-1.2.19:=
  89. >=dev-haskell/yesod-default-1.2.0:=
  90. >=dev-haskell/yesod-form-1.3.15:=
  91. >=dev-haskell/yesod-static-1.2.4:= )
  92. webdav? ( >=dev-haskell/dav-1.0:= )
  93. "
  94. # not generated by hackport:
  95. RDEPEND="${RDEPEND}
  96. dev-vcs/git
  97. "
  98. DEPEND="${RDEPEND}
  99. >=dev-haskell/cabal-1.16.0
  100. "
  101. # not generated by hackport:
  102. DEPEND="${DEPEND}
  103. dev-lang/perl
  104. doc? ( www-apps/ikiwiki net-misc/rsync )
  105. "
  106. src_prepare() {
  107. # does not respect staging dir
  108. epatch "${FILESDIR}"/${PN}-5.20150731-no-strange-installs.patch
  109. epatch "${FILESDIR}"/${PN}-6.20160114-QC-2.8.2.patch
  110. }
  111. src_configure() {
  112. haskell-cabal_src_configure \
  113. --flag=-android \
  114. --flag=-androidsplice \
  115. $(cabal_flag assistant assistant) \
  116. $(cabal_flag benchmark benchmark) \
  117. $(cabal_flag concurrentoutput concurrentoutput) \
  118. $(cabal_flag cryptonite cryptonite) \
  119. $(cabal_flag ekg ekg) \
  120. $(cabal_flag network-uri network-uri) \
  121. $(cabal_flag pairing pairing) \
  122. --flag=-production \
  123. $(cabal_flag s3 s3) \
  124. --flag=-testsuite \
  125. $(cabal_flag torrentparser torrentparser) \
  126. $(cabal_flag webapp webapp) \
  127. $(cabal_flag webdav webdav)
  128. }
  129. src_compile() {
  130. haskell-cabal_src_compile
  131. use doc && emake docs
  132. }
  133. src_test() {
  134. if use webapp; then
  135. export GIT_CONFIG=${T}/temp-git-config
  136. git config user.email "git@src_test"
  137. git config user.name "Mr. ${P} The Test"
  138. emake test
  139. fi
  140. }
  141. src_install() {
  142. haskell-cabal_src_install
  143. dosym git-annex /usr/bin/git-annex-shell # standard make install does more, than needed
  144. # install-mans wants ikiwiki. It returns 0 and builds the man pages without ikiwiki.
  145. emake install-mans DESTDIR="${D}" PREFIX="${EPREFIX}/usr"
  146. use doc && emake install-docs DESTDIR="${D}" PREFIX="${EPREFIX}/usr"
  147. mv "${ED}"/usr/share/doc/{${PN},${PF}}
  148. dodoc CHANGELOG README
  149. if use webapp ; then
  150. doicon "${FILESDIR}"/${PN}.xpm
  151. make_desktop_entry "${PN} webapp" "git-annex" ${PN}.xpm "Office"
  152. fi
  153. }