From patchwork Sat Oct 21 02:01:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Philip McGrath X-Patchwork-Id: 55106 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 C11B427BBE9; Sat, 21 Oct 2023 03:03:15 +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,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 190FC27BBE2 for ; Sat, 21 Oct 2023 03:03:12 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qu1K5-0000Ax-JM; Fri, 20 Oct 2023 22:02:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qu1K1-0000A0-Df for guix-patches@gnu.org; Fri, 20 Oct 2023 22:02:38 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qu1Jz-0007nT-C1 for guix-patches@gnu.org; Fri, 20 Oct 2023 22:02:35 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qu1KQ-0001XF-Qh for guix-patches@gnu.org; Fri, 20 Oct 2023 22:03:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#56534] [PATCH v2 2/4] gnu: Add racket-portaudio-librsoundcallbacks. Resent-From: Philip McGrath Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Oct 2023 02:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56534 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 56534@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= , Philip McGrath , Rostislav Svoboda Received: via spool by 56534-submit@debbugs.gnu.org id=B56534.16978537485834 (code B ref 56534); Sat, 21 Oct 2023 02:03:02 +0000 Received: (at 56534) by debbugs.gnu.org; 21 Oct 2023 02:02:28 +0000 Received: from localhost ([127.0.0.1]:41942 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qu1Jr-0001W1-Lo for submit@debbugs.gnu.org; Fri, 20 Oct 2023 22:02:28 -0400 Received: from wout5-smtp.messagingengine.com ([64.147.123.21]:48075) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qu1Jo-0001VU-Co for 56534@debbugs.gnu.org; Fri, 20 Oct 2023 22:02:25 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id E78523200974; Fri, 20 Oct 2023 22:01:50 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Fri, 20 Oct 2023 22:01:51 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= philipmcgrath.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to; s=fm3; t=1697853710; x=1697940110; bh=wKJBES/hLW bQ+VeP1IVdmy3jjwbT9vWXKCpx1g30cJc=; b=QvISndaadrFpqBHrjMEL4/YKDh RBo+y7RQEYfqwM+TfJnTE5LiNkicRi98pqqezJYrGprmvhfRz201tQzzRgOL8vF8 TBRqoRA6iw47nl5IpcPv/aFffEBszYQ7qbAr+QQ+moWDvnBES7bKL6PnC7D92zcs 8289fnab4EDWinRzK+qL5V+J+v3bravD9PqPI6WPqHzHXnEvKrROLUSo+NUW2MFB URa7yayb9gnREMHPiZZroKKmZ/VDOcEo9MBelbYaHzq5HqMnYw0JTflMCMUipFlK X5um+O5FVTXABjho6dknLtXdviaO6EhlL2kr9cSTXU6EIvEyoueA3mmh8SuA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1697853710; x= 1697940110; bh=wKJBES/hLWbQ+VeP1IVdmy3jjwbT9vWXKCpx1g30cJc=; b=n eq8OjkLHmLtZz4FpuF/w4oBcenGVJU9W65W+AlvrqRsfbFW6w8zF5+RFzl2w2K3s FEY2hNfNEFEO6UMCyfccWBhGrVYlJF3vLoBZBxEXih6yj/lbpzbalF6bRtzcdOmx Tt3FKJua/Tapcvo2+DOHMeaHa97pMf0gC7A9nF0e+t4wOYoqb3hus6VxsGxJDSKK c5yRhrIxrHBBLCHkET9UIMEsT6i+7OSOg+/IAyBqxzWU56IGk8mV3BM3GGuejx+F qbM5dz7K4NYxt20CN5bcwNc7q5FYSiQbS3Q0qWWQvkgRhYud34ZCboNNEOfuj7mi nHn71yqRW4nrHrh1O9xfw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrjeelgdehudcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefrhhhilhhi phcuofgtifhrrghthhcuoehphhhilhhiphesphhhihhlihhpmhgtghhrrghthhdrtghomh eqnecuggftrfgrthhtvghrnhephfefgfetieffleegheeigfevhfeiueeukeeluedtteeh teetteelveeiuddukeegnecuffhomhgrihhnpehgihhthhhusgdrtghomhdprhgrtghkvg htqdhlrghnghdrohhrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgr ihhlfhhrohhmpehphhhilhhiphesphhhihhlihhpmhgtghhrrghthhdrtghomh X-ME-Proxy: Feedback-ID: i2b1146f3:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 20 Oct 2023 22:01:49 -0400 (EDT) From: Philip McGrath Date: Fri, 20 Oct 2023 22:01:12 -0400 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: References: <80cbe78b-921b-4b05-baa6-7216fec01297@app.fastmail.com> 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/racket.scm (racket-portaudio-librsoundcallbacks): New variable. --- gnu/packages/racket.scm | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm index a127f75669..43187318d8 100644 --- a/gnu/packages/racket.scm +++ b/gnu/packages/racket.scm @@ -26,6 +26,7 @@ (define-module (gnu packages racket) #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix gexp) + #:use-module (guix build-system copy) #:use-module (guix build-system gnu) #:use-module (guix diagnostics) #:use-module (guix i18n) @@ -1032,6 +1033,49 @@ (define-public racket DrRacket IDE, libraries for GUI and web programming, and implementations of languages such as Typed Racket, R5RS and R6RS Scheme, Algol 60, and Datalog."))) +(define-public racket-portaudio-librsoundcallbacks + (let ((commit "bb4faf5e5500d2b89c22f16ba9adf455b263f097") + (revision "1")) + (package + (name "racket-portaudio-librsoundcallbacks") + (version (git-version "0.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jbclements/portaudio") + (commit commit))) + (sha256 + (base32 "11cx1a9admsfkbm1gi32yicaawrn448m7rbmayyzh50kdywm5lfg")) + (snippet + #~(begin + (use-modules (guix build utils)) + (substitute* "info.rkt" + ;; remove dependencies on pre-built support libraries + (("[(]\"portaudio-.*linux" orig) + (string-append "#|removed for Guix|# #;" orig))))) + (file-name (git-file-name "racket-portaudio" version)))) + (build-system copy-build-system) + (arguments + (list + #:install-plan #~`(("librsoundcallbacks.so" "lib/")) + #:phases + #~(modify-phases %standard-phases + (add-before 'install 'build + (lambda args + (chdir "portaudio/lib") + (invoke #$(cc-for-target) + "-O2" "-fPIC" "-shared" + "-o" "librsoundcallbacks.so" + "callbacks.c")))))) + (home-page "https://pkgs.racket-lang.org/package/portaudio") + (synopsis "Support library for Racket's PortAudio bindings") + (description "The librsoundcallbacks library is used internally by the +Racket bindings for PortAudio. It provides an adapter between the low-level +callbacks used by PortAudio, which must never block, and higher-level +callbacks supplied @i{via} Racket's foreign interface.") + (license license:lgpl2.0+)))) + (define configure-layer.rkt (scheme-file "configure-layer.rkt"