Cabal revisions of ncurses-0.2.13
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
-name: ncurses-version: 0.2.13-license: GPL-3-license-file: license.txt-author: John Millikin <jmillikin@gmail.com>-maintainer: John Millikin <jmillikin@gmail.com>-build-type: Simple-cabal-version: >= 1.6-category: User Interfaces, Foreign-stability: experimental-homepage: https://john-millikin.com/software/haskell-ncurses/-bug-reports: mailto:jmillikin@gmail.com--synopsis: Modernised bindings to GNU ncurses-description:- GNU ncurses is a library for creating command-line application with- pseudo-graphical interfaces. This package is a nice, modern binding- to GNU ncurses.- .- The following example is a program that displays the message- \"Hello world!\" until the user hits Q:- .- @- import UI.NCurses- .- main :: IO ()- main = runCurses $ do-   setEcho False-   w <- defaultWindow-   updateWindow w $ do-   moveCursor 1 10-   drawString \"Hello world!\"-   moveCursor 3 10-   drawString \"(press q to quit)\"-   moveCursor 0 0-   render-   waitFor w (\\ev -> ev == EventCharacter \'q\' || ev == EventCharacter \'Q\')- .- waitFor :: Window -> (Event -> Bool) -> Curses ()- waitFor w p = loop where-   loop = do-   ev <- getEvent w Nothing-   case ev of-   Nothing -> loop-   Just ev' -> if p ev' then return () else loop- @--extra-source-files:- cbits/hsncurses-shim.c- cbits/hsncurses-shim.h- cbits/mavericks-c2hs-workaround.h--source-repository head- type: git- location: https://john-millikin.com/code/haskell-ncurses/--source-repository this- type: git- location: https://john-millikin.com/code/haskell-ncurses/- tag: haskell-ncurses_0.2.13---- Do not use default to using pkg-config to find ncurses libraries, because--- the .pc files are missing or broken in many installations.-flag use-pkgconfig- default: False- manual: True- description:- Use pkg-config to set linker and include flags.--flag force-narrow-library- default: False- manual: True- description:- Force including and linking against ncurses instead of ncursesw. This is- only useful on systems that have the ncursesw package installed- incorrectly. On most systems this will cause compile- or run-time errors.--library- hs-source-dirs: lib- ghc-options: -Wall -O2- include-dirs: .-- build-depends:- base >= 4.0 && < 5.0- , containers >= 0.2- , text >= 0.7- , transformers >= 0.2-- build-tools:- c2hs >= 0.15-- if flag(use-pkgconfig)- if flag(force-narrow-library)- cc-options: -DHSNCURSES_NARROW_HEADER- pkgconfig-depends: ncurses, panel- else- pkgconfig-depends: ncursesw, panelw- else- -- MacOS has a version of ncurses where the narrow- and wide-character- -- builds have been merged into a single header/dylib.- --- -- Explicitly linking against libpthread.so fixes a build problem on- -- platforms where the linker doesn't automatically follow dependencies.- if os(darwin) || os(freebsd) || flag(force-narrow-library)- cc-options: -DHSNCURSES_NARROW_HEADER- if os(darwin) || flag(force-narrow-library)- extra-libraries: panel ncurses pthread- else- extra-libraries: panelw ncursesw pthread-- c-sources: cbits/hsncurses-shim.c-- exposed-modules:- UI.NCurses- UI.NCurses.Panel-- other-modules:- UI.NCurses.Enums- UI.NCurses.Compat- UI.NCurses.Types+name: ncurses +version: 0.2.13 +x-revision: 1 +license: GPL-3 +license-file: license.txt +author: John Millikin <jmillikin@gmail.com> +maintainer: John Millikin <jmillikin@gmail.com> +build-type: Simple +cabal-version: >= 1.6 +category: User Interfaces, Foreign +stability: experimental +homepage: https://john-millikin.com/software/haskell-ncurses/ +bug-reports: mailto:jmillikin@gmail.com + +synopsis: Modernised bindings to GNU ncurses +description: + GNU ncurses is a library for creating command-line application with + pseudo-graphical interfaces. This package is a nice, modern binding + to GNU ncurses. + . + The following example is a program that displays the message + \"Hello world!\" until the user hits Q: + . + @ + import UI.NCurses + . + main :: IO () + main = runCurses $ do +   setEcho False +   w <- defaultWindow +   updateWindow w $ do +   moveCursor 1 10 +   drawString \"Hello world!\" +   moveCursor 3 10 +   drawString \"(press q to quit)\" +   moveCursor 0 0 +   render +   waitFor w (\\ev -> ev == EventCharacter \'q\' || ev == EventCharacter \'Q\') + . + waitFor :: Window -> (Event -> Bool) -> Curses () + waitFor w p = loop where +   loop = do +   ev <- getEvent w Nothing +   case ev of +   Nothing -> loop +   Just ev' -> if p ev' then return () else loop + @ + +extra-source-files: + cbits/hsncurses-shim.c + cbits/hsncurses-shim.h + cbits/mavericks-c2hs-workaround.h + +source-repository head + type: git + location: https://john-millikin.com/code/haskell-ncurses/ + +source-repository this + type: git + location: https://john-millikin.com/code/haskell-ncurses/ + tag: haskell-ncurses_0.2.13 + +-- Do not use default to using pkg-config to find ncurses libraries, because +-- the .pc files are missing or broken in many installations. +flag use-pkgconfig + default: False + manual: True + description: + Use pkg-config to set linker and include flags. + +flag force-narrow-library + default: False + manual: True + description: + Force including and linking against ncurses instead of ncursesw. This is + only useful on systems that have the ncursesw package installed + incorrectly. On most systems this will cause compile- or run-time errors. + +library + hs-source-dirs: lib + ghc-options: -Wall -O2 + include-dirs: . + + build-depends: + base >= 4.6 && < 5.0 + , containers >= 0.2 + , text >= 0.7 + , transformers >= 0.2 + + build-tools: + c2hs >= 0.15 + + if flag(use-pkgconfig) + if flag(force-narrow-library) + cc-options: -DHSNCURSES_NARROW_HEADER + pkgconfig-depends: ncurses, panel + else + pkgconfig-depends: ncursesw, panelw + else + -- MacOS has a version of ncurses where the narrow- and wide-character + -- builds have been merged into a single header/dylib. + -- + -- Explicitly linking against libpthread.so fixes a build problem on + -- platforms where the linker doesn't automatically follow dependencies. + if os(darwin) || os(freebsd) || flag(force-narrow-library) + cc-options: -DHSNCURSES_NARROW_HEADER + if os(darwin) || flag(force-narrow-library) + extra-libraries: panel ncurses pthread + else + extra-libraries: panelw ncursesw pthread + + c-sources: cbits/hsncurses-shim.c + + exposed-modules: + UI.NCurses + UI.NCurses.Panel + + other-modules: + UI.NCurses.Enums + UI.NCurses.Compat + UI.NCurses.Types