From patchwork Mon Mar 4 19:59:32 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Liliana Marie Prikler X-Patchwork-Id: 61338 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 06E8527BBEA; Mon, 4 Mar 2024 20:01:51 +0000 (GMT) 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_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham 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 8E98827BBE2 for ; Mon, 4 Mar 2024 20:01:49 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rhEVE-00054m-4V; Mon, 04 Mar 2024 15:01:36 -0500 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 1rhEVB-00051q-T3 for guix-patches@gnu.org; Mon, 04 Mar 2024 15:01:33 -0500 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 1rhEVA-0001rK-Qx for guix-patches@gnu.org; Mon, 04 Mar 2024 15:01:33 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rhEVe-0000Kh-Hm for guix-patches@gnu.org; Mon, 04 Mar 2024 15:02:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#67260] [PATCH emacs-team v11 0/7] You thought it was term/internal.el, but it was me, Dio! Resent-From: Liliana Marie Prikler Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 04 Mar 2024 20:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 67260 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Andrew Tropin , 67260@debbugs.gnu.org Cc: cox.katherine.e+guix@gmail.com, Suhail Received: via spool by 67260-submit@debbugs.gnu.org id=B67260.17095824721207 (code B ref 67260); Mon, 04 Mar 2024 20:02:02 +0000 Received: (at 67260) by debbugs.gnu.org; 4 Mar 2024 20:01:12 +0000 Received: from localhost ([127.0.0.1]:44982 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rhEUp-0000JO-KE for submit@debbugs.gnu.org; Mon, 04 Mar 2024 15:01:12 -0500 Received: from mail-ej1-f68.google.com ([209.85.218.68]:53351) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rhEUo-0000JA-96 for 67260@debbugs.gnu.org; Mon, 04 Mar 2024 15:01:11 -0500 Received: by mail-ej1-f68.google.com with SMTP id a640c23a62f3a-a458b6d9cfeso78607866b.2 for <67260@debbugs.gnu.org>; Mon, 04 Mar 2024 12:00:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1709582375; x=1710187175; darn=debbugs.gnu.org; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:from:to:cc:subject:date:message-id:reply-to; bh=lHGaixC8GpoQ+129rwYCQcmWZPfNXK8+gR1IM5lMbPU=; b=PSEdMzoNYZeuGFq2R0p0YxoGYh6JH0DtCQE75/r4RE63ROLmZO7TRGEXKzmCE+eokN hSkus/VNOU17+QiFV5rCS0Cvbvk6pR7anHFjqHdMTNr6/tN1SNDNV719lEvEjW/2X0lX 9qudy+07FEV939sVpfi1lJ2ciENw4itsEsf0WHcHIwWp9ahsDjz67q1ImhLud2mH28CF kr/7CuInQMxGsgqdBg4I3zuWNqeqeBP0PiDHqj2D8COj4t/xfBnrw0KlRIu/69PjC+aq QKeZro290hWiBx2jscxGuJzLyAlwSWAwyBmNpHhi8d0QCBkirRhspRTwlcKYPRNmpXSN wiwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709582375; x=1710187175; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=lHGaixC8GpoQ+129rwYCQcmWZPfNXK8+gR1IM5lMbPU=; b=eWLgREdbHwoiiLZ3u/IyOBW3uYxtdlrXrPsvyRFeUThnclrZAHamqjLiyB+R9ORmOb ariULjKUJyzBReqtRPzaT2ZPX1pJw6zHpOtY7TLi9MruwYc6UrTjm4n6t5+yBlPSNfVF JL8yWnezx+eEma8vIgbUEqsFzTHeDLuhRIV33cdt2TvU8UovrXtIxoZ+p3qVafABhb5c RuE4kTcFq7/DNpr8FNJ9ob6T6IVrFX2/eom4n4JMznK5WPEe+Usi9iU2aluc8ZR2bavK /Fu7F1lRXi5EAaJF+MTnaXTIp1A6whLBp58udyl/38Pp/wex7xJP9mYAHpun672WkYIJ npzA== X-Forwarded-Encrypted: i=1; AJvYcCUgYY6aNEJQePYyH/y2rI7WKmBYZJ5vR+Xid6silPgZ5MVoRcUxV+eXQ7D/i4vmJOPD+dtzNmlHZ2yDs0SsViCDE/U5IsA= X-Gm-Message-State: AOJu0YyPjkjTRYo0OnBAGUcKJNzqo5Jf41H+9mAUNTiIHwCYf1tnVcwR eQhY47BjinOxfcr1Xik5sKSHjp750hnq1/UCdVnACYygDEo+BKcu X-Google-Smtp-Source: AGHT+IHBTBa6R95aY7n6P1fFD4sYiaflSvtP3dPd8O4HRCjySbYkG4CuQAMG67UMKUhLF4vr4NJciQ== X-Received: by 2002:a17:906:b00c:b0:a44:c1a9:ee37 with SMTP id v12-20020a170906b00c00b00a44c1a9ee37mr5731253ejy.61.1709582374449; Mon, 04 Mar 2024 11:59:34 -0800 (PST) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id z19-20020a170906075300b00a44cf710cc3sm3203178ejb.182.2024.03.04.11.59.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Mar 2024 11:59:34 -0800 (PST) Message-ID: <6eb2791017ee33d78afc480d9aa68498c1c5a8c1.camel@gmail.com> From: Liliana Marie Prikler Date: Mon, 04 Mar 2024 20:59:32 +0100 In-Reply-To: <87il22bhal.fsf@trop.in> References: <87il22bhal.fsf@trop.in> User-Agent: Evolution 3.46.4 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 Am Montag, dem 04.03.2024 um 10:13 +0300 schrieb Andrew Tropin: > On 2024-02-24 09:04, Liliana Marie Prikler wrote: > > > After a week of debugging the internals of how Emacs compiles, > > loads, > > and dumps (!) its .eln-files, I finally came up with the perfectly > > cursed mix that enables us to actually load *and* graft our > > natively > > compiled packages with ease. > > > > In unrelated news, I feel like I should wear a witch hat for faster > > development cycles. > > > > Liliana Marie Prikler (7): > >   gnu: emacs: Build trampolines. > >   gnu: emacs: Don't hash file names in native compilation. > >   gnu: emacs: Check integrity of native-compiled files. > >   gnu: emacs: Disable jit compilation. > >   build-system: emacs: Compute relative file names. > >   gnu: emacs-org: Fix native builds. > >   gnu: emacs-magit: Fix native builds. > > > >  Makefile.am                                   |   1 + > >  gnu/local.mk                                  |   2 + > >  .../aux-files/emacs/comp-integrity.el         | 126 +++++++ > >  gnu/packages/emacs-xyz.scm                    |  10 +- > >  gnu/packages/emacs.scm                        |  20 +- > >  .../emacs-disable-jit-compilation.patch       |  19 + > >  .../emacs-native-comp-fix-filenames.patch     | 338 > > ++++++++++++++++++ > >  guix/build/emacs-utils.scm                    |   4 +- > >  8 files changed, 516 insertions(+), 4 deletions(-) > >  create mode 100644 gnu/packages/aux-files/emacs/comp-integrity.el > >  create mode 100644 gnu/packages/patches/emacs-disable-jit- > > compilation.patch > >  create mode 100644 gnu/packages/patches/emacs-native-comp-fix- > > filenames.patch > > > > > > base-commit: aae61f54ff6acf5cc0e0355dc85babf29f625660 > > For usual emacs it seems to work, (require 'magit) with clean eln > cache > doesn't trigger any builds. For emacs-pgtk it fails to build emacs: > > guix time-machine -- > url='https://git.guix-patches.cbaines.net/git/guix-patches' -- > branch=issue-67260 --disable-authentication -- shell emacs-pgtk > emacs-magit --pure -E '.*GTK.*|.*XDG.*|.*DISPLAY.*' -- emacs -Q > > --8<---------------cut here---------------start------------->8--- >    passed  94/97  expect-window-right-native (0.002412 sec) > Test expect-x-dnd-init-frame-native backtrace: >   signal(void-function (x-dnd-init-frame)) >   apply(signal (void-function (x-dnd-init-frame))) >   (setq value-477 (apply fn-475 args-476)) >   (unwind-protect (setq value-477 (apply fn-475 args-476)) (setq > form- >   (if (unwind-protect (setq value-477 (apply fn-475 args-476)) (setq > f >   (let (form-description-479) (if (unwind-protect (setq value-477 > (app >   (let ((value-477 'ert-form-evaluation-aborted-478)) (let (form- > descr >   (let* ((fn-475 #'eq) (args-476 (condition-case err (let ((signal- > hoo >   (lambda nil (let* ((fn-475 #'eq) (args-476 (condition-case err (let >   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert- > test >   ert-run-test(#s(ert-test :name expect-x-dnd-init-frame-native > :docum >   ert-run-or-rerun-test(#s(ert--stats :selector t :tests ... :test- > map >   ert-run-tests(t #f(compiled-function (event-type &rest event-args) > # >   ert-run-tests-batch(nil) >   ert-run-tests-batch-and-exit() >   command-line-1(("--load" > "/gnu/store/ql9y5r4ydz4dl8jjf2b2bz9fqhxmbm3 >   command-line() >   normal-top-level() > Test expect-x-dnd-init-frame-native condition: >     (void-function x-dnd-init-frame) >    FAILED  95/97  expect-x-dnd-init-frame-native (0.000082 sec) at > ../../../gnu/store/ql9y5r4ydz4dl8jjf2b2bz9fqhxmbm3x-comp- > integrity.el:1 > Test expect-x-handle-no-bitmap-icon-native backtrace: >   signal(void-function (x-handle-no-bitmap-icon)) >   apply(signal (void-function (x-handle-no-bitmap-icon))) >   (setq value-482 (apply fn-480 args-481)) >   (unwind-protect (setq value-482 (apply fn-480 args-481)) (setq > form- >   (if (unwind-protect (setq value-482 (apply fn-480 args-481)) (setq > f >   (let (form-description-484) (if (unwind-protect (setq value-482 > (app >   (let ((value-482 'ert-form-evaluation-aborted-483)) (let (form- > descr >   (let* ((fn-480 #'eq) (args-481 (condition-case err (let ((signal- > hoo >   (lambda nil (let* ((fn-480 #'eq) (args-481 (condition-case err (let >   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert- > test >   ert-run-test(#s(ert-test :name expect-x-handle-no-bitmap-icon- > native >   ert-run-or-rerun-test(#s(ert--stats :selector t :tests ... :test- > map >   ert-run-tests(t #f(compiled-function (event-type &rest event-args) > # >   ert-run-tests-batch(nil) >   ert-run-tests-batch-and-exit() >   command-line-1(("--load" > "/gnu/store/ql9y5r4ydz4dl8jjf2b2bz9fqhxmbm3 >   command-line() >   normal-top-level() > Test expect-x-handle-no-bitmap-icon-native condition: >     (void-function x-handle-no-bitmap-icon) >    FAILED  96/97  expect-x-handle-no-bitmap-icon-native (0.000111 > sec) at ../../../gnu/store/ql9y5r4ydz4dl8jjf2b2bz9fqhxmbm3x-comp- > integrity.el:1 >    passed  97/97  expect-x-setup-function-keys-native (0.004165 sec) > > Ran 97 tests, 95 results as expected, 2 unexpected (2024-03-02 > 05:46:28+0000, 0.361428 sec) > > 2 unexpected results: >    FAILED  expect-x-dnd-init-frame-native >    FAILED  expect-x-handle-no-bitmap-icon-native > > error: in phase 'validate-comp-integrity': uncaught exception: > %exception #<&invoke-error program: > "/gnu/store/m01icx06dw1vs1krcj4jbmw71nv430dp-emacs-pgtk- > 29.2/bin/emacs" arguments: ("--batch" "--load" > "/gnu/store/ql9y5r4ydz4dl8jjf2b2bz9fqhxmbm3x-comp-integrity.el" "-f" > "ert-run-tests-batch-and-exit") exit-status: 1 term-signal: #f stop- > signal: #f> > phase `validate-comp-integrity' failed after 0.5 seconds > command "/gnu/store/m01icx06dw1vs1krcj4jbmw71nv430dp-emacs-pgtk- > 29.2/bin/emacs" "--batch" "--load" > "/gnu/store/ql9y5r4ydz4dl8jjf2b2bz9fqhxmbm3x-comp-integrity.el" "-f" > "ert-run-tests-batch-and-exit" failed with status 1 > --8<---------------cut here---------------end--------------->8--- > > Thank you very much for working on it! Try the attached patch and let me know if there's other failing Emacsen. Cheers From 19fc252ab7e86ad1443a8d16f68467c61bf23179 Mon Sep 17 00:00:00 2001 Message-ID: <19fc252ab7e86ad1443a8d16f68467c61bf23179.1709582330.git.liliana.prikler@gmail.com> From: Liliana Marie Prikler Date: Mon, 4 Mar 2024 20:54:49 +0100 Subject: [PATCH] aux-files: comp-integrity: Adjust for emacs-pgtk. * gnu/packages/aux-files/emacs/comp-integrity.el (x-dnd-init-frame): Require x-dnd. (x-handle-no-bitmap-icon): Only test this if it's bound. --- gnu/packages/aux-files/emacs/comp-integrity.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/aux-files/emacs/comp-integrity.el b/gnu/packages/aux-files/emacs/comp-integrity.el index 9692d9bf97..191e2ddb98 100644 --- a/gnu/packages/aux-files/emacs/comp-integrity.el +++ b/gnu/packages/aux-files/emacs/comp-integrity.el @@ -125,5 +125,6 @@ (expect-native emacs-version) (expect-native define-widget) (expect-native window-right) -(expect-native x-dnd-init-frame) -(expect-native x-handle-no-bitmap-icon) +(expect-native x-dnd-init-frame x-dnd) +(and (boundp 'x-handle-no-bitmap-icon) + (expect-native x-handle-no-bitmap-icon)) base-commit: 3d4fc910f73220f47e5f2459853333a7c83c5d1d prerequisite-patch-id: 96ae24a3419fccea142d2726b11ff20e798bfbd0 prerequisite-patch-id: e908853224bffffa285088dc6e31abaf12c12e02 -- 2.41.0