packages feed

llvm-ffi-3.2.1: llvm-ffi.cabal

Name:          llvm-ffi
Version:       3.2.1
License:       BSD3
License-File:  LICENSE
Synopsis:      FFI bindings to the LLVM compiler toolkit.
Description:
  FFI bindings to the LLVM compiler toolkit.
  .
  Installation is based on @pkg-config@
  since this is best supported by Cabal.
  This requires an @llvm.pc@ file
  which unfortunately is not generated by the LLVM source package.
  You may be lucky that your distribution package includes that file.
  If not, you can generate it yourself
  using the @llvm-pkg-config@ package.
  .
  We try to stay up to date with LLVM releases.
  The current version of this package is compatible with LLVM 3.2.
  Please understand that the package may or may not work
  against older LLVM releases.
  We don't have the time or resources to test across multiple releases.
Author:        Henning Thielemann, Bryan O'Sullivan, Lennart Augustsson
Maintainer:    Henning Thielemann <llvm@henning-thielemann.de>
Homepage:      http://haskell.org/haskellwiki/LLVM
Stability:     experimental
Category:      Compilers/Interpreters, Code Generation
Tested-With:   GHC==7.4.2, GHC==7.6.3, GHC==7.8.4, GHC==8.0.1
Cabal-Version: >= 1.6
Build-Type:    Simple

Extra-Source-Files:
  include/extra.h
  include/support.h
  tool/ltrace.config
  tool/ltrace.readme

Flag developer
  Description: developer mode - warnings let compilation fail
  Manual: True
  Default: False

Flag buildTools
  Description: build tools for managing this package
  Default: False

Flag specificPkgConfig
  Description: use llvm-3.2.pc instead of llvm.pc
  Default: True

Source-Repository head
  Type:     darcs
  Location: http://hub.darcs.net/thielema/llvm-ffi/

Source-Repository this
  Tag:      3.2.1
  Type:     darcs
  Location: http://hub.darcs.net/thielema/llvm-ffi/

Library
  Build-Depends:
    base >= 3 && < 5

  Hs-Source-Dirs: src
  GHC-Options: -Wall -fwarn-missing-import-lists

  If flag(developer)
    GHC-Options: -Werror

  Exposed-Modules:
      LLVM.FFI.Analysis
      LLVM.FFI.BitReader
      LLVM.FFI.BitWriter
      LLVM.FFI.Core
      LLVM.FFI.ExecutionEngine
      LLVM.FFI.Support
      LLVM.FFI.Target
      LLVM.FFI.Transforms.IPO
      LLVM.FFI.Transforms.Scalar
      LLVM.Target.Native

  Other-modules:
      LLVM.Target.ARM
      LLVM.Target.CellSPU
      LLVM.Target.CppBackend
      LLVM.Target.Hexagon
      LLVM.Target.MSP430
      LLVM.Target.Mips
      LLVM.Target.NVPTX
      LLVM.Target.PowerPC
      LLVM.Target.Sparc
      LLVM.Target.X86
      LLVM.Target.XCore

  If flag(specificPkgConfig)
    PkgConfig-Depends: llvm-3.2 == 3.2
  Else
    PkgConfig-Depends: llvm == 3.2
  CC-Options: -DHS_LLVM_VERSION=302 -DHAVE_LLVM_SUPPORT_DYNAMICLIBRARY_H=1
  CPP-Options: -DHS_LLVM_VERSION=302
  CPP-Options: -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
  Include-Dirs: include
  C-Sources:
    cbits/extra.cpp
    cbits/support.cpp

Executable llvm-diff-ffi
  If flag(buildTools)
    Build-Depends:
      utility-ht >=0.0.9 && <0.1,
      regex-posix >=0.95 && <0.96,
      containers >=0.4 && <0.6,
      base
  Else
    Buildable: False

  If flag(developer)
    GHC-Options: -Werror

  Hs-Source-Dirs: tool
  GHC-Options: -Wall
  Main-Is: DiffFFI.hs
  Other-Modules: FunctionMangulation

Executable llvm-function-mangler
  If flag(buildTools)
    Build-Depends:
      utility-ht >=0.0.9 && <0.1,
      regex-posix >=0.95 && <0.96,
      containers >=0.4 && <0.6,
      base
  Else
    Buildable: False

  If flag(developer)
    GHC-Options: -Werror

  Hs-Source-Dirs: tool
  GHC-Options: -Wall
  Main-Is: FunctionMangler.hs
  Other-Modules: FunctionMangulation

Executable llvm-intrinsic-mangler
  If flag(buildTools)
    Build-Depends:
      bytestring >=0.9 && <0.11,
      base
  Else
    Buildable: False

  If flag(developer)
    GHC-Options: -Werror

  Hs-Source-Dirs: tool
  GHC-Options: -Wall
  Main-Is: IntrinsicMangler.hs