commit:     77e4cb85f6781ff1bb88bc9b9033f65226673ef7
Author:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 12 18:22:07 2015 +0000
Commit:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
CommitDate: Mon Oct 12 18:22:18 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77e4cb85

sys-devel/llvm: fix some USE=ocaml issues

Bug: 559624
Bug: 562008

Package-Manager: portage-2.2.23

 sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-build_doc.patch | 12 ++++++++++++
 sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-multilib.patch  |  8 ++++----
 sys-devel/llvm/llvm-3.7.0-r2.ebuild                         |  7 +++++--
 3 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-build_doc.patch 
b/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-build_doc.patch
new file mode 100644
index 0000000..d53ce19
--- /dev/null
+++ b/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-build_doc.patch
@@ -0,0 +1,12 @@
+diff -Naur llvm-3.7.0.src.orig/docs/CMakeLists.txt 
llvm-3.7.0.src/docs/CMakeLists.txt
+--- llvm-3.7.0.src.orig/docs/CMakeLists.txt    2015-08-18 18:48:44.000000000 
+0200
++++ llvm-3.7.0.src/docs/CMakeLists.txt 2015-10-12 14:40:00.985384589 +0200
+@@ -115,7 +115,7 @@
+ endif()
+ 
+ list(FIND LLVM_BINDINGS_LIST ocaml uses_ocaml)
+-if( NOT uses_ocaml LESS 0 )
++if( NOT uses_ocaml LESS 0 AND LLVM_BUILD_DOCS )
+   set(doc_targets
+         ocaml_llvm
+         ocaml_llvm_all_backends

diff --git a/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-multilib.patch 
b/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-multilib.patch
index caba3d1..024bad7 100644
--- a/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-multilib.patch
+++ b/sys-devel/llvm/files/cmake/llvm-3.7.0-ocaml-multilib.patch
@@ -14,13 +14,13 @@
  
    install(FILES ${install_files}
 -          DESTINATION lib/ocaml)
-+          DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml)
++          DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml/llvm)
    install(FILES ${install_shlibs}
            PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
                        GROUP_READ GROUP_EXECUTE
                        WORLD_READ WORLD_EXECUTE
 -          DESTINATION lib/ocaml)
-+          DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml)
++          DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml/llvm)
  
    foreach( install_file ${install_files} ${install_shlibs} )
      get_filename_component(filename "${install_file}" NAME)
@@ -31,7 +31,7 @@
  
    install(FILES "${LLVM_LIBRARY_DIR}/ocaml/META.llvm_${TARGET}"
 -          DESTINATION lib/ocaml)
-+          DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml)
++          DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml/llvm)
  endforeach()
 --- llvm-3.7.0rc3.src-orig/bindings/ocaml/llvm/CMakeLists.txt  2014-12-30 
14:24:07.000000000 +1100
 +++ llvm-3.7.0rc3.src/bindings/ocaml/llvm/CMakeLists.txt       2015-08-30 
19:23:43.561583624 +1000
@@ -40,4 +40,4 @@
  
  install(FILES "${LLVM_LIBRARY_DIR}/ocaml/META.llvm"
 -        DESTINATION lib/ocaml)
-+        DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml)
++        DESTINATION ${CMAKE_INSTALL_LIBDIR}/ocaml/llvm)

diff --git a/sys-devel/llvm/llvm-3.7.0-r2.ebuild 
b/sys-devel/llvm/llvm-3.7.0-r2.ebuild
index de885b7..303ce98 100644
--- a/sys-devel/llvm/llvm-3.7.0-r2.ebuild
+++ b/sys-devel/llvm/llvm-3.7.0-r2.ebuild
@@ -40,9 +40,10 @@ COMMON_DEPEND="
        libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
        ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
        ocaml? (
-               dev-lang/ocaml:0=
+               >=dev-lang/ocaml-4.00.0:0=
                dev-ml/findlib
-               dev-ml/ocaml-ctypes )"
+               dev-ml/ocaml-ctypes
+               !!<=sys-devel/llvm-3.7.0-r2[ocaml] )"
 # configparser-3.2 breaks the build (3.3 or none at all are fine)
 DEPEND="${COMMON_DEPEND}
        dev-lang/perl
@@ -151,6 +152,8 @@ src_prepare() {
        sed -e "/RUN/s/-warn-error A//" -i test/Bindings/OCaml/*ml  || die
        # Fix libdir for ocaml bindings install, bug #559134
        epatch "${FILESDIR}"/cmake/${P}-ocaml-multilib.patch
+       # Do not build/install ocaml docs with USE=-doc, bug #562008
+       epatch "${FILESDIR}"/cmake/${P}-ocaml-build_doc.patch
 
        # Make it possible to override Sphinx HTML install dirs
        # https://llvm.org/bugs/show_bug.cgi?id=23780

Reply via email to