Files
xmonad/xmonad.cabal
Mikkel Christiansen f490ced673 Fix failing tests on GHC 8 and reduce warnings.
Fix test failures on GHC 8 for `abort` and `new_abort` caused by `error`
appending the stack trace to the error message (since base
4.9.0.0)[1]. This fixes #36.

An alternative is to use `errorWithoutStackTrace` (new in base 4.9.0.0),
but this then requires use of CPP for backwards compatibility.

Remove type constraints prompting GHC to warn about redundant
constraints.

Tested with 7.6.3, 7.8.4, 7.10.3, 8.0.1 (all on NixOS).

[1] https://hackage.haskell.org/package/base-4.9.0.0/docs/GHC-Stack.html
2016-11-09 12:03:34 +02:00

127 lines
3.8 KiB
Plaintext

name: xmonad
version: 0.12
homepage: http://xmonad.org
synopsis: A tiling window manager
description:
xmonad is a tiling window manager for X. Windows are arranged
automatically to tile the screen without gaps or overlap, maximising
screen use. All features of the window manager are accessible from
the keyboard: a mouse is strictly optional. xmonad is written and
extensible in Haskell. Custom layout algorithms, and other
extensions, may be written by the user in config files. Layouts are
applied dynamically, and different layouts may be used on each
workspace. Xinerama is fully supported, allowing windows to be tiled
on several screens.
category: System
license: BSD3
license-file: LICENSE
author: Spencer Janssen
maintainer: xmonad@haskell.org
extra-source-files: README.md CHANGES.md TODO CONFIG STYLE
tests/*.hs
tests/Properties/*.hs
tests/Properties/Layout/*.hs
man/xmonad.1.markdown man/xmonad.1 man/xmonad.1.html
util/GenerateManpage.hs
util/hpcReport.sh
cabal-version: >= 1.8
bug-reports: https://github.com/xmonad/xmonad/issues
build-type: Simple
tested-with:
GHC==7.6.3,
GHC==7.8.4,
GHC==7.10.3,
GHC==8.0.1
data-files: man/xmonad.hs, man/xmonad.1, man/xmonad.1.html
source-repository head
type: git
location: https://github.com/xmonad/xmonad
flag testing
description: Testing mode, only build minimal components
default: False
flag generatemanpage
description: Build the tool for generating the man page
default: False
manual: True
library
hs-source-dirs: src
exposed-modules: XMonad
XMonad.Main
XMonad.Core
XMonad.Config
XMonad.Layout
XMonad.ManageHook
XMonad.Operations
XMonad.StackSet
other-modules: Paths_xmonad
build-depends: base < 5 && >=3,
containers,
data-default,
directory,
extensible-exceptions,
filepath,
setlocale,
mtl,
process,
unix,
utf8-string >= 0.3 && < 1.1,
X11>=1.5 && < 1.7
if true
ghc-options: -funbox-strict-fields -Wall
if impl(ghc >= 6.12.1)
ghc-options: -fno-warn-unused-do-bind
if impl(ghc < 7.0.0)
extensions: UndecidableInstances
-- needed for XMonad.Config's instance Default (XConfig a)
ghc-prof-options: -prof -auto-all
if flag(testing)
buildable: False
executable xmonad
main-is: Main.hs
build-depends: base,
mtl,
unix,
X11,
xmonad
ghc-options: -Wall
if impl(ghc >= 6.12.1)
ghc-options: -Wall -fno-warn-unused-do-bind
executable generatemanpage
main-is: GenerateManpage.hs
hs-source-dirs: util
if flag(generatemanpage)
build-depends: base,
Cabal,
pandoc,
pretty,
regex-posix
else
buildable: False
-- note util/hpcReport.sh
test-suite properties
type: exitcode-stdio-1.0
hs-source-dirs: tests
build-depends: base,
containers,
extensible-exceptions,
QuickCheck >= 2,
X11,
xmonad
main-is: Properties.hs