llvm-ffi 3.8.1 → 3.8.1.1
raw patch · 1 files changed
+69/−28 lines, 1 files
Files
- llvm-ffi.cabal +69/−28
llvm-ffi.cabal view
@@ -1,19 +1,33 @@+Cabal-Version: 2.2 Name: llvm-ffi-Version: 3.8.1-License: BSD3+Version: 3.8.1.1+License: BSD-3-Clause 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.+ Installation cannot be done fully automatically.+ It would require Cabal code that is bound to certain Cabal versions+ and is prone to fail.+ We give several non-automatic ways+ that also allow you to choose a particular LLVM version. .+ First possibility is to point Cabal+ to the LLVM installation directories manually.+ On Ubuntu this would look like this:+ .+ > cabal install --extra-include-dirs=/usr/lib/llvm-3.8/include --extra-lib-dirs=/usr/lib/llvm-3.8/lib llvm-ffi+ .+ You can store such paths permanently in a @pkg-config@ file like @llvm.pc@.+ The optimal way would be if LLVM installations or GNU/Linux distributions+ would contain such a file, but they don't.+ Instead, you may generate it using the @llvm-pkg-config@ package+ or write one manually.+ Then you run+ .+ > cabal install -fpkgConfig+ . We try to stay up to date with LLVM releases. The current version of this package is compatible with LLVM 3.4-3.8. Please understand that the package may or may not work@@ -30,8 +44,7 @@ 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.8+Tested-With: GHC==7.4.2, GHC==7.6.3, GHC==7.8.4, GHC==8.0.2, GHC==8.2.2 Build-Type: Simple Extra-Source-Files:@@ -49,6 +62,10 @@ Manual: True Default: False +Flag pkgConfig+ Description: use pkgconfig (llvm.pc) instead of extra-libraries+ Default: False+ Flag specificPkgConfig Description: use llvm-3.x.pc instead of llvm.pc Default: True@@ -74,7 +91,7 @@ Location: http://hub.darcs.net/thielema/llvm-ffi/ Source-Repository this- Tag: 3.8.1+ Tag: 3.8.1.1 Type: darcs Location: http://hub.darcs.net/thielema/llvm-ffi/ @@ -85,6 +102,7 @@ Hs-Source-Dirs: src GHC-Options: -Wall -fwarn-missing-import-lists+ Default-Language: Haskell2010 If flag(developer) GHC-Options: -Werror@@ -116,49 +134,71 @@ LLVM.Target.XCore If flag(llvm304)- If flag(specificPkgConfig)- PkgConfig-Depends: llvm-3.4+ If flag(pkgConfig)+ If flag(specificPkgConfig)+ PkgConfig-Depends: llvm-3.4+ Else+ PkgConfig-Depends: llvm == 3.4 Else- PkgConfig-Depends: llvm == 3.4+ Extra-Libraries: LLVM-3.4 CC-Options: -DHS_LLVM_VERSION=304+ Cxx-Options: -DHS_LLVM_VERSION=304 CPP-Options: -DHS_LLVM_VERSION=304 Else If flag(llvm305)- If flag(specificPkgConfig)- PkgConfig-Depends: llvm-3.5+ If flag(pkgConfig)+ If flag(specificPkgConfig)+ PkgConfig-Depends: llvm-3.5+ Else+ PkgConfig-Depends: llvm == 3.5 Else- PkgConfig-Depends: llvm == 3.5+ Extra-Libraries: LLVM-3.5 CC-Options: -DHS_LLVM_VERSION=305+ Cxx-Options: -DHS_LLVM_VERSION=305 CPP-Options: -DHS_LLVM_VERSION=305 Else If flag(llvm306)- If flag(specificPkgConfig)- PkgConfig-Depends: llvm-3.6+ If flag(pkgConfig)+ If flag(specificPkgConfig)+ PkgConfig-Depends: llvm-3.6+ Else+ PkgConfig-Depends: llvm == 3.6 Else- PkgConfig-Depends: llvm == 3.6+ Extra-Libraries: LLVM-3.6 CC-Options: -DHS_LLVM_VERSION=306+ Cxx-Options: -DHS_LLVM_VERSION=306 CPP-Options: -DHS_LLVM_VERSION=306 Else If flag(llvm307)- If flag(specificPkgConfig)- PkgConfig-Depends: llvm-3.7+ If flag(pkgConfig)+ If flag(specificPkgConfig)+ PkgConfig-Depends: llvm-3.7+ Else+ PkgConfig-Depends: llvm == 3.7 Else- PkgConfig-Depends: llvm == 3.7+ Extra-Libraries: LLVM-3.7 CC-Options: -DHS_LLVM_VERSION=307+ Cxx-Options: -DHS_LLVM_VERSION=307 CPP-Options: -DHS_LLVM_VERSION=307 Else- If flag(specificPkgConfig)- PkgConfig-Depends: llvm-3.8+ If flag(pkgConfig)+ If flag(specificPkgConfig)+ PkgConfig-Depends: llvm-3.8+ Else+ PkgConfig-Depends: llvm == 3.8 Else- PkgConfig-Depends: llvm == 3.8+ Extra-Libraries: LLVM-3.8 CC-Options: -DHS_LLVM_VERSION=308+ Cxx-Options: -DHS_LLVM_VERSION=308 CPP-Options: -DHS_LLVM_VERSION=308 CC-Options: -DHAVE_LLVM_SUPPORT_DYNAMICLIBRARY_H=1 CPP-Options: -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS CPP-Options: -D__STDC_LIMIT_MACROS Include-Dirs: include- C-Sources:+ Extra-Libraries: stdc+++ Cxx-Options: -std=c++0x -std=c++11+ Cxx-Sources: cbits/support.cpp Executable llvm-ffi-example@@ -175,4 +215,5 @@ Hs-Source-Dirs: example GHC-Options: -Wall+ Default-Language: Haskell2010 Main-Is: JIT.hs