From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Craven Subject: [PATCH 4/4] gnu: ocaml-findlib: Update to 1.7.1. Date: Mon, 2 Jan 2017 18:38:14 +0100 Message-ID: <20170102173814.6837-4-david@craven.ch> References: <20170102173814.6837-1-david@craven.ch> Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:36392) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cO6Z7-0003VX-Kr for guix-devel@gnu.org; Mon, 02 Jan 2017 12:38:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cO6Z4-0007a0-6p for guix-devel@gnu.org; Mon, 02 Jan 2017 12:38:33 -0500 Received: from so254-10.mailgun.net ([198.61.254.10]:17943) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cO6Z4-0007ZO-1W for guix-devel@gnu.org; Mon, 02 Jan 2017 12:38:30 -0500 In-Reply-To: <20170102173814.6837-1-david@craven.ch> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org * gnu/packages/ocaml.scm (ocaml-findlib)[arguments]: Move ocaml-findlib-make-install.patch to phase and set ldconf="ignore" in findlib.conf.in. * gnu/local.mk (dist_patch_DATA): Remove old patch. --- gnu/local.mk | 1 - gnu/packages/ocaml.scm | 34 +++++++++++++++------- .../patches/ocaml-findlib-make-install.patch | 20 ------------- 3 files changed, 24 insertions(+), 31 deletions(-) delete mode 100644 gnu/packages/patches/ocaml-findlib-make-install.patch diff --git a/gnu/local.mk b/gnu/local.mk index 6ab1c1c48..9e35b0d0b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -750,7 +750,6 @@ dist_patch_DATA = \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-db4.patch \ %D%/packages/patches/ocaml-CVE-2015-8869.patch \ - %D%/packages/patches/ocaml-findlib-make-install.patch \ %D%/packages/patches/ola-readdir-r.patch \ %D%/packages/patches/openexr-missing-samples.patch \ %D%/packages/patches/openjpeg-CVE-2016-5157.patch \ diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index f962be8d4..2d064408b 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -720,15 +720,14 @@ to the other.") (define-public ocaml-findlib (package (name "ocaml-findlib") - (version "1.6.1") + (version "1.7.1") (source (origin (method url-fetch) (uri (string-append "http://download.camlcity.org/download/" "findlib" "-" version ".tar.gz")) (sha256 (base32 - "02abg1lsnwvjg3igdyb8qjgr5kv1nbwl4gaf8mdinzfii5p82721")) - (patches (search-patches "ocaml-findlib-make-install.patch")))) + "1vsys5gpahi36nxv5yx29zhwn8b2d7sqqswza05vxy5bx5wrljsx")))) (build-system gnu-build-system) (native-inputs `(("camlp4" ,camlp4) @@ -738,18 +737,33 @@ to the other.") `(#:tests? #f ; no test suite #:parallel-build? #f #:make-flags (list "all" "opt") - #:phases (modify-phases %standard-phases - (replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (system* - "./configure" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-findlib.conf.in + (lambda _ + (let ((port (open-file "findlib.conf.in" "w" #:encoding "utf-8"))) + (format port "ldconf=\"ignore\"~%") + (close-port port)) + #t)) + (add-after 'unpack 'patch-findlib-make-install + (lambda _ + (substitute* "src/findlib/Makefile" + (("^.*topfind.*OCAML_CORE_STDLIB.*$") + "\ttest $(INSTALL_TOPFIND) -eq 0 || cp topfind \"$(prefix)$(OCAML_SITELIB)\"\n")) + #t)) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (system* "./configure" "-bindir" (string-append out "/bin") "-config" (string-append out "/etc/ocamfind.conf") "-mandir" (string-append out "/share/man") "-sitelib" (string-append out "/lib/ocaml/site-lib") "-with-toolbox"))))))) + (native-search-paths + (list (search-path-specification + (variable "OCAMLPATH") + (files (list (string-append "lib/ocaml/site-lib")))))) (home-page "http://projects.camlcity.org/projects/findlib.html") (synopsis "Management tool for OCaml libraries") (description diff --git a/gnu/packages/patches/ocaml-findlib-make-install.patch b/gnu/packages/patches/ocaml-findlib-make-install.patch deleted file mode 100644 index 238f9ca3c..000000000 --- a/gnu/packages/patches/ocaml-findlib-make-install.patch +++ /dev/null @@ -1,20 +0,0 @@ -Ocaml wants to install its "core" libraries in OCAML_CORE_STDLIB. That -does not work in a store-based distribution. - -A solution was already provided by Nix - - https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/tools/ocaml/findlib/install_topfind.patch - -regenerated for Guix. - ---- findlib-1.5.3/src/findlib/Makefile 2014-09-16 13:21:46.000000000 +0200 -+++ findlib-1.5.3/src/findlib/Makefile.new 2014-10-01 14:30:54.141082521 +0200 -@@ -89,7 +89,7 @@ - install: all - mkdir -p "$(prefix)$(OCAML_SITELIB)/$(NAME)" - mkdir -p "$(prefix)$(OCAMLFIND_BIN)" -- test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(prefix)$(OCAML_CORE_STDLIB)" -+ test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(prefix)$(OCAML_SITELIB)" - files=`$(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib.cmxa findlib.a findlib.cmxs findlib_dynload.cma findlib_dynload.cmxa findlib_dynload.a findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi META` && \ - cp $$files "$(prefix)$(OCAML_SITELIB)/$(NAME)" - f="ocamlfind$(EXEC_SUFFIX)"; { test -f ocamlfind_opt$(EXEC_SUFFIX) && f="ocamlfind_opt$(EXEC_SUFFIX)"; }; \ -- 2.11.0