packages feed

Hayoo-1.2.0: Hayoo.cabal

name:          Hayoo
version:       1.2.0
license:       MIT
license-file:  LICENSE
author:        Sebastian M. Schlatt, Timo B. Huebel, Uwe Schmidt
copyright:     Copyright (c) 2007 - 2012 Uwe Schmidt, Sebastian M. Schlatt and Timo B. Kranz
maintainer:    Timo B. Huebel <tbh@holumbus.org>
stability:     experimental
category:      Text, Data
synopsis:      The Hayoo! search engine for Haskell API search on hackage
homepage:      http://holumbus.fh-wedel.de
description:   The Hayoo! search engine based no the Holumbus framework provides a document indexer
               and a crawler to build indexes over Haddock generated API documentation and packages
               as well as a query interface for these indexes.
cabal-version: >=1.6
build-type:    Simple
-- tested-with:  ghc-7.0.3

extra-source-files:
    README
    index/hayoo/hayoo.css
    index/hayoo/fhw.gif
    index/hayoo/loader.gif
    index/hayoo/favicon.ico
    index/hayoo/content.js
    index/hayoo/hayoo.js
    index/hayoo/prototype.js
    index/hayoo/ft.png
    index/hayoo/hayoo.png
    index/hayoo/hol.png
    index/hayoo/holumbus.png
    index/hayoo/minus.png
    index/hayoo/plus.png
    index/hayoo/opensearch.xml

-- ------------------------------------------------------------

executable hayooIndexer
  main-is:      HayooIndexer.hs

  other-modules:  Hayoo.PackageInfo
                , Hayoo.URIConfig
                , Hayoo.PackageArchive
                , Hayoo.IndexTypes
                , Hayoo.Haddock
                , Hayoo.HackagePackage
                , Hayoo.IndexConfig

  build-depends:  base                   >= 4   && < 5
                , Holumbus-Searchengine  >= 1.2 && < 2
                , binary                 >= 0.5 && < 1
                , bytestring             >= 0.9 && < 1
                , bzlib                  >= 0.4 && < 1
                , containers             >= 0.2 && < 1
                , deepseq                >= 1.1 && < 2
                , enummapset             >= 0   && < 1
                , filepath               >= 1   && < 2
                , hxt                    >= 9.1 && < 10
                , hxt-cache              >= 9   && < 10
                , hxt-charproperties     >= 9   && < 10
                , hxt-curl               >= 9   && < 10
                , hxt-http               >= 9   && < 10
                , hxt-regex-xmlschema    >= 9   && < 10
                , hxt-xpath              >= 9.1 && < 10
                , network                >= 2.1 && < 3
                , old-time               >= 1   && < 2
                , parsec                 >= 2.1 && < 4
                , process                >= 1   && < 2
                , tar                    >= 0.3 && < 1
                , zlib                   >= 0.5 && < 1 

  hs-source-dirs: src

  if impl( ghc >= 7 )
    ghc-options: -threaded -Wall -funbox-strict-fields -fwarn-tabs -rtsopts
  else
    ghc-options: -threaded -Wall -funbox-strict-fields

  extensions:

-- ------------------------------------------------------------

executable hayooSearch
  main-is:      HayooSearch.hs

  other-modules:  Hayoo.FunctionInfo
                , Hayoo.IndexTypes
                , Hayoo.PackageInfo
                , Hayoo.PackageRank
                , Hayoo.Search.Application
                , Hayoo.Search.Common
                , Hayoo.Search.EvalSearch
                , Hayoo.Search.HTML
                , Hayoo.Search.JSON
                , Hayoo.Search.Pages.Static
                , Hayoo.Search.Pages.Template
                , Hayoo.Search.Parser
                , Hayoo.Signature

  build-depends:  base                      >= 4   && < 5
                , Holumbus-Searchengine     >= 1   && < 2
                , hack                      >= 2009.10.30
                , hack-contrib              >= 2010.9.28
                , hslogger                  >= 1   && < 2
                , hxt-unicode               >= 9   && < 10
                , json                      >= 0.4 && < 1
                , text                      >= 0.7 && < 1
                , xhtml-combinators         >= 0.2 && < 1

  if impl( ghc >= 7.0.3 )
    build-depends: hack-handler-simpleserver >= 0.2.0.2 && < 1
  else
    build-depends: hack-handler-simpleserver >= 0.2.0.1

  hs-source-dirs: src

  if impl( ghc >= 7 )
    ghc-options: -threaded -Wall -funbox-strict-fields -fwarn-tabs -rtsopts
  else
    ghc-options: -threaded -Wall -funbox-strict-fields

  extensions:

-- ------------------------------------------------------------

Flag hayooSnap
  Description: Build Hayoo! search with Snap server
  Default: True

executable hayooSnap
 -- if flag(hayooSnap)
  main-is:      HayooSnap.hs

  other-modules:  Hayoo.FunctionInfo
                , Hayoo.IndexTypes
                , Hayoo.PackageInfo
                , Hayoo.PackageRank
                , Hayoo.Search.Common
                , Hayoo.Search.EvalSearch
                , Hayoo.Search.HTML
                , Hayoo.Search.JSON
                , Hayoo.Search.Pages.Static
                , Hayoo.Search.Pages.Template
                , Hayoo.Search.Parser
                , Hayoo.Signature
                , Hayoo.Snap.Application
                , Hayoo.Snap.Extension.HayooState
                , Hayoo.Snap.Site

  build-depends:  base                      >= 4     && < 5
                , bytestring                >= 0.9.1 && < 0.10
                , Holumbus-Searchengine     >= 1.2   && < 2
                , hslogger                  >= 1     && < 2
                , hxt-unicode               >= 9     && < 10
                , json                      >= 0.4   && < 1
                , MonadCatchIO-transformers >= 0.2.1 && < 0.3
                , mtl                       >= 2     && < 3
                , snap                      == 0.4.*
                , snap-core                 == 0.4.*
                , snap-server               == 0.4.*
                , text                      >= 0.11  && < 1
                , transformers              >= 0.2.2 && < 0.3
                , xhtml-combinators         >= 0.2   && < 1
 -- else
  -- hayooSnap is currently only tested with ghc-7.0.3, with ghc-6.12 you will run into cabal package hell
  -- with ghc-6.12 there is a mess with hack-handler-simpleserver, which wants old versions of network, web-encodings and text
  -- so this is a dummy
  -- main-is:      Dummy.hs

 hs-source-dirs: src

 if impl( ghc >= 7 )
  ghc-options: -threaded -Wall -funbox-strict-fields -fwarn-tabs -rtsopts
               -fno-warn-orphans -fno-warn-unused-do-bind
 else
  ghc-options: -threaded -Wall -funbox-strict-fields -fwarn-tabs
               -fno-warn-orphans -fno-warn-unused-do-bind

 extensions: TypeSynonymInstances MultiParamTypeClasses

-- ------------------------------------------------------------