name: llvm-general version: 3.2.4.2 license: BSD3 license-file: LICENSE author: Benjamin S.Scarlet maintainer: Benjamin S. Scarlet copyright: Benjamin S. Scarlet 2013 build-type: Custom stability: experimental cabal-version: >= 1.8 category: Compilers/Interpreters, Code Generation synopsis: General purpose LLVM bindings description: llvm-general is a set of Haskell bindings for LLVM . Unlike other current Haskell bindings, it uses an ADT to represent LLVM IR (), and so offers two advantages: it handles almost all of the stateful complexities of using the LLVM API to build IR; and it supports moving IR not only from Haskell into LLVM C++ objects, but the other direction - from LLVM C++ into Haskell. extra-source-files: src/LLVM/General/Internal/FFI/Analysis.h src/LLVM/General/Internal/FFI/Function.h src/LLVM/General/Internal/FFI/GlobalValue.h src/LLVM/General/Internal/FFI/InlineAssembly.h src/LLVM/General/Internal/FFI/Instruction.h src/LLVM/General/Internal/FFI/SMDiagnostic.h src/LLVM/General/Internal/FFI/Target.h src/LLVM/General/Internal/FFI/Type.h src/LLVM/General/Internal/FFI/Value.h source-repository head type: git location: git://github.com/bscarlet/llvm-general.git source-repository this type: git location: git://github.com/bscarlet/llvm-general.git branch: llvm-3.2 tag: v3.2.4.2 flag shared-llvm description: link against llvm shared rather than static library default: False flag debug description: compile C(++) shims with debug info for ease of troubleshooting default: False library build-tools: llvm-config ghc-options: -fwarn-unused-imports build-depends: base >= 4.5.0.0 && < 5, text >= 0.11.2.1, bytestring >= 0.9.1.10, transformers >= 0.3.0.0, mtl >= 2.0.1.0, template-haskell >= 2.5.0.0, containers >= 0.4.2.1, parsec >= 3.1.3, array >= 0.4.0.0, setenv >= 0.1.0 extra-libraries: stdc++ hs-source-dirs: src extensions: TupleSections DeriveDataTypeable EmptyDataDecls FlexibleContexts FlexibleInstances StandaloneDeriving exposed-modules: LLVM.General LLVM.General.AST LLVM.General.AST.AddrSpace LLVM.General.AST.InlineAssembly LLVM.General.AST.Attribute LLVM.General.AST.CallingConvention LLVM.General.AST.Constant LLVM.General.AST.DataLayout LLVM.General.AST.Float LLVM.General.AST.FloatingPointPredicate LLVM.General.AST.Global LLVM.General.AST.Instruction LLVM.General.AST.IntegerPredicate LLVM.General.AST.Linkage LLVM.General.AST.Name LLVM.General.AST.Operand LLVM.General.AST.RMWOperation LLVM.General.AST.Type LLVM.General.AST.Visibility LLVM.General.Analysis LLVM.General.CodeGenOpt LLVM.General.CodeModel LLVM.General.CommandLine LLVM.General.Context LLVM.General.Diagnostic LLVM.General.ExecutionEngine LLVM.General.Module LLVM.General.PassManager LLVM.General.Relocation LLVM.General.Target LLVM.General.Target.Options LLVM.General.Transforms other-modules: Control.Monad.AnyCont Control.Monad.AnyCont.Class Control.Monad.Trans.AnyCont LLVM.General.Internal.Analysis LLVM.General.Internal.Atomicity LLVM.General.Internal.Attribute LLVM.General.Internal.BasicBlock LLVM.General.Internal.CallingConvention LLVM.General.Internal.Coding LLVM.General.Internal.CommandLine LLVM.General.Internal.Constant LLVM.General.Internal.Context LLVM.General.Internal.DataLayout LLVM.General.Internal.DecodeAST LLVM.General.Internal.Diagnostic LLVM.General.Internal.EncodeAST LLVM.General.Internal.ExecutionEngine LLVM.General.Internal.FloatingPointPredicate LLVM.General.Internal.Function LLVM.General.Internal.Global LLVM.General.Internal.InlineAssembly LLVM.General.Internal.Instruction LLVM.General.Internal.InstructionDefs LLVM.General.Internal.IntegerPredicate LLVM.General.Internal.Metadata LLVM.General.Internal.Module LLVM.General.Internal.Operand LLVM.General.Internal.PassManager LLVM.General.Internal.RMWOperation LLVM.General.Internal.String LLVM.General.Internal.Target LLVM.General.Internal.Type LLVM.General.Internal.Value LLVM.General.Internal.FFI.Analysis LLVM.General.Internal.FFI.Assembly LLVM.General.Internal.FFI.BasicBlock LLVM.General.Internal.FFI.BinaryOperator LLVM.General.Internal.FFI.Builder LLVM.General.Internal.FFI.Cleanup LLVM.General.Internal.FFI.CommandLine LLVM.General.Internal.FFI.Constant LLVM.General.Internal.FFI.Context LLVM.General.Internal.FFI.ExecutionEngine LLVM.General.Internal.FFI.Function LLVM.General.Internal.FFI.GlobalAlias LLVM.General.Internal.FFI.GlobalValue LLVM.General.Internal.FFI.GlobalVariable LLVM.General.Internal.FFI.InlineAssembly LLVM.General.Internal.FFI.Instruction LLVM.General.Internal.FFI.InstructionDefs LLVM.General.Internal.FFI.Iterate LLVM.General.Internal.FFI.LLVMCTypes LLVM.General.Internal.FFI.Metadata LLVM.General.Internal.FFI.Module LLVM.General.Internal.FFI.PassManager LLVM.General.Internal.FFI.PtrHierarchy LLVM.General.Internal.FFI.SMDiagnostic LLVM.General.Internal.FFI.Target LLVM.General.Internal.FFI.Transforms LLVM.General.Internal.FFI.Type LLVM.General.Internal.FFI.User LLVM.General.Internal.FFI.Value include-dirs: src c-sources: src/LLVM/General/Internal/FFI/AssemblyC.cpp src/LLVM/General/Internal/FFI/BuilderC.cpp src/LLVM/General/Internal/FFI/CommandLineC.cpp src/LLVM/General/Internal/FFI/ConstantC.cpp src/LLVM/General/Internal/FFI/FunctionC.cpp src/LLVM/General/Internal/FFI/GlobalAliasC.cpp src/LLVM/General/Internal/FFI/GlobalValueC.cpp src/LLVM/General/Internal/FFI/InlineAssemblyC.cpp src/LLVM/General/Internal/FFI/InstructionC.cpp src/LLVM/General/Internal/FFI/MetadataC.cpp src/LLVM/General/Internal/FFI/ModuleC.cpp src/LLVM/General/Internal/FFI/PassManagerC.cpp src/LLVM/General/Internal/FFI/SMDiagnosticC.cpp src/LLVM/General/Internal/FFI/TargetC.cpp src/LLVM/General/Internal/FFI/TypeC.cpp src/LLVM/General/Internal/FFI/ValueC.cpp if flag(debug) cc-options: -g test-suite test type: exitcode-stdio-1.0 build-depends: base >= 3 && < 5, test-framework >= 0.5, test-framework-hunit >= 0.2.7, HUnit >= 1.2.4.2, test-framework-quickcheck2 >= 0.3.0.1, QuickCheck >= 2.5.1.1, llvm-general >= 0.1, containers >= 0.4.2.1, mtl >= 2.0.1.0 hs-source-dirs: test extensions: TupleSections FlexibleInstances FlexibleContexts main-is: Test.hs other-modules: LLVM.General.Test.Analysis LLVM.General.Test.Constants LLVM.General.Test.DataLayout LLVM.General.Test.ExecutionEngine LLVM.General.Test.Global LLVM.General.Test.InlineAssembly LLVM.General.Test.Instructions LLVM.General.Test.Metadata LLVM.General.Test.Module LLVM.General.Test.Optimization LLVM.General.Test.Support LLVM.General.Test.Target LLVM.General.Test.Tests