summaryrefslogtreecommitdiffstats
path: root/llvm/bindings/ocaml
diff options
context:
space:
mode:
authorTorok Edwin <edwintorok@gmail.com>2011-10-14 20:38:02 +0000
committerTorok Edwin <edwintorok@gmail.com>2011-10-14 20:38:02 +0000
commit229f8d7a9f2eae305c5d71dca8073b54d88aeb44 (patch)
tree6a608d8bea96593d34ba7e6c2337227a441d972e /llvm/bindings/ocaml
parentd09b75734b8d3579c39c3c96b5054d9971d89e41 (diff)
downloadbcm5719-llvm-229f8d7a9f2eae305c5d71dca8073b54d88aeb44.tar.gz
bcm5719-llvm-229f8d7a9f2eae305c5d71dca8073b54d88aeb44.zip
ocaml bindings: add findlib META support
This makes it easier to link against LLVM libs, especially if you are using _oasis. llvm-svn: 141992
Diffstat (limited to 'llvm/bindings/ocaml')
-rw-r--r--llvm/bindings/ocaml/llvm/META.llvm.in63
-rw-r--r--llvm/bindings/ocaml/llvm/Makefile21
2 files changed, 84 insertions, 0 deletions
diff --git a/llvm/bindings/ocaml/llvm/META.llvm.in b/llvm/bindings/ocaml/llvm/META.llvm.in
new file mode 100644
index 00000000000..29e7eb418ef
--- /dev/null
+++ b/llvm/bindings/ocaml/llvm/META.llvm.in
@@ -0,0 +1,63 @@
+name = "llvm"
+version = "@PACKAGE_VERSION@"
+description = "Low Level Virtual Machine OCaml bindings"
+archive(byte) = "llvm.cma"
+archive(native) = "llvm.cmxa"
+directory = "."
+linkopts = "-ccopt -lstdc++"
+
+package "analysis" (
+ requires = "llvm"
+ version = "@PACKAGE_VERSION@"
+ description = "Intermediate representation analysis for LLVM"
+ archive(byte) = "llvm_analysis.cma"
+ archive(native) = "llvm_analysis.cmxa"
+)
+
+package "bitreader" (
+ requires = "llvm"
+ version = "@PACKAGE_VERSION@"
+ description = "Bitcode reader for LLVM"
+ archive(byte) = "llvm_bitreader.cma"
+ archive(native) = "llvm_bitreader.cmxa"
+)
+
+package "bitwriter" (
+ requires = "llvm,unix"
+ version = "@PACKAGE_VERSION@"
+ description = "Bitcode writer for LLVM"
+ archive(byte) = "llvm_bitwriter.cma"
+ archive(native) = "llvm_bitwriter.cmxa"
+)
+
+package "executionengine" (
+ requires = "llvm,llvm.target"
+ version = "@PACKAGE_VERSION@"
+ description = "JIT and Interpreter for LLVM"
+ archive(byte) = "llvm_executionengine.cma"
+ archive(native) = "llvm_executionengine.cmxa"
+)
+
+package "ipo" (
+ requires = "llvm"
+ version = "@PACKAGE_VERSION@"
+ description = "IPO Transforms for LLVM"
+ archive(byte) = "llvm_ipo.cma"
+ archive(native) = "llvm_ipo.cmxa"
+)
+
+package "scalar_opts" (
+ requires = "llvm"
+ version = "@PACKAGE_VERSION@"
+ description = "Scalar Transforms for LLVM"
+ archive(byte) = "llvm_scalar_opts.cma"
+ archive(native) = "llvm_scalar_opts.cmxa"
+)
+
+package "target" (
+ requires = "llvm"
+ version = "@PACKAGE_VERSION@"
+ description = "Target Information for LLVM"
+ archive(byte) = "llvm_target.cma"
+ archive(native) = "llvm_target.cmxa"
+)
diff --git a/llvm/bindings/ocaml/llvm/Makefile b/llvm/bindings/ocaml/llvm/Makefile
index 99e347bc131..673eaa2e35a 100644
--- a/llvm/bindings/ocaml/llvm/Makefile
+++ b/llvm/bindings/ocaml/llvm/Makefile
@@ -17,3 +17,24 @@ UsedComponents := core
UsedOcamLibs := llvm
include ../Makefile.ocaml
+
+all-local:: copy-meta
+install-local:: install-meta
+uninstall-local:: uninstall-meta
+
+DestMETA := $(PROJ_libocamldir)/META.llvm
+
+# Easy way of generating META in the objdir
+copy-meta: $(OcamlDir)/META.llvm
+
+$(OcamlDir)/META.llvm: META.llvm
+ $(Verb) $(CP) -f $< $@
+
+install-meta:: $(ObjDir)/META.llvm
+ $(Echo) "Install $(BuildMode) $(DestMETA)"
+ $(Verb) $(MKDIR) $(PROJ_libocamldir)
+ $(Verb) $(DataInstall) META.llvm "$(DestMETA)"
+
+uninstall-meta::
+ $(Echo) "Uninstalling $(DestMETA)"
+ -$(Verb) $(RM) -f "$(DestMETA)"
OpenPOWER on IntegriCloud