From patchwork Thu Jul 28 04:08:39 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: John Kehayias X-Patchwork-Id: 41023 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id EF6D827BBEA; Thu, 28 Jul 2022 05:09:20 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,SPF_HELO_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 1DD4827BBE9 for ; Thu, 28 Jul 2022 05:09:20 +0100 (BST) Received: from localhost ([::1]:41998 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oGupr-0001JN-8p for patchwork@mira.cbaines.net; Thu, 28 Jul 2022 00:09:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56450) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oGupa-0001JC-Ki for guix-patches@gnu.org; Thu, 28 Jul 2022 00:09:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:39316) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oGupa-0001hi-BI for guix-patches@gnu.org; Thu, 28 Jul 2022 00:09:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oGupa-0005ZG-54 for guix-patches@gnu.org; Thu, 28 Jul 2022 00:09:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#56806] [PATCH 1/9] gnu: Add ocaml-luv. References: <9PX8REXHYFolHkT-TXF_SZcRFDEe1-1KwK9riBoz1tnsKV2raznmLO3YTlzbpdyJ9dBOqnpcaUomHmLfOWjytFrkLEvIW_upqCAA_-byN50=@protonmail.com> In-Reply-To: <9PX8REXHYFolHkT-TXF_SZcRFDEe1-1KwK9riBoz1tnsKV2raznmLO3YTlzbpdyJ9dBOqnpcaUomHmLfOWjytFrkLEvIW_upqCAA_-byN50=@protonmail.com> Resent-From: John Kehayias Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 28 Jul 2022 04:09:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56806 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: "56806@debbugs.gnu.org" <56806@debbugs.gnu.org> Received: via spool by 56806-submit@debbugs.gnu.org id=B56806.165898133521384 (code B ref 56806); Thu, 28 Jul 2022 04:09:02 +0000 Received: (at 56806) by debbugs.gnu.org; 28 Jul 2022 04:08:55 +0000 Received: from localhost ([127.0.0.1]:57298 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oGupS-0005Yp-NB for submit@debbugs.gnu.org; Thu, 28 Jul 2022 00:08:55 -0400 Received: from mail-40131.protonmail.ch ([185.70.40.131]:63871) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oGupQ-0005YZ-2t for 56806@debbugs.gnu.org; Thu, 28 Jul 2022 00:08:52 -0400 Date: Thu, 28 Jul 2022 04:08:39 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1658981325; x=1659240525; bh=mMNxz6NV5EJxc9he9JrPF2AxuTbsoAEY0P/yB+xUxw0=; h=Date:To:From:Reply-To:Subject:Message-ID:Feedback-ID:From:To:Cc: Date:Subject:Reply-To:Feedback-ID:Message-ID; b=fH1vgoAVbaGRWoxWI+hfMX6jSVFQoid8BTziyQxvjQKBep6UNzyZE00eCiKG/TN8T 9oap3L7/3xhOl1TgbY5I91MSLyWaJWQFET2tzMEpn0G605NR2N7VkREcczfmrhu0XB niqpQ11ok4cp/4BhduGkfSC38HKRomEwm/HtAzAehPwLYYmjGl9qADg/PXfA2xwNTO koBal108vKuQuG/5qnVoeImv4Dy6GOhInFMeWk9Axat3DLS2zjcB1u0ZwbxqQG9zwP HT+41/pwIC1Hde5ewr1tAbQeaTKv13/ML+Gf3hWel338+5lqA2ceOAG57v5WD2XNOx q8p0sop75uXgw== Message-ID: Feedback-ID: 7805494:user:proton MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: John Kehayias X-ACL-Warn: , John Kehayias via Guix-patches X-Patchwork-Original-From: John Kehayias via Guix-patches via From: John Kehayias X-getmail-retrieved-from-mailbox: Patches Empty Message From d96390019a22b1b01b5845f971e46523a42848e5 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Wed, 27 Jul 2022 23:31:26 -0400 Subject: [PATCH 1/9] gnu: Add ocaml-luv. * gnu/packages/ocaml.scm (ocaml-luv): New variable. --- gnu/packages/ocaml.scm | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index ff24861eb0..895b99320e 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2021 Maxime Devos ;;; Copyright © 2021 Sarah Morgensen ;;; Copyright © 2022 Maxim Cournoyer +;;; Copyright © 2022 John Kehayias ;;; ;;; This file is part of GNU Guix. ;;; @@ -2624,6 +2625,48 @@ (define-public ocaml-lwt locks or other synchronization primitives.") (license license:lgpl2.1))) +(define-public ocaml-luv + (package + (name "ocaml-luv") + (version "0.5.11") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/aantron/luv/releases/download/" + version "/luv-" version ".tar.gz")) + (sha256 + (base32 + "0hrsi8n2l31bcwgj847df4chjgqb9lmwkaky8fvvi15k25rz9v6c")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove bundled configure and libuv. + (delete-file-recursively "src/c/vendor") + #t)))) + (build-system dune-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-before 'build 'use-system-libuv + (lambda _ + (setenv "LUV_USE_SYSTEM_LIBUV" "yes"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "dune" "runtest" "--no-buffer" "--force"))))))) + (inputs (list libuv)) + (propagated-inputs (list ocaml-ctypes ocaml-result ocaml-odoc)) + (native-inputs (list ocaml-base ocaml-alcotest)) + (home-page "https://github.com/aantron/luv") + (synopsis "Binding to libuv: cross-platform asynchronous I/O") + (description + "Luv is a binding to libuv, the cross-platform C library that does +asynchronous I/O in Node.js and runs its main loop. Besides asynchronous I/O, +libuv also supports multiprocessing and multithreading. Multiple event loops +can be run in different threads. libuv also exposes a lot of other +functionality, amounting to a full OS API, and an alternative to the standard +module Unix.") + (license license:expat))) + (define-public ocaml-lwt-react (package (inherit ocaml-lwt) -- 2.37.1