summaryrefslogtreecommitdiffhomepage
path: root/xmobar.cabal
blob: d46c8eb0d76e2a74ce8de99e8b05ac7d177b0e97 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
name:               xmobar
version:            0.11.1
homepage:           http://projects.haskell.org/xmobar/
bug-reports:        http://code.google.com/p/xmobar/issues
synopsis:           A Minimalistic Text Based Status Bar
description: 	    Xmobar is a minimalistic text based status bar.
		    .
                    Inspired by the Ion3 status bar, it supports similar
                    features, like dynamic color management, output templates,
                    and extensibility through plugins.
category:           System
license:            BSD3
license-file:       LICENSE
extra-source-files: README, NEWS
author:             Andrea Rossato
maintainer:         Jose A. Ortega Ruiz <jao@gnu.org>
cabal-version:      >= 1.6
build-type:         Simple

data-files:         xmobar.config-sample

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

flag with_xft
  description: Use Xft to render text. UTF-8 support included.
  default: False

flag with_utf8
  description: With UTF-8 support.
  default: True

flag with_inotify
  description: inotify support (modern Linux only). Required for the Mail and MBox plugins.
  default: False

flag with_iwlib
  description: Wireless info support. Required for the Wireless plugin, needs iwlib installed.
  default: False

flag with_mpd
  description: MPD support. Needs libmpd installed.
  default: False

flag all_extensions
  description: Includes all optional extensions.
  default: False

executable xmobar
    hs-source-dirs:     src
    main-is:            Main.hs
    other-modules:      Xmobar, Config, Parsers, Commands, XUtil, StatFS, Runnable, Plugins, Plugins.Monitors
    ghc-prof-options:   -prof -auto-all

    if true
       ghc-options: -funbox-strict-fields -Wall

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

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

    build-depends: X11>=1.3.0, mtl, unix, parsec, filepath, stm, time

    if flag(small_base)
       build-depends: base == 4.*, containers, process, old-time, old-locale, bytestring, directory

    else
       build-depends: base < 3

    if flag(with_xft) || flag(all_extensions)
       build-depends: utf8-string, X11-xft >= 0.2
       cpp-options: -DXFT

    if flag(with_utf8) || flag(all_extensions)
       build-depends: utf8-string
       cpp-options: -DUTF8

    if flag(with_inotify) || flag(all_extensions)
       build-depends: hinotify
       cpp-options: -DINOTIFY

    if flag(with_iwlib) || flag(all_extensions)
       extra-libraries: iw
       other-modules: IWlib
       cpp-options: -DIWLIB

    if flag(with_mpd) || flag(all_extensions)
       build-depends: libmpd >= 0.5
       cpp-options: -DLIBMPD