File gtk2hs-buildtools.cabal of Package gtk2hs-buildtools

Name:   gtk2hs-buildtools
Version:        0.13.3.0
x-revision: 1
License:        GPL-2
License-file:   COPYING
Copyright:      (c) 2001-2010 The Gtk2Hs Team
Author:         Axel Simon, Duncan Coutts, Manuel Chakravaty
Maintainer:     gtk2hs-devel@lists.sourceforge.net
Build-Type:     Simple
Cabal-Version:  >= 1.10
Stability:      stable
homepage:       http://projects.haskell.org/gtk2hs/
bug-reports:    https://github.com/gtk2hs/gtk2hs/issues
Synopsis:       Tools to build the Gtk2Hs suite of User Interface libraries.
Description:    This package provides a set of helper programs necessary to
                build the Gtk2Hs suite of libraries. These tools include
                a modified c2hs binding tool that is used to generate
                FFI declarations, a tool to build a type hierarchy that
                mirrors the C type hierarchy of GObjects found in glib,
                and a generator for signal declarations that are used
                to call back from C to Haskell. These tools are not needed
                to actually run Gtk2Hs programs.
Category:       Development
Tested-With:    GHC == 7.0.4, GHC == 7.2.2, GHC == 7.4.1
Data-Files:     callbackGen/Signal.chs.template
                hierarchyGen/hierarchy.list
                hierarchyGen/Hierarchy.chs.template
Extra-Source-Files:     c2hs/toplevel/c2hs_config.h

Source-Repository head
  type:         git
  location:     https://github.com/gtk2hs/gtk2hs
  subdir:       tools

Flag ClosureSignals
        Description:    Use the the GClosure-based signals implementation.
--        if ! (arch(sparc) || arch(x86_64) || impl(ghc >= 6.4.1))
--        Default:        False

Library
        build-depends:   base >= 4 && < 5,
                         process, array, pretty,
                         filepath, random,
                         Cabal >= 1.24.0.0 && < 2.1,
                         filepath >= 1.3.0.0 && < 1.5,
                         directory >= 1.2.0.0 && < 1.4,
                         containers >= 0.5.5.1 && < 0.6
        if impl(ghc >= 7.7)
          build-depends: hashtables
        build-tools:     alex >= 3.0.1, happy >= 1.18.9
        hs-source-dirs:  src
                         hierarchyGen
                         callbackGen
                         c2hs/toplevel
                         c2hs/state
                         c2hs/gen
                         c2hs/chs
                         c2hs/c
                         c2hs/base/admin
                         c2hs/base/general
                         c2hs/base/state
                         c2hs/base/errors
                         c2hs/base/syms
                         c2hs/base/syntax
        c-sources:       c2hs/toplevel/c2hs_config.c
        exposed-modules: Gtk2HsSetup
                         TypeGen
                         HookGenerator
                         Gtk2HsC2Hs
        other-modules:   Paths_gtk2hs_buildtools
                         -- gtk2hsC2hs Modules
                         BaseVersion
                         Config
                         Errors
                         Binary
                         DLists
                         FastMutInt
                         FileOps
                         FNameOps
                         Map
                         Position
                         Set
                         UNames
                         CIO
                         State
                         StateBase
                         StateTrans
                         Attributes
                         Idents
                         NameSpaces
                         Lexers
                         C
                         CAST
                         CAttrs
                         CBuiltin
                         CLexer
                         CNames
                         CParser
                         CParserMonad
                         CPretty
                         CTokens
                         CTrav
                         CHS
                         CHSLexer
                         CInfo
                         GBMonad
                         GenBind
                         GenHeader
                         C2HSState
                         Switches
                         C2HSConfig
                         Version

        default-language:   Haskell98
        default-extensions: ForeignFunctionInterface
                            BangPatterns

        if flag(ClosureSignals)
          cpp-options:   -DUSE_GCLOSURE_SIGNALS_IMPL

        if os(darwin)
          cpp-options:   -D_C2HS_CPP_IS_GCC
        else
          cpp-options:   -D_C2HS_CPP_LANG_SINGLE

Executable gtk2hsTypeGen
        main-is:        gtk2hsTypeGenMain.hs
        hs-source-dirs: exe
        build-depends:  base, gtk2hs-buildtools
        default-language: Haskell98

Executable gtk2hsHookGenerator
        main-is:        gtk2hsHookGeneratorMain.hs
        hs-source-dirs: exe
        build-depends:  base, gtk2hs-buildtools
        default-language: Haskell98

Executable gtk2hsC2hs
        main-is:        gtk2hsC2hsMain.hs
        hs-source-dirs: exe
        build-depends:  base, gtk2hs-buildtools
        default-language: Haskell98
openSUSE Build Service is sponsored by