packages feed

xmonad-extras-0.10: xmonad-extras.cabal

name:               xmonad-extras
version:            0.10
homepage:           http://projects.haskell.org/xmonad-extras
synopsis:           Third party extensions for xmonad with wacky dependencies
description:        Various modules for xmonad that cannot be added to xmonad-contrib
                    because of additional dependencies.
category:           System
license:            BSD3
license-file:       LICENSE
author:             The Daniels Schoepe and Wagner
maintainer:         daniel@wagner-home.com, daniel.schoepe@googlemail.com
cabal-version:      >= 1.2.1
build-type:         Simple

flag small_base
  description: Choose the new smaller, split-up base package.

flag with_parsec
  description: Build modules depending on the parsec package

flag with_split
  description: Build modules depending on Data.Split

flag with_hint
  description: Build modules depending on hint(for evaluating Haskell expressions at runtime).

flag with_mpd
  description: Build modules depending on libmpd.

flag with_hlist
  description: Build modules depending on HList.

flag with_regex_posix
  description: Build modules depending on posix-regex.

flag with_template_haskell
  description: Build modules depending on template haskell.

flag testing
  description: Testing mode
  default: False

library
    if flag(small_base)
        build-depends: base >= 3 && < 5, containers, directory, process, random, old-time, old-locale
    else
        build-depends: base < 3

    build-depends:      mtl, unix, X11>=1.4.3, xmonad>=0.10 && <0.11, xmonad-contrib>=0.10 && <0.11

    if true
        ghc-options:        -fwarn-tabs -Wall

    if flag(testing)
        ghc-options:    -Werror

    if impl (ghc == 6.10.1) && arch (x86_64)
        ghc-options:    --disable-optimizations

    if flag(with_parsec) && flag(with_split)
        build-depends: parsec >= 2 && < 4, split >= 0.1 && < 0.2
        exposed-modules: XMonad.Actions.Volume

    -- At the moment of writing, hint does not yet support
    -- GHCs newer than 7.0.4; If that changes and no new release
    -- of xmonad-extras has been made, please contact the maintainer.
    if flag(with_hint) && impl (ghc < 7.2)
        build-depends: hint >= 0.3 && < 0.4, network
        exposed-modules: XMonad.Actions.Eval XMonad.Prompt.Eval
--                         XMonad.Hooks.EvalServer

    if flag(with_mpd)
        build-depends: libmpd >= 0.6 && < 0.8
        exposed-modules: XMonad.Prompt.MPD
        other-modules: XMonad.Prompt.MPD.Compat

    if flag(with_regex_posix)
        build-depends: regex-posix
        exposed-modules: XMonad.Util.WindowPropertiesRE

    if impl(ghc >= 6.12.1) && flag(with_template_haskell) && flag(with_hlist)
        build-depends: template-haskell, HList >= 0.2.3 && < 0.3
        exposed-modules: XMonad.Config.Alt
                         XMonad.Config.Alt.Desktop
                         XMonad.Config.Alt.Sample
                         XMonad.Config.Alt.Internal
                         XMonad.Config.Alt.QQ

        other-modules:   XMonad.Config.Alt.Types

        exposed-modules: XMonad.Hooks.PerWindowKbdLayout

    if impl(ghc >= 6.12.1)
        ghc-options:    -fno-warn-unused-do-bind

-- executable xmonadcmd
--     main-is: XMonadCmd.hs
--     build-depends:      mtl, unix, X11>=1.4.3, xmonad>=0.9 && <1.0, xmonad-contrib>=0.9 && <1.0
--     ghc-options:        -Wall
--     if !flag(with_hint)
--         Buildable: False
-- 
--     if flag(with_hint)
--         build-depends: network
-- 
--     if flag(testing)
--         ghc-options:  -Werror