GNU bug report logs - #77990
[PATCH] gnu: Add emacs-ffi.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: "Suhail Singh" <suhailsingh247@HIDDEN>; Keywords: patch; dated Tue, 22 Apr 2025 15:26:02 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

Message received at 77990 <at> debbugs.gnu.org:


Received: (at 77990) by debbugs.gnu.org; 23 Apr 2025 02:32:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 22 22:32:40 2025
Received: from localhost ([127.0.0.1]:51191 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u7Puh-0001Yi-Vu
	for submit <at> debbugs.gnu.org; Tue, 22 Apr 2025 22:32:40 -0400
Received: from mail-qv1-xf43.google.com ([2607:f8b0:4864:20::f43]:58533)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <suhailsingh247@HIDDEN>)
 id 1u7Pud-0001YI-OY
 for 77990 <at> debbugs.gnu.org; Tue, 22 Apr 2025 22:32:36 -0400
Received: by mail-qv1-xf43.google.com with SMTP id
 6a1803df08f44-6e8f94c2698so28466836d6.0
 for <77990 <at> debbugs.gnu.org>; Tue, 22 Apr 2025 19:32:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745375550; x=1745980350; darn=debbugs.gnu.org;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=DFAxJ/GNP3tnQHNZT+/8vRIwPXDBgNn0lvUjOOnhLr8=;
 b=fgMCoM7y/yF0SXmkn7tSnBBBioxTRDGUjN3hIGLdFHkCms8imsNfU3KZ53cSu+lp54
 aHsiKrNlAb2Wqw5mDaXSRR5zOkaW1aQkV6wt/DcPRhok+YHoj9ZZF0C3htq/5c2q4PQy
 kNPhbxiXHm3Niga8VTNqE0Ll919Nxct4glsqMM4StiiYuFNW6CiAzjEHrdXO9VB3EciJ
 UofmIEVksNONb1QnhM++beFOHs2zq4K2GylToC9qtQCmZzlEVFSEU2EJE7pan71yA154
 pMJkHOQVrsaNuH5P0ZJIOA6c9xr/zo0YHkjKr//PUNvLg6H1Sy8CY7ykfqiMPJ115k+9
 P7nw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745375550; x=1745980350;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=DFAxJ/GNP3tnQHNZT+/8vRIwPXDBgNn0lvUjOOnhLr8=;
 b=bZeaRJj6BPbhsdY5YjveuUakUDzdLXru3ot2tojlslFDUqAQ6bJqC3xnzO70vwbQ1T
 llYPKr9gbiOEXTd3K+De/qph2aQKkAETGPWEngcpnDCntrpO8OFh8YH1iDmO+sj5Mv61
 sqifbc4eZVNwG4x0HjBVboKibhoA0WCQkH/VALuaNc7omrDdxPKUOKw9IHyMAKn04Phm
 LKV7hcgRgNfqklC8ODVJerUax+P9bzrUWdcI7Fsphg9ecoP2tUlVEWrS9XfFeNoN6UkL
 b+pwJCQjZ5WPS0Pa33hVlbnTXHYWkTSdGEqgqHZ0evanElyMjGphz/QzRqM7821QGf2E
 S1rQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCVdT2dDMMhSr7LAr3qvQiMirc+E5EjnwVTYQnnD72iQEIi7M4U/p7Yc5nqg2HnEPhW0h3uFtA==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YzJjKw32e6vpML1DASICAAiBvzhDZYDeOjiR2NsEVjfQcLWZMMB
 mR8ypavZkXOvI/+yI8YenU0P3PDG3s1/zHkI2oMt/q+DRDt9iy/k
X-Gm-Gg: ASbGncvIWJ9Flp1QWTm9xDktSPt4C8a+YwoZiAsofbmOmbPtEZr2wbfYB2a0BXScyil
 F0gr9T/d7b5sJGDS9+jjeEmoA6eCf0DRRuVsKC6YGpuo1M7JGiV0g+w24Jnzg2MobC4VqVzYohH
 qq1rMHTgTzC9dPJ52EPAJKEEDaL/B59cbWArkWBNYJffx2s+/Ila2MgOqjR0skp0yXN6Q4jWjAf
 Wx9IYkU3VwPlY3MhKP+4VXwKnOqU95Et2Ph5YI+3RtHXcX9YBYvxkQRB+X621RpJsrtkir432eb
 YVSQUkZ9w0SVmR/AxTf9DMH2rpB2SSy3U20kptFLcc9VMIZGhyD6k5AOSN7JTwSnHxDtgMs7tBJ
 otEhjc/i1/dGjxUvxDWOF1HfWUw==
X-Google-Smtp-Source: AGHT+IGaUE+jF47W92hn+AaZYVajQggdBfOVWKse8NNY8SDrW3y6QZ9867/gFI6GaeBqgsvrCsxqCg==
X-Received: by 2002:a05:6214:404:b0:6e8:9a55:824f with SMTP id
 6a1803df08f44-6f2c4512f13mr253488186d6.6.1745375549546; 
 Tue, 22 Apr 2025 19:32:29 -0700 (PDT)
Received: from gnus (lnsm2-montreal01-69-158-82-155.internet.virginmobile.ca.
 [69.158.82.155]) by smtp.gmail.com with ESMTPSA id
 6a1803df08f44-6f2c2b324e2sm64702016d6.61.2025.04.22.19.32.28
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 22 Apr 2025 19:32:29 -0700 (PDT)
From: Suhail Singh <suhailsingh247@HIDDEN>
To: Cayetano Santos <csantosb@HIDDEN>
Subject: Re: [bug#77990] [PATCH v2] gnu: Add emacs-ffi.
In-Reply-To: <87jz7cowv0.fsf@HIDDEN> (Cayetano Santos's message of
 "Tue, 22 Apr 2025 20:49:07 +0200")
References: <8514e002c91917232069fcff792b089241b02cbc.1745335509.git.suhail@HIDDEN>
 <bf785b91e8c2fe9844c2fc3c472d86d2e39e61e4.1745335913.git.suhail@HIDDEN>
 <87jz7cowv0.fsf@HIDDEN>
Date: Tue, 22 Apr 2025 22:32:28 -0400
Message-ID: <874iyfip4z.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.3 (/)
X-Debbugs-Envelope-To: 77990
Cc: Ian Eure <ian@HIDDEN>,
 Katherine Cox-Buday <cox.katherine.e+guix@HIDDEN>,
 Liliana Marie Prikler <liliana.prikler@HIDDEN>,
 Andrew Tropin <andrew@HIDDEN>, Hilton Chain <hako@HIDDEN>,
 77990 <at> debbugs.gnu.org, Divya Ranjan Pattanaik <divya@HIDDEN>,
 Suhail Singh <suhailsingh247@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

Cayetano Santos <csantosb@HIDDEN> writes:

>> +              ;; Install the shared object file into /lib.
>> +              (install-file "build/lib/ffi-module.so"
>> +                            (string-append #$output "/lib"))))
>
> I have a doubt about where do we  put .so files.
>
> - lib
> - lib/package
> - lib/emacs (see emacs-jinx)
>
> Other than this, LFTM.

IIUC the standard place for shared libraries is in #$output/lib.  I
don't know of any reason to deviate from that in this case.  To the
extent it matters, at least one other dynamic module (emacs-sqlite3-api)
also uses that convention.

I'm no authority, but it seems that Emacs dynamic modules are simply
less consistent about storing libraries in the standard location, rather
than there being a principled reason against using the standard
convention.

Thanks for the review.

-- 
Suhail




Information forwarded to guix-patches@HIDDEN:
bug#77990; Package guix-patches. Full text available.

Message received at 77990 <at> debbugs.gnu.org:


Received: (at 77990) by debbugs.gnu.org; 22 Apr 2025 18:49:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 22 14:49:21 2025
Received: from localhost ([127.0.0.1]:49875 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u7IgL-0002A8-3R
	for submit <at> debbugs.gnu.org; Tue, 22 Apr 2025 14:49:21 -0400
Received: from confino.investici.org ([2a11:7980:1::2:0]:62553)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <csantosb@HIDDEN>)
 id 1u7IgH-00029r-2n
 for 77990 <at> debbugs.gnu.org; Tue, 22 Apr 2025 14:49:19 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inventati.org;
 s=stigmate; t=1745347753;
 bh=wHQtYbtsUBG1D0RQY/tpspuWKGJjnGYEZjqGuDd/x5Y=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=fd4q9ygf+Q4BNZnBRMai9HFeZ4qu5I52P48cx6vBhMZvBnNxjaSR+oN2qkLPGBXh4
 C+S2cRyXZ73hBZSyZdP4OGcG2fZTErHIWDzFl9O6kliM+wuNSpf2ehX35jtFauACyM
 M3ln1cIBC/MopwALyj5n+CzhiLoiFtyfEVawK3wI=
Received: from mx1.investici.org (unknown [127.0.0.1])
 by confino.investici.org (Postfix) with ESMTP id 4Zhrqs192Vz1109;
 Tue, 22 Apr 2025 18:49:13 +0000 (UTC)
Received: from [93.190.126.19] (mx1.investici.org [93.190.126.19])
 (Authenticated sender: cayetano.santos@HIDDEN) by localhost (Postfix)
 with ESMTPSA id 4Zhrqr0G5wz1106; 
 Tue, 22 Apr 2025 18:49:11 +0000 (UTC)
From: Cayetano Santos <csantosb@HIDDEN>
To: "Suhail Singh" <suhailsingh247@HIDDEN>
Subject: Re: [bug#77990] [PATCH v2] gnu: Add emacs-ffi.
In-Reply-To: <bf785b91e8c2fe9844c2fc3c472d86d2e39e61e4.1745335913.git.suhail@HIDDEN>
 (Suhail Singh's message of "Tue, 22 Apr 2025 10:51:53 -0400")
References: <8514e002c91917232069fcff792b089241b02cbc.1745335509.git.suhail@HIDDEN>
 <bf785b91e8c2fe9844c2fc3c472d86d2e39e61e4.1745335913.git.suhail@HIDDEN>
User-Agent: mu4e 1.12.9; emacs 29.4
Date: Tue, 22 Apr 2025 20:49:07 +0200
Message-ID: <87jz7cowv0.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 77990
Cc: Ian Eure <ian@HIDDEN>,
 Katherine Cox-Buday <cox.katherine.e+guix@HIDDEN>,
 Liliana Marie Prikler <liliana.prikler@HIDDEN>,
 Andrew Tropin <andrew@HIDDEN>, Hilton Chain <hako@HIDDEN>,
 77990 <at> debbugs.gnu.org, Divya Ranjan Pattanaik <divya@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain


>mar. 22 avril 2025 at 10:51, "Suhail Singh" <suhailsingh247@HIDDEN> wrote:

> * gnu/packages/emacs-xyz.scm (emacs-ffi): New variable.
>
> Change-Id: I3379ff4728d3e3f45d5327978b5e284fcc0e664e
> ---
>  gnu/packages/emacs-xyz.scm | 53 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 53 insertions(+)
>
> diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
> index 08bd88fd08..e6253089e8 100644
> --- a/gnu/packages/emacs-xyz.scm
> +++ b/gnu/packages/emacs-xyz.scm
> @@ -236,6 +236,7 @@ (define-module (gnu packages emacs-xyz)
>    #:use-module (gnu packages llvm)
>    #:use-module (gnu packages image)
>    #:use-module (gnu packages image-viewers)
> +  #:use-module (gnu packages libffi)
>    #:use-module (gnu packages linux)
>    #:use-module (gnu packages libevent)
>    #:use-module (gnu packages lisp)
> @@ -23092,6 +23093,58 @@ (define-public emacs-display-wttr
>  @uref{https://wttr.in} and then displays it on the mode line.")
>      (license license:gpl3+)))
>
> +(define-public emacs-ffi
> +  (package
> +    (name "emacs-ffi")
> +    (version "0.2.1")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/emacs-ffi/emacs-ffi")
> +             (commit version)))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "05crpgscpbzkg4k0ylbfjz2wyw2r8lki8q9w2kmdpljsqrpdrwl0"))))
> +    (build-system emacs-build-system)
> +    (arguments
> +     (list
> +      #:tests? (not (%current-target-system))
> +      #:phases
> +      #~(modify-phases %standard-phases
> +          (add-after 'unpack 'patch-module-load
> +            (lambda _
> +              (make-file-writable "src/ffi.el")
> +              (emacs-substitute-sexps "src/ffi.el"
> +                ("(require 'ffi-module nil t)"
> +                 `(module-load
> +                   ,(string-append #$output "/lib/ffi-module.so"))))))
> +          (add-before 'check 'build-emacs-module
> +            (lambda _
> +              ;; Compile the shared object file.
> +              (invoke "make"
> +                      #$(string-append "CC="
> +                                       (cc-for-target)))
> +              ;; Copy the build artifacts to root and let the install phase do
> +              ;; its thing
> +              (copy-recursively "build/lib" ".")
> +              ;; Install the shared object file into /lib.
> +              (install-file "build/lib/ffi-module.so"
> +                            (string-append #$output "/lib"))))

I have a doubt about where do we  put .so files.

- lib
- lib/package
- lib/emacs (see emacs-jinx)

Other than this, LFTM.

C.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iI0EARYKADUWIQTMuBhC+dcFjs1nN3q/XN9N9r9mggUCaAfkoxccY3NhbnRvc2JA
aW52ZW50YXRpLm9yZwAKCRC/XN9N9r9mgglkAQDRPe6lkJmPx7LrVPkqc2TpjgYB
1kcIkNhNWrI6+3z3JQEA5aE69u7PBeAW5+JCBQam3kw3AJ9LSPzeHJB4f7VP6Ag=
=Qw4A
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#77990; Package guix-patches. Full text available.

Message received at 77990 <at> debbugs.gnu.org:


Received: (at 77990) by debbugs.gnu.org; 22 Apr 2025 15:32:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 22 11:32:25 2025
Received: from localhost ([127.0.0.1]:49460 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u7Fbk-0001Iv-W7
	for submit <at> debbugs.gnu.org; Tue, 22 Apr 2025 11:32:25 -0400
Received: from mail-qv1-xf44.google.com ([2607:f8b0:4864:20::f44]:56589)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <suhailsingh247@HIDDEN>)
 id 1u7Fbi-0001Ie-D9
 for 77990 <at> debbugs.gnu.org; Tue, 22 Apr 2025 11:32:23 -0400
Received: by mail-qv1-xf44.google.com with SMTP id
 6a1803df08f44-6e8f4c50a8fso50473856d6.1
 for <77990 <at> debbugs.gnu.org>; Tue, 22 Apr 2025 08:32:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745335936; x=1745940736; darn=debbugs.gnu.org;
 h=mime-version:message-id:date:subject:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=zlDIu0FINcKY3iuuRJgnysw7DnURGB5pooycwq8wPms=;
 b=dhpoVlInr23JrgKxuWzR+Jmq5ibCc/hyPVWdq9qEKSRpaau6hFwvPJaMfPQ0o2q5pu
 yJ0Hb84DnAaPRJ8Ks7UJ05b7UKZpy4kA4kxBzwLm6sdzOh0I5iZtjsKQz+QWIKFqsIu2
 YphRZAGZ7E5cFISnqC+d3/fGZ4alYE7npTu63tyryuOL72Gu1sfcl9ddRFZ09posw321
 q91EEzNgt7AAgeTihXFYr3euXR/39yocsLoGe/IfZrn7WWQmRVqcLrKSDPdBjUhDt6kT
 QAdl3ZaR0Woi1uqjqtkKSgnLKmH0w+c+f6i0kIM6eMN6AxYYmSBzcYSCjTJyO6Nx1a8x
 MZRQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745335936; x=1745940736;
 h=mime-version:message-id:date:subject:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=zlDIu0FINcKY3iuuRJgnysw7DnURGB5pooycwq8wPms=;
 b=hnk9LSQOVDgCuKszF3/KRtFlXrgwYovCxtc3+nIlpL03aUeIkUviMTnZdsz3bcN2EP
 E50CqPJ6KuVDsKK1EqZWc1fpeBmdZaFg/DF47b4Nt61FuI4GU5Kh1zz6mhFxElQjCSwU
 x36Uvy3qWc5ksGORXycJ/mJ2k8XqBf4pl01gDNbHztGGA4bbYkmBdKDy06hctmavaQ9O
 NBqdoaT4joBIO8AqEDPz1Zd2uu4KIgJCrqutXwQEun+EUTvwmfG2rogPdFM4fEJgpi4e
 1DJpEUmzYTEwtJfsPgVNsWD6ZwoEK8QdR3WeCEorCY/a3/BTx8NTvmaqguZ7SxVz67hv
 65jg==
X-Gm-Message-State: AOJu0YxeIt7SIt2Mi9Kh4AZhsWZZ9C+tgAVW7lsAMsccGrf2c/05/oBo
 /HHgbPS19zP6wVFpYGPkPRTOsyl1kHWHT5ra+bIsxEpQ6FQ766OPxj7lCqtp
X-Gm-Gg: ASbGncujBC48Hp3MMst7yAeFpA3gC7LZ0jkPvNFskXalg3M+RuCMGcnKNBtha9Z4cIw
 HHlt9P0vRuW7e9F8p+Q6iFezh+TIR/Ld3KNy+YuhxVzv4q/rXHdd9zGqNr/P+I7Lrp26WrY3Z9f
 E+ARY3C3JrRB3YRXRY5WRVtYSc7qyWcmtvY+nyfrGJI21Jz2tfzMF5jY8sb+AEaFPL70zjhitQH
 5Thy2HHpcNzrSPIx5WKT/qUv22OrI0c6b7Pjjx73se4LgTVKwhjQEIf8K/UuSpRIDciiWm9wdiv
 cGoVKTKZlwkKWplKgvXulA3eOVQvV/t/Et/8brp4FvM9xcA0q57RCbrQViyz1ODiCi77n8a54hB
 KhAxtTZxUSFTq0eWpaQacCFXK+g==
X-Google-Smtp-Source: AGHT+IFC40HG0AjCetYkQtc6RydZ/Q4+Fr7TidId9CCBAp2mduBMbfCfkJyPelws8RYvN7iw/7kHZA==
X-Received: by 2002:a05:6214:202a:b0:6e8:f4d3:e8a5 with SMTP id
 6a1803df08f44-6f2c4559993mr252719946d6.15.1745335935694; 
 Tue, 22 Apr 2025 08:32:15 -0700 (PDT)
Received: from gnus (lnsm2-montreal01-69-158-82-155.internet.virginmobile.ca.
 [69.158.82.155]) by smtp.gmail.com with ESMTPSA id
 6a1803df08f44-6f2c2af48c3sm58681686d6.8.2025.04.22.08.32.14
 for <77990 <at> debbugs.gnu.org>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 22 Apr 2025 08:32:15 -0700 (PDT)
From: "Suhail Singh" <suhailsingh247@HIDDEN>
To: 77990 <at> debbugs.gnu.org
Subject: [PATCH v2] gnu: Add emacs-ffi.
Date: Tue, 22 Apr 2025 10:51:53 -0400
X-Debbugs-Cc: Andrew Tropin <andrew@HIDDEN>, Cayetano Santos
 <csantosb@HIDDEN>, Divya Ranjan Pattanaik <divya@HIDDEN>,
 Hilton Chain <hako@HIDDEN>, Ian Eure <ian@HIDDEN>,
 Katherine Cox-Buday <cox.katherine.e+guix@HIDDEN>, Liliana Marie
 Prikler <liliana.prikler@HIDDEN>
Message-Id: <bf785b91e8c2fe9844c2fc3c472d86d2e39e61e4.1745335913.git.suhail@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.3 (/)
X-Debbugs-Envelope-To: 77990
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

* gnu/packages/emacs-xyz.scm (emacs-ffi): New variable.

Change-Id: I3379ff4728d3e3f45d5327978b5e284fcc0e664e
---
 gnu/packages/emacs-xyz.scm | 53 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 08bd88fd08..e6253089e8 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -236,6 +236,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages image)
   #:use-module (gnu packages image-viewers)
+  #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages lisp)
@@ -23092,6 +23093,58 @@ (define-public emacs-display-wttr
 @uref{https://wttr.in} and then displays it on the mode line.")
     (license license:gpl3+)))
 
+(define-public emacs-ffi
+  (package
+    (name "emacs-ffi")
+    (version "0.2.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/emacs-ffi/emacs-ffi")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "05crpgscpbzkg4k0ylbfjz2wyw2r8lki8q9w2kmdpljsqrpdrwl0"))))
+    (build-system emacs-build-system)
+    (arguments
+     (list
+      #:tests? (not (%current-target-system))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-module-load
+            (lambda _
+              (make-file-writable "src/ffi.el")
+              (emacs-substitute-sexps "src/ffi.el"
+                ("(require 'ffi-module nil t)"
+                 `(module-load
+                   ,(string-append #$output "/lib/ffi-module.so"))))))
+          (add-before 'check 'build-emacs-module
+            (lambda _
+              ;; Compile the shared object file.
+              (invoke "make"
+                      #$(string-append "CC="
+                                       (cc-for-target)))
+              ;; Copy the build artifacts to root and let the install phase do
+              ;; its thing
+              (copy-recursively "build/lib" ".")
+              ;; Install the shared object file into /lib.
+              (install-file "build/lib/ffi-module.so"
+                            (string-append #$output "/lib"))))
+          (add-before 'install 'installinfo
+            (lambda _
+              (install-file "build/doc/emacs-ffi.info"
+                            (string-append #$output "/share/info")))))))
+    (inputs (list emacs-compat libltdl libffi))
+    (native-inputs (list texinfo))
+    (home-page "https://emacs-ffi.github.io/emacs-ffi/")
+    (synopsis "FFI for Emacs based on libffi")
+    (description
+     "This package provides an FFI for Emacs.  It is based on
+libffi and relies on the dynamic module support in order to be loaded into
+Emacs.  It is relatively full-featured, but for the time being low-level.")
+    (license license:gpl3+)))
+
 (define-public emacs-free-keys
   (package
     (name "emacs-free-keys")

base-commit: c8194a529724721e2b96e0fe259cd92b63ff57aa




Information forwarded to andrew@HIDDEN, csantosb@HIDDEN, divya@HIDDEN, hako@HIDDEN, ian@HIDDEN, cox.katherine.e+guix@HIDDEN, liliana.prikler@HIDDEN, guix-patches@HIDDEN:
bug#77990; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 22 Apr 2025 15:25:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 22 11:25:47 2025
Received: from localhost ([127.0.0.1]:49411 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u7FVK-0000xI-G9
	for submit <at> debbugs.gnu.org; Tue, 22 Apr 2025 11:25:46 -0400
Received: from lists.gnu.org ([2001:470:142::17]:37110)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <suhailsingh247@HIDDEN>)
 id 1u7FVH-0000x3-Fh
 for submit <at> debbugs.gnu.org; Tue, 22 Apr 2025 11:25:44 -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 <suhailsingh247@HIDDEN>)
 id 1u7FVB-0007GJ-Nd
 for guix-patches@HIDDEN; Tue, 22 Apr 2025 11:25:37 -0400
Received: from mail-qt1-x841.google.com ([2607:f8b0:4864:20::841])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <suhailsingh247@HIDDEN>)
 id 1u7FV9-0000qE-Jg
 for guix-patches@HIDDEN; Tue, 22 Apr 2025 11:25:37 -0400
Received: by mail-qt1-x841.google.com with SMTP id
 d75a77b69052e-4774ce422easo57363021cf.1
 for <guix-patches@HIDDEN>; Tue, 22 Apr 2025 08:25:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745335533; x=1745940333; darn=gnu.org;
 h=mime-version:message-id:date:subject:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=cz7DI9Yyi/Xnh/CJVfXc8m9v0G8JGca7c9CvXX42zIw=;
 b=bnGGVb3TYzDxk5wmNSt4PNQ/jmS0QFuj5jNHX1gcXtgSzpN8PwdLorRxxQUI/4L8nV
 ZNIYTbltCKK3nFl4G8Ab5jM9me4yOJqsXC7yieZfXpwRPRVJw172Ushgpz3zEhB/nfnh
 yngtpte5jMlB6Oi88yGR/tylWBqkOtkU3lvoz7UsVwW+GdWFOWa0CaGCkF+uMDL8KfL9
 /ZGpv/n3zor5RPBSbzX9prtPIGPmbBauBemNCmC50bUwzKSJw5fPeEIzs5j5O0GwiFMx
 AmkoheWttRyZV0Js2XFBs6wDuzwxbU4ud9si+I3HhmvWApvA6UeNUpplLZjgD39SxOd0
 xrjQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745335533; x=1745940333;
 h=mime-version:message-id:date:subject:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=cz7DI9Yyi/Xnh/CJVfXc8m9v0G8JGca7c9CvXX42zIw=;
 b=rUqxYJhM9EJs78Ic+/vCrZ2M6fea3BiO+GNO778w7JbqKPciCjbBgi3cXJj1BhvELU
 4Ewjm08uUsdIfn85xUIKgWxzGnpYtupYAcj1zbaJtXEA4BX+KXhJ9IFyLI2WW0nQMy5F
 V15b3J6bf3JdruKo74oPMd73aRXzSTowU+MHEf3czK80l1+kBcFvt1BTwd/D4+2jz8Bp
 D84msX4t+yovUHR966w9H+b9gn4JVInyDCsGPGvW35uOo1841iar9Rtwh++33oTKHBsA
 sxq5H+TxbeRyDIflVAkQQl3wM+ITB1QBffMY5TYXwEfKbUccgdiBLflKJFicOZ4V+0Gr
 45BA==
X-Gm-Message-State: AOJu0YxsqKdY6F154/0moZBFoWJBk4L4S52wDSl+1nYdhnORasTxrnvT
 RORkp/ZlauMlnJ95bNXMyc2Rior5/IK3Md4dWKPODISwSha1UFk/IduqrqU1
X-Gm-Gg: ASbGncvPxIXjlM0m43AXCuvUvDLcg9n3l5Ck8C5IWDI/STE17XAIHqzau4ie14KBtjk
 iQZ9To+e0sT42R1SaydvdG9+2md8fExHbPI38D7FPSbi/JqdRAOLQCMm2k3ID4y3W5JeoE9Ag8Z
 +MEEC5auG3attKkxjs85vccByd1evjBFDXBqwmuWC11XsKQDPB5+OXTxRfRhXBEDSuKFQRBNxBc
 l+xdbBTqA/CPY5qrYcdQpZbJdxtWWJFRW90377JkpGGIAfY9A4jZmv3uTFNC273fYq2QTZl6RQA
 p5jijpfCfnoGAVOBtb6ZqLSCy3FTF6but1YQ
X-Google-Smtp-Source: AGHT+IETT2GWw7B8XYtAKIhBxGoWO4YZ6CjokK+u8Ff/ETcT99O3HR4Zk90zMNqdNSoDmHCnyWoYNA==
X-Received: by 2002:a05:620a:1aa1:b0:7c5:65ab:4ff2 with SMTP id
 af79cd13be357-7c9280184a0mr2731955885a.46.1745335533466; 
 Tue, 22 Apr 2025 08:25:33 -0700 (PDT)
Received: from gnus ([69.158.82.155]) by smtp.gmail.com with ESMTPSA id
 af79cd13be357-7c925a8fff2sm568132885a.38.2025.04.22.08.25.32
 for <guix-patches@HIDDEN>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 22 Apr 2025 08:25:33 -0700 (PDT)
From: "Suhail Singh" <suhailsingh247@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH] gnu: Add emacs-ffi.
Date: Tue, 22 Apr 2025 10:51:53 -0400
X-Debbugs-Cc: Andrew Tropin <andrew@HIDDEN>, Cayetano Santos
 <csantosb@HIDDEN>, Divya Ranjan Pattanaik <divya@HIDDEN>,
 Hilton Chain <hako@HIDDEN>, Ian Eure <ian@HIDDEN>,
 Katherine Cox-Buday <cox.katherine.e+guix@HIDDEN>, Liliana Marie
 Prikler <liliana.prikler@HIDDEN>
Message-Id: <8514e002c91917232069fcff792b089241b02cbc.1745335509.git.suhail@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
Received-SPF: pass client-ip=2607:f8b0:4864:20::841;
 envelope-from=suhailsingh247@HIDDEN; helo=mail-qt1-x841.google.com
X-Spam_score_int: -17
X-Spam_score: -1.8
X-Spam_bar: -
X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.2 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: * gnu/packages/emacs-xyz.scm (emacs-ffi): New variable.
 Change-Id:
 I3379ff4728d3e3f45d5327978b5e284fcc0e664e --- gnu/packages/emacs-xyz.scm
 | 53 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+)
 Content analysis details:   (1.2 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 -0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at https://www.dnswl.org/,
 no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org]
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends
 in digit (suhailsingh247[at]gmail.com)
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (suhailsingh247[at]gmail.com)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.2 (/)

* gnu/packages/emacs-xyz.scm (emacs-ffi): New variable.

Change-Id: I3379ff4728d3e3f45d5327978b5e284fcc0e664e
---
 gnu/packages/emacs-xyz.scm | 53 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 08bd88fd08..efdb658bf7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -236,6 +236,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages llvm)
   #:use-module (gnu packages image)
   #:use-module (gnu packages image-viewers)
+  #:use-module (gnu packages libffi)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages lisp)
@@ -23092,6 +23093,58 @@ (define-public emacs-display-wttr
 @uref{https://wttr.in} and then displays it on the mode line.")
     (license license:gpl3+)))
 
+(define-public emacs-ffi
+  (package
+    (name "emacs-ffi")
+    (version "0.2.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/emacs-ffi/emacs-ffi")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "05crpgscpbzkg4k0ylbfjz2wyw2r8lki8q9w2kmdpljsqrpdrwl0"))))
+    (build-system emacs-build-system)
+    (arguments
+     (list
+      #:tests? (not (%current-target-system))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-module-load
+            (lambda _
+              (make-file-writable "src/ffi.el")
+              (emacs-substitute-sexps "src/ffi.el"
+                ("(require 'ffi-module nil t)"
+                 `(module-load
+                   ,(string-append #$output "/lib/ffi-module.so"))))))
+          (add-before 'check 'build-emacs-module
+            (lambda _
+              ;; Compile the shared object file.
+              (invoke "make"
+                      #$(string-append "CC="
+                                       (cc-for-target)))
+              ;; Copy the build artifacts to root and let the install phase do
+              ;; its thing
+              (copy-recursively "build/lib" ".")
+              ;; Install the shared object file into /lib.
+              (install-file "build/lib/ffi-module.so"
+                            (string-append #$output "/lib"))))
+          (add-before 'install 'installinfo
+            (lambda _
+              (install-file "build/doc/emacs-ffi.info"
+                            (string-append #$output "/share/info")))))))
+    (inputs (list emacs-compat libltdl libffi))
+    (native-inputs (list texinfo))
+    (home-page "https://emacs-ffi.github.io/emacs-ffi/")
+    (synopsis "FFI for Emacs based in libffi")
+    (description
+     "This package provides an FFI for Emacs.  It is based on
+libffi and relies on the dynamic module support in order to be loaded into
+Emacs.  It is relatively full-featured, but for the time being low-level.")
+    (license license:gpl3+)))
+
 (define-public emacs-free-keys
   (package
     (name "emacs-free-keys")

base-commit: c8194a529724721e2b96e0fe259cd92b63ff57aa




Acknowledgement sent to "Suhail Singh" <suhailsingh247@HIDDEN>:
New bug report received and forwarded. Copy sent to andrew@HIDDEN, csantosb@HIDDEN, divya@HIDDEN, hako@HIDDEN, ian@HIDDEN, cox.katherine.e+guix@HIDDEN, liliana.prikler@HIDDEN, guix-patches@HIDDEN. Full text available.
Report forwarded to andrew@HIDDEN, csantosb@HIDDEN, divya@HIDDEN, hako@HIDDEN, ian@HIDDEN, cox.katherine.e+guix@HIDDEN, liliana.prikler@HIDDEN, guix-patches@HIDDEN:
bug#77990; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 23 Apr 2025 02:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.