From 308c004ace14c471d904a065582f8a51be9750f4 Mon Sep 17 00:00:00 2001 From: Guillaume Girol Date: Thu, 5 Aug 2021 12:00:00 +0000 Subject: [PATCH] ocamlPackages.llvm: 8 -> 10, fix bytecode linking Fixes #119532 --- pkgs/development/ocaml-modules/llvm/default.nix | 9 +++------ pkgs/top-level/ocaml-packages.nix | 2 +- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/pkgs/development/ocaml-modules/llvm/default.nix b/pkgs/development/ocaml-modules/llvm/default.nix index f984a28869e..3357b99cebf 100644 --- a/pkgs/development/ocaml-modules/llvm/default.nix +++ b/pkgs/development/ocaml-modules/llvm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchpatch, python, cmake, libllvm, ocaml, findlib, ctypes }: +{ stdenv, lib, python, cmake, libllvm, ocaml, findlib, ctypes }: let version = lib.getVersion libllvm; in @@ -12,12 +12,8 @@ stdenv.mkDerivation { buildInputs = [ python ocaml findlib ctypes ]; propagatedBuildInputs = [ libllvm ]; - patches = [ (fetchpatch { - url = "https://raw.githubusercontent.com/ocaml/opam-repository/2bdc193f5a9305ea93bf0f0dfc1fbc327c8b9306/packages/llvm/llvm.7.0.0/files/fix-shared.patch"; - sha256 = "1p98j3b1vrryfn1xa7i50m6mmm4dyw5ldafq6kyh9sfmdihz4zsx"; - })]; - cmakeFlags = [ + "-DBUILD_SHARED_LIBS=YES" # fixes bytecode builds "-DLLVM_OCAML_OUT_OF_TREE=TRUE" "-DLLVM_OCAML_INSTALL_PATH=${placeholder "out"}/ocaml" "-DLLVM_OCAML_EXTERNAL_LLVM_LIBDIR=${lib.getLib libllvm}/lib" @@ -31,6 +27,7 @@ stdenv.mkDerivation { mkdir -p $OCAMLFIND_DESTDIR/ mv $out/ocaml $OCAMLFIND_DESTDIR/llvm mv $OCAMLFIND_DESTDIR/llvm/META{.llvm,} + mv $OCAMLFIND_DESTDIR/llvm/stublibs $OCAMLFIND_DESTDIR/stublibs ''; passthru = { diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 776f9134bca..160c810840e 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -610,7 +610,7 @@ let linenoise = callPackage ../development/ocaml-modules/linenoise { }; llvm = callPackage ../development/ocaml-modules/llvm { - libllvm = pkgs.llvmPackages_8.libllvm; + libllvm = pkgs.llvmPackages_10.libllvm; }; logs = callPackage ../development/ocaml-modules/logs { };