[llvm-commits] [llvm] r141992 - in /llvm/trunk: autoconf/configure.ac bindings/ocaml/llvm/META.llvm.in bindings/ocaml/llvm/Makefile configure

Torok Edwin edwintorok at gmail.com
Fri Oct 14 13:38:02 PDT 2011


Author: edwin
Date: Fri Oct 14 15:38:02 2011
New Revision: 141992

URL: http://llvm.org/viewvc/llvm-project?rev=141992&view=rev
Log:
ocaml bindings: add findlib META support

This makes it easier to link against LLVM libs, especially if you are using
_oasis.

Added:
    llvm/trunk/bindings/ocaml/llvm/META.llvm.in
Modified:
    llvm/trunk/autoconf/configure.ac
    llvm/trunk/bindings/ocaml/llvm/Makefile
    llvm/trunk/configure

Modified: llvm/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/autoconf/configure.ac?rev=141992&r1=141991&r2=141992&view=diff
==============================================================================
--- llvm/trunk/autoconf/configure.ac (original)
+++ llvm/trunk/autoconf/configure.ac Fri Oct 14 15:38:02 2011
@@ -1563,6 +1563,9 @@
 dnl Do the first stage of configuration for llvm-config.in.
 AC_CONFIG_FILES([tools/llvm-config/llvm-config.in])
 
+dnl OCaml findlib META file
+AC_CONFIG_FILES([bindings/ocaml/llvm/META.llvm])
+
 dnl Do special configuration of Makefiles
 AC_CONFIG_COMMANDS([setup],,[llvm_src="${srcdir}"])
 AC_CONFIG_MAKEFILE(Makefile)

Added: llvm/trunk/bindings/ocaml/llvm/META.llvm.in
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/bindings/ocaml/llvm/META.llvm.in?rev=141992&view=auto
==============================================================================
--- llvm/trunk/bindings/ocaml/llvm/META.llvm.in (added)
+++ llvm/trunk/bindings/ocaml/llvm/META.llvm.in Fri Oct 14 15:38:02 2011
@@ -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"
+)

Modified: llvm/trunk/bindings/ocaml/llvm/Makefile
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/bindings/ocaml/llvm/Makefile?rev=141992&r1=141991&r2=141992&view=diff
==============================================================================
--- llvm/trunk/bindings/ocaml/llvm/Makefile (original)
+++ llvm/trunk/bindings/ocaml/llvm/Makefile Fri Oct 14 15:38:02 2011
@@ -17,3 +17,24 @@
 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)"

Modified: llvm/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/configure?rev=141992&r1=141991&r2=141992&view=diff
==============================================================================
--- llvm/trunk/configure (original)
+++ llvm/trunk/configure Fri Oct 14 15:38:02 2011
@@ -21052,7 +21052,6 @@
 
 ac_config_files="$ac_config_files Makefile.config"
 
-
 ac_config_files="$ac_config_files llvm.spec"
 
 
@@ -21065,6 +21064,7 @@
 
 ac_config_files="$ac_config_files tools/llvm-config/llvm-config.in"
 
+ac_config_files="$ac_config_files bindings/ocaml/llvm/META.llvm"
 
 ac_config_commands="$ac_config_commands setup"
 





More information about the llvm-commits mailing list