From unknown Fri Jun 20 07:24:30 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#44775 <44775@debbugs.gnu.org> To: bug#44775 <44775@debbugs.gnu.org> Subject: Status: [PATCH] WIP: Add gccemacs Reply-To: bug#44775 <44775@debbugs.gnu.org> Date: Fri, 20 Jun 2025 14:24:30 +0000 retitle 44775 [PATCH] WIP: Add gccemacs reassign 44775 guix-patches submitter 44775 John Soo severity 44775 normal tag 44775 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 21 04:15:54 2020 Received: (at submit) by debbugs.gnu.org; 21 Nov 2020 09:15:54 +0000 Received: from localhost ([127.0.0.1]:44856 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kgOzp-0007Gk-D1 for submit@debbugs.gnu.org; Sat, 21 Nov 2020 04:15:53 -0500 Received: from lists.gnu.org ([209.51.188.17]:35022) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kgOzn-0007Ga-D5 for submit@debbugs.gnu.org; Sat, 21 Nov 2020 04:15:52 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53658) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kgOzl-0004cb-Or for guix-patches@gnu.org; Sat, 21 Nov 2020 04:15:51 -0500 Received: from mail-pg1-x532.google.com ([2607:f8b0:4864:20::532]:39863) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kgOzh-0002Iz-Ol for guix-patches@gnu.org; Sat, 21 Nov 2020 04:15:49 -0500 Received: by mail-pg1-x532.google.com with SMTP id f17so1014034pge.6 for ; Sat, 21 Nov 2020 01:15:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:mime-version; bh=wkK/00oL6EbR3zf5CwbZmObQ8NQkppgtZlIbjX+c2wg=; b=F+zZTZ/je2OEZlL2E8HBv2FcnYaSZI2lqbjx2SMHMNUiBjnUjbnXF8mAKLSMc2nOQM 84VExM+NgEZfin6bbxeVEYfmRjp1lxzOom5rukTEAO4Uv20A5c1Z6VJ9/jTfDCRUtXJk IaFwohpuUFsbTpmuCjFMSRI2HJmWveBJSae2ph2E2vsjwD52kGZSEN7vTrjtcqIxU3yG Co/MSZl8dp6ikfcSCOgiIHgFdJ+/iWR4yIgluTai57dPTSSgNjcXC0LyO/YWJP9xOmeS 9m4/ZbBMOk6Fh/hP8bjWVwgwdUDp9BvqPQAXlmbBk1957pZaNY1UUN5/GWtujdziwhHJ UQeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version; bh=wkK/00oL6EbR3zf5CwbZmObQ8NQkppgtZlIbjX+c2wg=; b=TnhRsSN2C7z7nrXqd3obHOTKfaNj3QQ+Q9+AZLTFj+rD68lpt4//k1z75HIQZ40hYR H45R3ukEMUDmXleVfoTkfg0jdup8HyAnJj3i5maJKYw05fh/0VGY8kwccHvTJesxo76e nuTihnxM1EyvZO7VREchxnJpSmi9IXqnEb3lbe5lVO2Ki79OAdjoBE5sczSefKuG9LhC u6IakzqA7DeeVl6BfFaThTQah8MCa9ep+VHXdWCYi2KkLnTWQ7Re/lo813gbWjUSEvGW 79ITR5NKexPSHvXIFMwHOPmJSArMkPLX2tXfF1K+oEGT0xDlxq4UrjfmoZrOVCeefpdd KT5A== X-Gm-Message-State: AOAM533oG0ldtjBJZybA60+gqPbM+DK45Te7V2/9jzWGOe0gGv8mHBH+ Ksss8Prh0Px8S5GaRptFZaLqMfmSy00fbQ== X-Google-Smtp-Source: ABdhPJyoV/4qlHF3sP+tOP61PLxp7WdcTxoyb/tCZJPMGFUBcWE372D6viN9IJdZueqkXMYfEDpCNg== X-Received: by 2002:a63:5f14:: with SMTP id t20mr20936468pgb.305.1605950143024; Sat, 21 Nov 2020 01:15:43 -0800 (PST) Received: from ecenter ([2600:1700:83b0:8bd0::7a8]) by smtp.gmail.com with ESMTPSA id h9sm808379pgh.3.2020.11.21.01.15.41 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 21 Nov 2020 01:15:41 -0800 (PST) From: John Soo To: guix-patches@gnu.org Subject: [PATCH] WIP: Add gccemacs Date: Sat, 21 Nov 2020 01:15:40 -0800 Message-ID: <874kljnk8z.fsf@asu.edu> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2607:f8b0:4864:20::532; envelope-from=jsoo1@asu.edu; helo=mail-pg1-x532.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, 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.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --=-=-= Content-Type: text/plain Hi Guix, I was curious how fast this gccemacs branch might be, so I got it to compile. It feels fast but there are bugs and the closure is huge. Also these patches do not use any of the parameterization machinery. I just thought I would share my work. Thanks, John --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: attachment; filename=0001-gnu-Add-emacs-next-no-x.patch Content-Transfer-Encoding: quoted-printable >From 642c087de1592aeea0e65d04589423a05a96d68e Mon Sep 17 00:00:00 2001 From: John Soo Date: Sat, 21 Nov 2020 00:56:30 -0800 Subject: [PATCH 1/3] gnu: Add emacs-next-no-x. * gnu/packages/emacs.scm (emacs-next-no-x): New variable. --- gnu/packages/emacs.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 4f5a67093c..2d9f2e7ec1 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -22,6 +22,7 @@ ;;; Copyright =C2=A9 2019 Amin Bandali ;;; Copyright =C2=A9 2020 Jack Hill ;;; Copyright =C2=A9 2020 Morgan Smith +;;; Copyright =C2=A9 2020 John Soo ;;; ;;; This file is part of GNU Guix. ;;; @@ -376,6 +377,27 @@ editor (console only)") (delete 'restore-emacs-pdmp) (delete 'strip-double-wrap))))))) =20 +(define-public emacs-next-no-x + (package + (inherit emacs-next) + (name "emacs-next-no-x") + (synopsis (package-synopsis emacs-no-x)) + (build-system gnu-build-system) + (arguments + (substitute-keyword-arguments (package-arguments emacs-next) + ((#:configure-flags flags) + `(append '("--with-x-toolkit=3Dno" + "--with-xpm=3Dno" + "--with-jpeg=3Dno" + "--with-gif=3Dno" + "--with-tiff=3Dno") + ,flags)) + ((#:phases phases) + `(modify-phases ,phases + (delete 'restore-emacs-pdmp) + (delete 'strip-double-wrap))))) + (inputs (package-inputs emacs-no-x)))) + (define-public emacs-no-x-toolkit (package/inherit emacs (name "emacs-no-x-toolkit") --=20 2.29.1 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0002-gnu-Add-gccemacs.patch >From 3d1948d2512a5fc09ed36de752fb36178517cab2 Mon Sep 17 00:00:00 2001 From: John Soo Date: Sat, 21 Nov 2020 00:57:27 -0800 Subject: [PATCH 2/3] gnu: Add gccemacs. * gnu/packages/emacs.scm (gccemacs): New variable. Add supporting definitions for gccemacs-{version,commit,source} for other gccemacsen. --- gnu/packages/emacs.scm | 89 +++++++++++++++++++ gnu/packages/patches/gccemacs-exec-path.patch | 18 ++++ 2 files changed, 107 insertions(+) create mode 100644 gnu/packages/patches/gccemacs-exec-path.patch diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 2d9f2e7ec1..6312fde3ad 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) #:use-module (gnu packages fribidi) + #:use-module (gnu packages gcc) #:use-module (gnu packages gd) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -398,6 +399,94 @@ editor (console only)") (delete 'strip-double-wrap))))) (inputs (package-inputs emacs-no-x)))) +;; feature/native-comp +(define-public gccemacs-commit + "6781cd670d1487bbf0364d80de68ca9733342769") + +(define-public gccemacs-version + (git-version "28.0.50" "0" gccemacs-commit)) + +(define-public gccemacs-source + (origin + (method git-fetch) + (uri (git-reference + (url "git://git.sv.gnu.org/emacs.git") + (commit gccemacs-commit))) + (sha256 + (base32 + "13pmrak5jvk5qp4i5iccn0fqa6by8ig8l0n3qqirm67dxrqiz2ya")) + (patches (search-patches "gccemacs-exec-path.patch" + "emacs-fix-scheme-indent-function.patch" + "emacs-ignore-empty-xim-styles.patch" + "emacs-source-date-epoch.patch")) + (modules '((guix build utils))) + (snippet + '(with-directory-excursion "lisp" + ;; Delete the bundled byte-compiled elisp files and generated + ;; autoloads. + (for-each delete-file + (append (find-files "." "\\.elc$") + (find-files "." "loaddefs\\.el$") + (find-files "eshell" "^esh-groups\\.el$"))) + + ;; Make sure Tramp looks for binaries in the right places on + ;; remote Guix System machines, where 'getconf PATH' returns + ;; something bogus. + (substitute* "net/tramp-sh.el" + ;; Patch the line after "(defcustom tramp-remote-path". + (("\\(tramp-default-remote-path") + (format #f "(tramp-default-remote-path ~s ~s ~s ~s " + "~/.guix-profile/bin" "~/.guix-profile/sbin" + "/run/current-system/profile/bin" + "/run/current-system/profile/sbin"))) + + ;; Make sure Man looks for C header files in the right + ;; places. + (substitute* "man.el" + (("\"/usr/local/include\"" line) + (string-join + (list line + "\"~/.guix-profile/include\"" + "\"/var/guix/profiles/system/profile/include\"") + " "))) + #t)))) + +(define add-libgccjit-gcc-lib-to-library-path + '(lambda* (#:key inputs #:allow-other-keys) + (let* ((libgccjit (assoc-ref inputs "libgccjit")) + (gcc-dirs (find-files + libgccjit "^gcc$" #:directories? #t)) + (gcc-dirs-paths (string-join gcc-dirs ":")) + (prepend-to-env (lambda (val var) + (setenv + var (string-append + val + (or (getenv var) "")))))) + (prepend-to-env gcc-dirs-paths "LIBRARY_PATH") + (prepend-to-env gcc-dirs-paths "LD_LIBRARY_PATH") + (prepend-to-env gcc-dirs-paths "PATH") + #t))) + +(define-public gccemacs + (package + (inherit emacs-next) + (name "gccemacs") + (version gccemacs-version) + (source gccemacs-source) + (synopsis "The extensible, customizeable, self-documenting text +editor (from the native compilation branch)") + (inputs + `(("libgccjit" ,(canonical-package libgccjit)) + ,@(package-inputs emacs-next))) + (arguments + (substitute-keyword-arguments (package-arguments emacs-next) + ((#:phases p) + `(modify-phases ,p + (add-after 'bootstrap 'add-libgccjit-gcc-lib-to-library-path + ,add-libgccjit-gcc-lib-to-library-path))) + ((#:configure-flags flags ''()) + `(cons "--with-nativecomp" ,flags)))))) + (define-public emacs-no-x-toolkit (package/inherit emacs (name "emacs-no-x-toolkit") diff --git a/gnu/packages/patches/gccemacs-exec-path.patch b/gnu/packages/patches/gccemacs-exec-path.patch new file mode 100644 index 0000000000..3c75f9465e --- /dev/null +++ b/gnu/packages/patches/gccemacs-exec-path.patch @@ -0,0 +1,18 @@ +Do not capture the build-time value of $PATH in the 'emacs' executable +since this can noticeably increase the size of the closure of Emacs +with things like GCC being referenced. + +diff --git a/lisp/loadup.el.old b/lisp/loadup.el +index 158a4bf..f853a48 100644 +--- a/lisp/loadup.el ++++ b/lisp/loadup.el +@@ -509,7 +509,8 @@ lost after dumping"))) + ((equal dump-mode "dump") "emacs") + ((equal dump-mode "bootstrap") "emacs") + ((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp") +- (t (error "unrecognized dump mode %s" dump-mode))))) ++ (t (error "unrecognized dump mode %s" dump-mode)))) ++ (exec-path nil)) + (when (and (featurep 'nativecomp) + (equal dump-mode "pdump")) + ;; Don't enable this before bootstrap is completed the as the -- 2.29.1 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0003-gnu-Add-gcceamcs-no-x.patch >From f23ebabab5e57b22b45fea3a26f9a1814331f39a Mon Sep 17 00:00:00 2001 From: John Soo Date: Sat, 21 Nov 2020 00:59:14 -0800 Subject: [PATCH 3/3] gnu: Add gcceamcs-no-x. * gnu/packages/emacs.scm (gccemacs-no-x): New variable. --- gnu/packages/emacs.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 6312fde3ad..721a13f429 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -487,6 +487,26 @@ editor (from the native compilation branch)") ((#:configure-flags flags ''()) `(cons "--with-nativecomp" ,flags)))))) +(define-public gccemacs-no-x + (package/inherit emacs-next-no-x + (name "gccemacs-no-x") + (version gccemacs-version) + (source gccemacs-source) + (synopsis "The extensible, customizable, self-documenting text +editor (console only, from the native compilation branch)") + (build-system gnu-build-system) + (inputs + `(("libgccjit" ,(canonical-package libgccjit)) + ,@(package-inputs emacs-next-no-x))) + (arguments + (substitute-keyword-arguments (package-arguments emacs-next-no-x) + ((#:phases p) + `(modify-phases ,p + (add-after 'bootstrap 'add-libgccjit-gcc-lib-to-library-path + ,add-libgccjit-gcc-lib-to-library-path))) + ((#:configure-flags flags ''()) + `(cons "--with-nativecomp" ,flags)))))) + (define-public emacs-no-x-toolkit (package/inherit emacs (name "emacs-no-x-toolkit") -- 2.29.1 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Nov 23 17:27:47 2020 Received: (at 44775) by debbugs.gnu.org; 23 Nov 2020 22:27:47 +0000 Received: from localhost ([127.0.0.1]:51500 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khKJG-0008IU-UF for submit@debbugs.gnu.org; Mon, 23 Nov 2020 17:27:47 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:33506) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khKJF-0008IG-Ic for 44775@debbugs.gnu.org; Mon, 23 Nov 2020 17:27:46 -0500 Received: by mail-wm1-f68.google.com with SMTP id p19so793607wmg.0 for <44775@debbugs.gnu.org>; Mon, 23 Nov 2020 14:27:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:in-reply-to:references:date:message-id:mime-version :content-transfer-encoding; bh=Pnn3wrPg/UIad6DHOQqNTW97Poy1zNpRnbAcV0frW8Y=; b=HjKOphKYQ7A4Rwvwxo0DJPq2KAZIUxXMnMeC5M+qSrXWZYTVybPD9oF55ogS3IXJfM XbaTS04rU2pYKq2MZkShieXHO9Y33pi/Ft28NzzOWHq8blLoHiEfD8WoBk6FyxGthgmD GXVQR7orrNXrMmZBw6xL6+H06+XsLBx3XLkqUWnLLTcG/1A8/AgIxF6Ge32L/yZcASiA Mwvdu2HlxkuBcr7HAk1k+2ROFkxgmDCwkfdkGrjKtZytYAjKXpsoLBLUPj5aXfnYERod CrxtxrGgUV5x0la3Nbg3E5IpN2YwNu+FpvSIT4eALUOXLTpN6hEjsSWMdQRTXkk2lGTE ojWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=Pnn3wrPg/UIad6DHOQqNTW97Poy1zNpRnbAcV0frW8Y=; b=uiWnjxO2HHq+NPJuTNBmaND5G6Iz/Uk9rcZeQ0PZv/O4o6U+RMhWxqHPUm+hroQvmi t4GJFH/fHVEXfCBz1SbcWDUZLB7nt7EkLskA3JZYfJGfP+uHJOwTt6C9BOQsDNxqruHd vsObGXNJ+VvyNkGtNTR6dGbWJVRzFD2U+8DfOy6wHk1sPgY3Mszy35SDz4hKB7/z2OII xJjcduPKuDLF3cVB/UVqtOujUxkRhZa+cB5dj36/rYSROg+fbnMuwyWkQTlJVPE0A0nM 9GM0aLHjZJw1uZQxsXsuAI2Km5CQK10H5pj01eGDv5CxX+tVtXKlcxzwCrMsSD/kRH3H c8uQ== X-Gm-Message-State: AOAM531Aj2VK5bzcxqi622HeUvcA9LJxL8C6M/9BdN/ir5IYLJ7pE0mR KDVV95NDD4WCTHOFCKMNGAmb/cnaaQe9nA== X-Google-Smtp-Source: ABdhPJymR4LkGZXaHzQCkzYZe/63s3IXtoSRzz6wtpwIpqpalC2lY5Szo4d3q5je0go3nzwy5nql7g== X-Received: by 2002:a1c:7f48:: with SMTP id a69mr1058392wmd.21.1606170459235; Mon, 23 Nov 2020 14:27:39 -0800 (PST) Received: from lili ([88.126.110.68]) by smtp.gmail.com with ESMTPSA id b73sm1965425wmb.0.2020.11.23.14.27.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Nov 2020 14:27:38 -0800 (PST) From: zimoun To: John Soo , 44775@debbugs.gnu.org Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs In-Reply-To: <874kljnk8z.fsf@asu.edu> References: <874kljnk8z.fsf@asu.edu> Date: Mon, 23 Nov 2020 23:22:55 +0100 Message-ID: <86360zvhkw.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44775 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi John, On Sat, 21 Nov 2020 at 01:15, John Soo wrote: > I was curious how fast this gccemacs branch might be, so I got it to > compile. Thanks! This motivates me to resume what had been discussed here [1]: be able to somehow run: --8<---------------cut here---------------start------------->8--- guix build emacs-magit emacs-foo emacs-bar --with-input=3Demacs=3Dgccemacs --8<---------------cut here---------------end--------------->8--- At least, have a package transformation that allow to rebuild all the Emacs packages with the =E2=80=99gccemacs=E2=80=99 VM instead of the curren= t Emacs 27 one. > It feels fast but there are bugs and the closure is huge. Also these > patches do not use any of the parameterization machinery. What do you mean by =E2=80=9Cparameterization machinery=E2=80=9D? The new =E2=80=99with-parameter=E2=80=99 introduced here [2] or the package transfo= rmation that replaces all the dependencies (explicit and implicit). 1: 2: All the best, simon From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 24 10:06:56 2020 Received: (at 44775) by debbugs.gnu.org; 24 Nov 2020 15:06:56 +0000 Received: from localhost ([127.0.0.1]:60863 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khZuC-0004gY-6Y for submit@debbugs.gnu.org; Tue, 24 Nov 2020 10:06:56 -0500 Received: from mail-pf1-f196.google.com ([209.85.210.196]:40520) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khZuA-0004gM-MK for 44775@debbugs.gnu.org; Tue, 24 Nov 2020 10:06:55 -0500 Received: by mail-pf1-f196.google.com with SMTP id b6so8311041pfp.7 for <44775@debbugs.gnu.org>; Tue, 24 Nov 2020 07:06:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=uxxddvBLtxJyEgqGOjDbrwaerlWTSoCuuJHm41nl3kk=; b=OyVjb6FELQxVV5PbP3cWqOhDf73i/bp0nDnVV0RY/6ZcfNnsJ+z3h21D16t7NtQLo7 U7eclSNnCo8APCLNze34eU2bOp7IG4O39waAXnv1zoeLMqJr5MOvDsv1cP+MjogD8BI8 Gb85nqONUUsD/P/l5uZehIwjrHKWcfoZnBvBZtfc/jhvAuLcBX1LbPZRD9oNgFYRGvIP jxxxLv4TwbXTZ9UNaZpv799fWAnoUu4A+nIn+znH6MoWtrFu9rwBOgClDWcqajtROpG6 zkB4wuPN7FY88eBWBzCFS4JWASYdZpDu5jxgvlzowZn+mP6rG7glg8RGJsuovrql26mG Srrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=uxxddvBLtxJyEgqGOjDbrwaerlWTSoCuuJHm41nl3kk=; b=LyXttVlU5MQdvRF/E1czR7uP3tW4xlbc8s4ntLrj8G8PvN5aUQAe79fHgEMKMQtdqA oaDP/cXF4Sf+xd0cYMvkbp8oMHsugoKuhWg9aS/ihBrks41rW9mzkKMX49VeI1LOBrss Y4ajD+WodDdvGWfalDKtSJOvOhoQCFEuWAkQBfDKzovYGKixdnwEd9rkK+Zce6ZApWJR ldslK6iA5IXZhfoj6C33/8Gl61mXocv4CjwlhSxREE9Q58amqG5G1nSIXVJGQLNbCGac bA/AJNItf7O6Obe8aT7NTrac1x/G12UwxoLxB//I7t2S46pUs9ZS6RdAxXGGvBSqNL8T KDBQ== X-Gm-Message-State: AOAM530SvwJVO1rzYJYXYJHBOYUMdFj/U4LvcKW+0CTzoTb/t9p44PLQ kRUn6v8A1Ge8udUmuJVyqSjKSBHY3R497A== X-Google-Smtp-Source: ABdhPJzm45VN00rkfwEC6UwarbC7Ct9+37hDDXkCi3fIFPmB4jLT+bav6/nGYBb+Vqd5F5Gzz1kPwA== X-Received: by 2002:a63:484d:: with SMTP id x13mr3789577pgk.301.1606230408432; Tue, 24 Nov 2020 07:06:48 -0800 (PST) Received: from ecenter ([2600:1700:83b0:8bd0::7a8]) by smtp.gmail.com with ESMTPSA id q24sm3659035pjd.30.2020.11.24.07.06.46 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 24 Nov 2020 07:06:47 -0800 (PST) From: John Soo To: zimoun Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> Date: Tue, 24 Nov 2020 07:06:46 -0800 In-Reply-To: <86360zvhkw.fsf@gmail.com> (zimoun's message of "Mon, 23 Nov 2020 23:22:55 +0100") Message-ID: <87tutex08p.fsf@asu.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44775 Cc: 44775@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi zimoun, zimoun writes: > Thanks! This motivates me to resume what had been discussed here [1]: > be able to somehow run: > > guix build emacs-magit emacs-foo emacs-bar --with-input=3Demacs=3Dgccema= cs > > At least, have a package transformation that allow to rebuild all the > Emacs packages with the =E2=80=99gccemacs=E2=80=99 VM instead of the curr= ent Emacs 27 one. > > >> It feels fast but there are bugs and the closure is huge. Also these >> patches do not use any of the parameterization machinery. > > What do you mean by =E2=80=9Cparameterization machinery=E2=80=9D? The new > =E2=80=99with-parameter=E2=80=99 introduced here [2] or the package trans= formation that > replaces all the dependencies (explicit and implicit). > > > 1: > 2: I am referring to https://yhetil.org/guix-devel/87eeku8trb.fsf@gnu.org --with-parameter=3Dgccemacs or similar seem to be required since the native-comp branch requires a different source, configure flags, and probably native-search-paths at least. There appears to be a separate compiled artifact directory under $out/lib/emacs/$version/native-lisp/$version-triple which has the compiled native libraries (.eln files). That directory seems to not be in the search path. That appears to be causing the first error I see. I am not sure which env variable would be tweaked to pick those paths up. Hope that helps! John From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 24 10:28:33 2020 Received: (at 44775) by debbugs.gnu.org; 24 Nov 2020 15:28:33 +0000 Received: from localhost ([127.0.0.1]:60929 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khaF7-0005Fd-CI for submit@debbugs.gnu.org; Tue, 24 Nov 2020 10:28:33 -0500 Received: from mail-pl1-f195.google.com ([209.85.214.195]:32838) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1khaF5-0005FQ-D2 for 44775@debbugs.gnu.org; Tue, 24 Nov 2020 10:28:32 -0500 Received: by mail-pl1-f195.google.com with SMTP id t18so10878278plo.0 for <44775@debbugs.gnu.org>; Tue, 24 Nov 2020 07:28:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=tedEFFryhatF0HBde3kIcGZorlAf6bxS2NTXkGJYpvE=; b=JKCWc0fIi243MTcPzZ6K0m8024ICvz0hdmM1oYQf+MU7Np9dR6CkZGJNv4lImhjCLu RENQSHW3w0UvPWv1XCktB5j8AxO3nJnB0o3qpMAgu1phW4PZNjNLEZOt+gBTtUHziCrh VPFWkeEB7W0VKKt8HdlikkIqJZqKz9NAuZXWTA+6mSpVcndpDsrMfHGae3XOkl+idoAc MB903xbqdUvmQIwIj7A/ACaeRDuoFkG/D1qjTVEZSfipW1gF0/Q1WZu/3dezDn8nhIOP ujhXhhNFPXML69XqMcjwQGyIifdahoJOzPMYUvV1dKkruQ93eazyIt6ogBGbf28CqU/R t+RQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=tedEFFryhatF0HBde3kIcGZorlAf6bxS2NTXkGJYpvE=; b=nf+nIk0kLVnZi3AoD1NjqmwYHz+Vv4VktY5WAr4hjPEnM5hB812vLrA4LLL7QAvvVl c0wQF5ZadHLlTyfE2ZX5a5ELoxWTFVMroegpmEokgigim2N0TRpbf4Fmv8CbrghaCpU4 nHuVq7CLJecw5Sgs8XN8dZSjYUEST+L966l7XvxohEEcDPUp+g1NDkZVttUyfRoA63o5 RrahnrWiRW6RLqhH6FfV6EGQI74V6SYf2K8CKUQ/bGk5lII5BQdvJzNPOszNJm2EImrf lTXnAUhAVSoypsluS5d65MDmaL8XKGvNHvzISxjOkt7KvAEPuQtNxZvcOSm9kBHcxcmY qQ8Q== X-Gm-Message-State: AOAM530MWlQd+FXIk693pRM+lXsxVMWvL9GhG+a8NvCSDvK8mO5iQEqe LkRjl8gVHHwl9aFdhZBoCXeIsAUCgHekhQ== X-Google-Smtp-Source: ABdhPJwyJ5/tklsio0At5a1aPKSChcKpCmyZhLW0aaQoyf1vIdN8HLyLDyv9NN9dXxSeAjc7XSYcag== X-Received: by 2002:a17:902:a3c9:b029:d9:ec83:1e57 with SMTP id q9-20020a170902a3c9b02900d9ec831e57mr4213195plb.76.1606231705163; Tue, 24 Nov 2020 07:28:25 -0800 (PST) Received: from ecenter ([2600:1700:83b0:8bd0::7a8]) by smtp.gmail.com with ESMTPSA id y9sm3430672pjj.8.2020.11.24.07.28.23 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 24 Nov 2020 07:28:24 -0800 (PST) From: John Soo To: zimoun Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> Date: Tue, 24 Nov 2020 07:28:23 -0800 In-Reply-To: <86360zvhkw.fsf@gmail.com> (zimoun's message of "Mon, 23 Nov 2020 23:22:55 +0100") Message-ID: <87pn42wz8o.fsf@asu.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44775 Cc: 44775@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain Hi Guix and zimoun, I fixed a bug in the build process here. Still no big progress on the other bugs. - John --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-gnu-Add-gccemacs.patch >From 03ab270db130b9991fcbfa87b9d1fcc009fba059 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 20 Nov 2020 22:06:52 -0800 Subject: [PATCH] gnu: Add gccemacs. --- gnu/packages/emacs.scm | 109 ++++++++++++++++++ gnu/packages/patches/gccemacs-exec-path.patch | 18 +++ 2 files changed, 127 insertions(+) create mode 100644 gnu/packages/patches/gccemacs-exec-path.patch diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 7a5dd9010c..98a9aae69b 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) #:use-module (gnu packages fribidi) + #:use-module (gnu packages gcc) #:use-module (gnu packages gd) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -426,6 +427,114 @@ editor (console only)") (delete 'strip-double-wrap))))) (inputs (package-inputs emacs-no-x)))) +;; feature/native-comp +(define-public gccemacs-commit + "6781cd670d1487bbf0364d80de68ca9733342769") + +(define-public gccemacs-version + (git-version "28.0.50" "0" gccemacs-commit)) + +(define-public gccemacs-source + (origin + (method git-fetch) + (uri (git-reference + (url "git://git.sv.gnu.org/emacs.git") + (commit gccemacs-commit))) + (sha256 + (base32 + "13pmrak5jvk5qp4i5iccn0fqa6by8ig8l0n3qqirm67dxrqiz2ya")) + (patches (search-patches "gccemacs-exec-path.patch" + "emacs-fix-scheme-indent-function.patch" + "emacs-ignore-empty-xim-styles.patch" + "emacs-source-date-epoch.patch")) + (modules '((guix build utils))) + (snippet + '(with-directory-excursion "lisp" + ;; Delete the bundled byte-compiled elisp files and generated + ;; autoloads. + (for-each delete-file + (append (find-files "." "\\.elc$") + (find-files "." "loaddefs\\.el$") + (find-files "eshell" "^esh-groups\\.el$"))) + + ;; Make sure Tramp looks for binaries in the right places on + ;; remote Guix System machines, where 'getconf PATH' returns + ;; something bogus. + (substitute* "net/tramp-sh.el" + ;; Patch the line after "(defcustom tramp-remote-path". + (("\\(tramp-default-remote-path") + (format #f "(tramp-default-remote-path ~s ~s ~s ~s " + "~/.guix-profile/bin" "~/.guix-profile/sbin" + "/run/current-system/profile/bin" + "/run/current-system/profile/sbin"))) + + ;; Make sure Man looks for C header files in the right + ;; places. + (substitute* "man.el" + (("\"/usr/local/include\"" line) + (string-join + (list line + "\"~/.guix-profile/include\"" + "\"/var/guix/profiles/system/profile/include\"") + " "))) + #t)))) + +(define add-libgccjit-gcc-lib-to-library-path + '(lambda* (#:key inputs #:allow-other-keys) + (define (prepend-to-env val var) + (let ((current (getenv var))) + (setenv + var (if (and current (not (string-null? current))) + (string-append val ":" current) + val)))) + (let* ((libgccjit (assoc-ref inputs "libgccjit")) + (gcc-dirs (find-files + libgccjit "^gcc$" #:directories? #t)) + (gcc-dirs-paths (string-join gcc-dirs ":"))) + (prepend-to-env gcc-dirs-paths "LIBRARY_PATH") + (prepend-to-env gcc-dirs-paths "LD_LIBRARY_PATH") + (prepend-to-env gcc-dirs-paths "PATH") + #t))) + +(define-public gccemacs + (package + (inherit emacs-next) + (name "gccemacs") + (version gccemacs-version) + (source gccemacs-source) + (synopsis "The extensible, customizeable, self-documenting text +editor (from the native compilation branch)") + (inputs + `(("libgccjit" ,(canonical-package libgccjit)) + ,@(package-inputs emacs-next))) + (arguments + (substitute-keyword-arguments (package-arguments emacs-next) + ((#:phases p) + `(modify-phases ,p + (add-after 'bootstrap 'add-libgccjit-gcc-lib-to-library-path + ,add-libgccjit-gcc-lib-to-library-path))) + ((#:configure-flags flags ''()) + `(cons "--with-nativecomp" ,flags)))))) + +(define-public gccemacs-no-x + (package/inherit emacs-next-no-x + (name "gccemacs-no-x") + (version gccemacs-version) + (source gccemacs-source) + (synopsis "The extensible, customizable, self-documenting text +editor (console only, from the native compilation branch)") + (build-system gnu-build-system) + (inputs + `(("libgccjit" ,(canonical-package libgccjit)) + ,@(package-inputs emacs-next-no-x))) + (arguments + (substitute-keyword-arguments (package-arguments emacs-next-no-x) + ((#:phases p) + `(modify-phases ,p + (add-after 'bootstrap 'add-libgccjit-gcc-lib-to-library-path + ,add-libgccjit-gcc-lib-to-library-path))) + ((#:configure-flags flags ''()) + `(cons "--with-nativecomp" ,flags)))))) (define-public emacs-no-x-toolkit (package/inherit emacs diff --git a/gnu/packages/patches/gccemacs-exec-path.patch b/gnu/packages/patches/gccemacs-exec-path.patch new file mode 100644 index 0000000000..3c75f9465e --- /dev/null +++ b/gnu/packages/patches/gccemacs-exec-path.patch @@ -0,0 +1,18 @@ +Do not capture the build-time value of $PATH in the 'emacs' executable +since this can noticeably increase the size of the closure of Emacs +with things like GCC being referenced. + +diff --git a/lisp/loadup.el.old b/lisp/loadup.el +index 158a4bf..f853a48 100644 +--- a/lisp/loadup.el ++++ b/lisp/loadup.el +@@ -509,7 +509,8 @@ lost after dumping"))) + ((equal dump-mode "dump") "emacs") + ((equal dump-mode "bootstrap") "emacs") + ((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp") +- (t (error "unrecognized dump mode %s" dump-mode))))) ++ (t (error "unrecognized dump mode %s" dump-mode)))) ++ (exec-path nil)) + (when (and (featurep 'nativecomp) + (equal dump-mode "pdump")) + ;; Don't enable this before bootstrap is completed the as the -- 2.29.2 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sat Nov 28 21:14:55 2020 Received: (at 44775) by debbugs.gnu.org; 29 Nov 2020 02:14:55 +0000 Received: from localhost ([127.0.0.1]:49412 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kjCEp-0007ZH-6Q for submit@debbugs.gnu.org; Sat, 28 Nov 2020 21:14:55 -0500 Received: from mail-oln040092009106.outbound.protection.outlook.com ([40.92.9.106]:8725 helo=NAM04-BN3-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kjCEn-0007Z2-7b for 44775@debbugs.gnu.org; Sat, 28 Nov 2020 21:14:54 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NejTZ4xZZzBjAPEjlBejSqCE0P4+ybL3RjC+A2zpPd7VenoJQv/bq/7vKOH71A0WxeDzPaIKpeJCL1co8rT8Me8yGWo4/LUcv2UaZYvLhNlySpz7HKzhLCZi/pL6JW/mownczfH9PVYjQVqUAd06lf+WGT+mmxAeJlLuMv4t6TyoMzSH6ecA6uK/CACIMOMANwo2XxmGi+RcEEqpCGmxPjgiDV+7PGQ9Q67K7O+19XxeHP7NmxsgMMdZ4Pv0Yq5hqiqtId+/UBLpLGxVgPPihJRUiqjCSURxhOwunXVvWJTkIMxQS9gG3I2LfSLU2yGxSzg3fbyfOBI5DOwrD5CN1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LkJV+kEmqEmnIgJV6j23yAwLxJfigxFddgx1hbmuwJc=; b=mYy87miN9UorNJyPUUVPAWOPwK7AlrI3w2IqtaoFGLVk0IN5N5w5OFsg1sCYcWeW6nrfPHJ8W4aBg6d0LkH0KwI0Q0n7JU5nraL1yz0mrNqVw898TKl/YnygnCQPDNapUmjLZbNoXx8M8iEVTi8iq3dkrPZfnn5+zZhq4T0A8SrptOgvUBowcTolzmWujHk5NXMad0qEmWUDNV9Wjr85BaOFtVtxJYftrFc/bTjEfl8YMWaKukt1woJEYa69ks6opVJ19M0gRc9Apy3KLAfTE9IhaauXDpNPdNoBWL5PHWvvhqLam+4wf2gp6Cyk/V+DrjEtGvyLMkEB61CC7C2uPw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LkJV+kEmqEmnIgJV6j23yAwLxJfigxFddgx1hbmuwJc=; b=GeFmlR3OIfnrmzrlFAbse7/zEy7YY93Jg7eaJwcsVMPc3bPw2oLpuPo+H5+q4a8YIEpkzuJj/hbqI+TmIAywJYDsyn/ypbPwX6JLFNKgI6nLGkg79juRdc3UPr/0z8GAJuKLrF1QL1MuYNPu9ICx5Pmo+/L5sEqtZhSVBIr+nYRDJ7qL7a9Prnc5JYXeKhwdnkbbwTkFFRBXgh122j38hSzCH3TDRxmJdXZ0h3EFLNn+c4tODwyV4D/ICaGGafg0pICz7rnKHKoyFej1Y5R+oH86I0IFWRURkcbuCyMRaYpuloBCoTmx5IuhoZVnXXWeMgXRX1scEjJs4xmWXukkcg== Received: from BN3NAM04FT030.eop-NAM04.prod.protection.outlook.com (10.152.92.57) by BN3NAM04HT147.eop-NAM04.prod.protection.outlook.com (10.152.93.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3611.25; Sun, 29 Nov 2020 02:14:46 +0000 Received: from SN4PR0801MB3679.namprd08.prod.outlook.com (2a01:111:e400:7e4e::46) by BN3NAM04FT030.mail.protection.outlook.com (2a01:111:e400:7e4e::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3611.25 via Frontend Transport; Sun, 29 Nov 2020 02:14:46 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:8D80BEB1C6D41A7F1A6405FCD21DAA7AE1F19697AF3E631BDE5E4652B00130F5; UpperCasedChecksum:B28A9C34106FDC25109AF8C71F3259C87533B45CA8B5F4A2539041B0B08EFB46; SizeAsReceived:7313; Count:44 Received: from SN4PR0801MB3679.namprd08.prod.outlook.com ([fe80::d1ee:2418:4b27:4ade]) by SN4PR0801MB3679.namprd08.prod.outlook.com ([fe80::d1ee:2418:4b27:4ade%7]) with mapi id 15.20.3611.025; Sun, 29 Nov 2020 02:14:46 +0000 From: Morgan Smith To: John Soo Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> <87pn42wz8o.fsf@asu.edu> Date: Sat, 28 Nov 2020 21:14:42 -0500 Message-ID: Content-Type: text/plain X-TMN: [p/05S4HRlTj0S0Lw+jDw8ZgIMIJ0VWtQ] X-ClientProxiedBy: YQBPR0101CA0021.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00::34) To SN4PR0801MB3679.namprd08.prod.outlook.com (2603:10b6:803:4f::22) X-Microsoft-Original-Message-ID: <87im9oewod.fsf@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from pancake (70.29.122.18) by YQBPR0101CA0021.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c00::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3611.20 via Frontend Transport; Sun, 29 Nov 2020 02:14:45 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 44 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 861b6d65-afb6-4035-3bb7-08d8940c8a62 X-MS-TrafficTypeDiagnostic: BN3NAM04HT147: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PVmZp26x/abOETifuwAyMQS7Qt5/8lojd5Y8t4d5+fjAgquRWtN9CruWY/2GfXTkClDBUIqmU7XEkgIM5bb5laQimrzRBaw8w69g4nLxgujzFb4Puj2U6YEvq9wNlJkNL5qBOEGyHc02qitkkJGuIS+/dKXQN8R3PS9IN/UjnDiYc3Hw4oOXP9KU3NVhjPx4BUTVf/BW+arwssOSJZHPLv9/1u/1QfFDu5GSi8xbdJC3XV5fWX65vjL/Yrx4Iusz X-MS-Exchange-AntiSpam-MessageData: koDINmylfyA3ezKHxxVBhxnQJQ8G75qherrwCoCbXVyMRiSwygFTyl2h0iawMYoFZF0Q3k4KCAogH3GWOJhrpDYoshJdhxCdjcZxwKlXsWHlEEPMaGnwbaC1qiM8rKXhgDeAgPYG2bzlKNLwHl5Tdg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 861b6d65-afb6-4035-3bb7-08d8940c8a62 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Nov 2020 02:14:46.2582 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: BN3NAM04FT030.eop-NAM04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3NAM04HT147 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 44775 Cc: 44775@debbugs.gnu.org, zimoun X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Have you seen this gccemacs package? I haven't looked into it myself but it might help you. https://github.com/flatwhatson/guix-channel From debbugs-submit-bounces@debbugs.gnu.org Fri Dec 11 15:40:46 2020 Received: (at 44775) by debbugs.gnu.org; 11 Dec 2020 20:40:46 +0000 Received: from localhost ([127.0.0.1]:43430 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1knpDZ-0001bt-Qw for submit@debbugs.gnu.org; Fri, 11 Dec 2020 15:40:46 -0500 Received: from mail-pf1-f175.google.com ([209.85.210.175]:33884) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1knpDX-0001bd-UR for 44775@debbugs.gnu.org; Fri, 11 Dec 2020 15:40:44 -0500 Received: by mail-pf1-f175.google.com with SMTP id w6so7730722pfu.1 for <44775@debbugs.gnu.org>; Fri, 11 Dec 2020 12:40:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=asu-edu.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=lYgydv8xstyIVKUcFGreM1/K8i6iHNFgMeN5A45alsA=; b=FX9DGtPVDVjgTuXD0v2dMORlwqCfbXXKWwfe6nW6tAf8QgXR7xgs9aLUqzsQMGvkqN 2gbltsE914IhaxKOYqlQgEBPYUjWQ3OcamrSAN1JjET8U0LOI+N3X0l6t5Fa8cypSpja 4zf0F0vt3fdmVHzUoTg1Lo5zVX4/L1BbiRyW4Txy30G/3JMlVaQim+Fdm9NFYSKYQIV4 /s0dhuup3w4H83acWFOGBos4HzwJ5Vf7NAsW/AQBHqF+ijndLXa2up0b2fNiBGQCNbpx NXiY/9I5+B1/Da84StX29RWC5WMyJztP/jOycPVysiug6lxRHhZLhoHog0uPDC/7I6ZL HPcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=lYgydv8xstyIVKUcFGreM1/K8i6iHNFgMeN5A45alsA=; b=KwiSZszSqnILHtIofCI500hulJVZX1t9XwfzKHGe8sKaHvnmsNCOzaYCu3GKElYUnD SoJX/e6lf+IC0qHOWXk0FRfe1g6jAllpTmqDkc2baD3h0RZ2ddYatkssRwvHeIwP9m3V /ReFAHZpoZs74gz4BhDFTWP2CYm4hUD+N+ovurA1qUXFbarvP7j3sBuaCT20oj69idEn v+FMn2GVZqqarqhlHKDqqrpyBNsA0NEEq5VeGTlAA3NRop+zO3f5LwbBDLVcfJF0c2Q/ sBn37ucE2Pf04XG0DzhySFSff/HtN3vFDOxxpGVaDtN4tbxVxSLrtH5iO68ULRZ3vReX 4kMA== X-Gm-Message-State: AOAM532dgrSZtDI+K3YgFe5/F20q1Sky9Ec2D+OxueJgQ3uYskoB/VMe jYNdNf9W77q94Kan7/vx991uyun95TM341nE5IM= X-Google-Smtp-Source: ABdhPJwtcdIyULSLQJYaZoXXrZCPvwJE3vLxB+WpvnEECAEG1tkYnHN8F9SR+Qi6Ljr9ZSp2RQChLQ== X-Received: by 2002:a63:181e:: with SMTP id y30mr550803pgl.324.1607719237840; Fri, 11 Dec 2020 12:40:37 -0800 (PST) Received: from ecenter ([2600:1700:83b0:8bd0::7a8]) by smtp.gmail.com with ESMTPSA id n5sm11668721pgm.29.2020.12.11.12.40.36 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 11 Dec 2020 12:40:37 -0800 (PST) From: John Soo To: Morgan Smith Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> <87pn42wz8o.fsf@asu.edu> Date: Fri, 11 Dec 2020 12:40:36 -0800 In-Reply-To: (Morgan Smith's message of "Sat, 28 Nov 2020 21:14:42 -0500") Message-ID: <87k0tovzy3.fsf@asu.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 44775 Cc: 44775@debbugs.gnu.org, zimoun X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Morgan, Thank you! I will take a look. If I end up using some of their code, should I consult them about it and see if they want a copyright line? How is that supposed to work? Thank you again, John From debbugs-submit-bounces@debbugs.gnu.org Thu Dec 17 12:26:32 2020 Received: (at 44775) by debbugs.gnu.org; 17 Dec 2020 17:26:32 +0000 Received: from localhost ([127.0.0.1]:36882 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kpx2u-0000Fi-Ia for submit@debbugs.gnu.org; Thu, 17 Dec 2020 12:26:32 -0500 Received: from mail-co1nam11olkn2012.outbound.protection.outlook.com ([40.92.18.12]:62675 helo=NAM11-CO1-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kpx2r-0000FR-De for 44775@debbugs.gnu.org; Thu, 17 Dec 2020 12:26:31 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hzRNYGgrJV3dlV/5BxZJuN2v5ADjk22mO1VwZeMliHjJsUNE1gVxwrF2VUwV6PUL9R22sAbMWPTVEellFZbp0A6dR9Hjup1b57gGr4bHcSaJza0M0RIS0O512xxF/PvAodtd33pC9cRDgT4QfvT3m+VjgvZlUHG1EbouimY1AJbiqtD9PhciHGAFC+u8OxboKdLxhGHICbwjUQbD36Zhjt60HDA+x3hYmgIV3TzwD35N8msvMO+pr1ld2ppGmF6mHyjzpZNS/f6upGkl8oXqZS/4ewT2TsZUR0+4duyxq15bO2Lwom5uYuYloWOAAmflzlscpxtcrOiDLkMCxG+vLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h07zR+7y52tAHj3awAzIm9iCUDTbpz0spc0YjnvkT1Y=; b=fReCiiZ6SC493EqQUk048CnGWHWtb/vnXI8oE4kKv0gw4hQP7Tfx3rENQxYkTIFB0EYKFxi5+2LgDfd/Xy9k45EtI842jco0Lryi67G/IefWnBFhUFnfGzJcuDDawp3GPynw8Dl42XG6p8LqObntIos5lsdPnZL8heOCvmm8rUpH/tZxBX9XOaXBm+p+kDI1QsY6Sw+pSWEMp060nuW3merBbRIdn+aHP6lS2GkCFv+sIhqQdkfWU67UDmedb85yf0CBrfXRa5pykIMc3MtXf+u5rIJthCuCoD0gWZT8X1kjWewqxQv7WA9n0tGVfGOvXhRSq/LHcBtlefI1ouhmwQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=h07zR+7y52tAHj3awAzIm9iCUDTbpz0spc0YjnvkT1Y=; b=koErdzRAy3j2+5EDWscH6BQyrG8cxWumQaGIYM7Q7PyIfvL+GdCUBYRDmKxL2b8EQZ9UHwTM2MwZlqYzEolv1Cu1/XBieL7eQVMV3KGxTm8itftqQOr7ngJkUgGCIIDsDVPWEFtSo2rqg9wBsx0H69QKtMcm1VIHG3aQUcv8lo7PRrdo/7Ed0aX7elnOlQteXtIOl0a86neRxShDUyLoFpfuAZuiQTPe334RaFWuiHchc1QqdXkrAjjQ910KoO4+rEUAZEbEPB/xOPZTNGD0ARZrfHAi1Un2QiJ+FD3lGtE0HPPt91OYMBCxb/ZYdbDFdlrSCzcm3SdnL7BHUfUHsA== Received: from CO1NAM11FT015.eop-nam11.prod.protection.outlook.com (2a01:111:e400:3861::4a) by CO1NAM11HT205.eop-nam11.prod.protection.outlook.com (2a01:111:e400:3861::196) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3676.25; Thu, 17 Dec 2020 17:26:22 +0000 Received: from SN4PR0801MB3679.namprd08.prod.outlook.com (2a01:111:e400:3861::48) by CO1NAM11FT015.mail.protection.outlook.com (2a01:111:e400:3861::386) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3676.25 via Frontend Transport; Thu, 17 Dec 2020 17:26:22 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:31B120A69E1CA2BDE7BB93D932776D53A72F4FE087B712F3EA2DB1BE2818B771; UpperCasedChecksum:F9585929B251C0BC2D38723579C18579F4841E8393E071A0C9BB934A489021E0; SizeAsReceived:8798; Count:48 Received: from SN4PR0801MB3679.namprd08.prod.outlook.com ([fe80::d1ee:2418:4b27:4ade]) by SN4PR0801MB3679.namprd08.prod.outlook.com ([fe80::d1ee:2418:4b27:4ade%7]) with mapi id 15.20.3654.020; Thu, 17 Dec 2020 17:26:22 +0000 To: John Soo , whatson@gmail.com References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> <87pn42wz8o.fsf@asu.edu> <87k0tovzy3.fsf@asu.edu> From: Morgan Smith Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs Message-ID: Date: Thu, 17 Dec 2020 12:26:19 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.5.1 In-Reply-To: <87k0tovzy3.fsf@asu.edu> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-TMN: [RqEQcIF9dfRVzRhWgTV9fmFX3BbPuD0F] X-ClientProxiedBy: YQBPR01CA0064.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:2::36) To SN4PR0801MB3679.namprd08.prod.outlook.com (2603:10b6:803:4f::22) X-Microsoft-Original-Message-ID: <474426f8-2c17-f38b-29c2-6d4610c4aaf7@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [192.168.8.218] (70.49.34.197) by YQBPR01CA0064.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:2::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.12 via Frontend Transport; Thu, 17 Dec 2020 17:26:21 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: e814f36e-3954-4e90-7b9a-08d8a2b0dfd4 X-MS-TrafficTypeDiagnostic: CO1NAM11HT205: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4GHPntk37IfL5ZA8VZQFSoEQle3LAFank6K9jRaQBSpW1o+Z91lElDiWmIBLFdPdvEtogEgtawvHWw150fQ0QwvTXESXSM1CxMWSwMjfTLmlNjOVk0mVbFWK/7K5mFcS3EPTCsWaDn22rrwbtckOIgL4dJyCWAjpnRZEchjm1EUkBEpioal0ZB98Sx5X3pjyYZHjebSFAjePdBZjBoLccFFFc4tqVBaMaVaZSsSeSE+eoOEq+HpCvj+9tUnR9WnHI79SLsib4zB0AwCPpY8JVl63WO1DiQikUuIVO1Na3JA= X-MS-Exchange-AntiSpam-MessageData: LCnJWm+49S25n6SiqwoXbFtgeN98wN/WQC0S0sfnZ4xuMNMYmeThsbwuD3Hcq/DRjJdNeSCTGCfgsWccc2Pa4eRVOGVtWuNhnCjGJCsGy/8ovmr+S2LRYixqW0VB7NVOI7um/1KU5kJTuykWkB225g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Dec 2020 17:26:22.5303 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-Network-Message-Id: e814f36e-3954-4e90-7b9a-08d8a2b0dfd4 X-MS-Exchange-CrossTenant-AuthSource: CO1NAM11FT015.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1NAM11HT205 X-Spam-Score: 1.6 (+) 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: Hi John, (And hi Andrew. We're discussing including your code into the main Guix repository. You can view the full conversation here: https://issues.guix.gnu.org/44775) The code I linked to is already licensed under GPLv3+ meaning that you are free to integrate their code into the Guix code-base (Going to put here that I'm not a lawyer and that this is not legal advi [...] Content analysis details: (1.6 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [40.92.18.12 listed in list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (morgan.j.smith[at]outlook.com) -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [40.92.18.12 listed in wl.mailspike.net] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 SPF_HELO_PASS SPF: HELO matches SPF record 0.0 MSGID_FROM_MTA_HEADER Message-Id was added by a relay -0.0 NICE_REPLY_A Looks like a legit reply (A) 1.6 FORGED_MUA_MOZILLA Forged mail pretending to be from Mozilla X-Debbugs-Envelope-To: 44775 Cc: 44775@debbugs.gnu.org, zimoun X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.6 (/) Hi John, (And hi Andrew. We're discussing including your code into the main Guix repository. You can view the full conversation here: https://issues.guix.gnu.org/44775) The code I linked to is already licensed under GPLv3+ meaning that you are free to integrate their code into the Guix code-base (Going to put here that I'm not a lawyer and that this is not legal advice and might not even be correct). You should indeed put a little copyright line for Andrew in the code. The exact copyright line you should use seems to be this (pulled from their git repo): ;;; Copyright © 2020 Andrew Whatson You can do all this without contacting the author, but hopefully Andrew responds to us with lots of love. Thanks, Morgan On 12/11/20 3:40 PM, John Soo wrote: > Hi Morgan, > > Thank you! I will take a look. If I end up using some of their code, > should I consult them about it and see if they want a copyright line? > How is that supposed to work? > > Thank you again, > > John > From debbugs-submit-bounces@debbugs.gnu.org Thu Dec 17 19:25:32 2020 Received: (at 44775) by debbugs.gnu.org; 18 Dec 2020 00:25:32 +0000 Received: from localhost ([127.0.0.1]:37344 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kq3aO-0006DB-FA for submit@debbugs.gnu.org; Thu, 17 Dec 2020 19:25:32 -0500 Received: from mail-vs1-f47.google.com ([209.85.217.47]:33023) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kq3aJ-0006CM-4Z for 44775@debbugs.gnu.org; Thu, 17 Dec 2020 19:25:30 -0500 Received: by mail-vs1-f47.google.com with SMTP id e15so491648vsa.0 for <44775@debbugs.gnu.org>; Thu, 17 Dec 2020 16:25:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=4whKzGsYKgZIyDKzEGO9vIGjcNvkpdCL1VznWLm8OlE=; b=TDFUPC8ZFrL5nhyQV/vKXJL336o9hhTN1kwrYHRleMMWf7jY+Ku/aSNwQgRwEFLssR W0RNj7yOPjbOigf1v5QQGDdeRppEiKkOxk/nsI6xCRUc2GIx3zSls4v98oGSFYbdVZB1 DzhdqCm/pvmUUlKfSEQTm8XPkRZnoAwYNMK+Lzvj+EzdTwR1Zm9m1sG8+JyIp2WiWFFf H9QURqC6+hzfPOrwT4Z269175kydG3/QlbkUyZqZQ13KgxTpcvFpeFMADr+Mpc9qVjTU QvvqS5YZr/By0aVa22Z79fa9Jp0WqdVaD2q+nR8/XCMv0yGLgVscXwnXMSmAObiHbiCZ QZLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=4whKzGsYKgZIyDKzEGO9vIGjcNvkpdCL1VznWLm8OlE=; b=r6sYZymj8Xu3usFqiD/6Hx1FewxhZ38AwJX2b/DkZYfI3UPhfrQRwKYZVSDFWvTAsY dLjhhF34Wjb0iGhCjRpf3KMqsA7TLebRqszWCYQuKh2WYtL/NOsQqt6tn754uUWSjIEN PqBtHf/bJ/Xcq3J87Jsf7hfyS4ZkDR974/vYydU2q8AtJZ0f9Nn3lUUoBRGyvyP0Lg0e MbR8AfkMxMQ9+Fu2dscNdDdK6dI/LbQexLmwe/rFQmpQMW9wRX1YTiCLVDYU6HMrfA6P 6QRsjCj4mcqJ/ndOVC27csX0ooiB28rsKQ6BGTzDTD/dioIKyrhB96q5O3dGaxhsCuID sHGQ== X-Gm-Message-State: AOAM530iz/f0GllYiVLRw18FHJd/ekNKjtWZvbL5NKfuGMGiDNQiJ9pQ 9BfAHGzRsrVgCOeM+h0kKG/U3FYYG29ka24NX40= X-Google-Smtp-Source: ABdhPJxXGvnSTszE4jCvqNtC2/y4PfV3qXCPWZ6AIeXqe4xSBPkZcZ+P4dbboCtpuDrKOdLm4tRsFsJ0tK9v7tieZzo= X-Received: by 2002:a67:18c6:: with SMTP id 189mr1814622vsy.54.1608251121422; Thu, 17 Dec 2020 16:25:21 -0800 (PST) MIME-Version: 1.0 References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> <87pn42wz8o.fsf@asu.edu> <87k0tovzy3.fsf@asu.edu> In-Reply-To: From: Andrew Whatson Date: Fri, 18 Dec 2020 10:25:09 +1000 Message-ID: Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs To: Morgan Smith Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44775 Cc: Andrea Corallo , 44775@debbugs.gnu.org, John Soo , zimoun X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi everyone, Yes, I'm very happy for my work to be included in Guix in whatever form. I've detailed my work below, and also CC'd Andrea who is responsible for developing this feature in case he has anything to add. 1. Enable the `--with-native-comp` configure flag. Self explanatory! 2. Set the `NATIVE_FULL_AOT=3D1` make flag, maybe. This tells the build process to native-compile *all* of the Elisp that ships with Emacs. Otherwise only the minimal set of Elisp packages included in the pdump will be native-compiled, with the rest to be compiled on-demand at runtime. This has a significant impact on compilation time, so makes more sense if the package will be built once and installed many times, and less sense if everyone is building the package themselves. 3. Extend `LIBRARY_PATH` so libgccjit works at compile time. This is necessary for a functioning libgccjit and to pass the "smoke test" in the configure script. I think this should probably be exported by the libgccjit package as a search path instead of requiring all dependents to handle it manually. 4. Patch the `comp-native-driver-options` in `comp.el`. This is necessary to have libgccjit functioning at runtime. Originally I was setting LIBRARY_PATH in the emacs wrapper to achieve this, but that had the undesirable effect of leaking to any process launched from Emacs. Setting the necessary paths via the driver options is a much more targeted solution. 5. Remove the shell-script wrappers from eln files. The `glib-or-gtk-build-system` aggressively wraps anything which smells like an executable, preventing the native-compiled Elisp from being loaded as shared libraries at runtime. This is based on the `restore-emacs-pdmp` phase in the base Emacs package which works around the same problem. 6. Use a newer `libgccjit` based on `gcc-10`. This is not strictly necessary, but if I recall correctly libgccjit-9 suffers from a bug related to the inlining of constant strings which was fixed in libgccjit-10, and this has some impact on the performance of native-compiled Elisp. The `libgccjit` package in Guix is only defined for gcc-9, so I created a package factory to define libgccjit packages based on an arbitrary gcc, and use gcc-10 and libgccjit-10 as dependencies for the emacs-native-comp package. I haven't tried to build using gcc-9 and libgccjit-10, so I'm not sure if there's some interdependency. I think it would be best to upstream libgccjit-10 alongside an emacs-native-comp package. I hope this all makes sense, happy to answer any questions. Cheers, Andrew On Fri, 18 Dec 2020 at 03:26, Morgan Smith wro= te: > > Hi John, > > (And hi Andrew. We're discussing including your code into the main Guix > repository. You can view the full conversation here: > https://issues.guix.gnu.org/44775) > > The code I linked to is already licensed under GPLv3+ meaning that you > are free to integrate their code into the Guix code-base (Going to put > here that I'm not a lawyer and that this is not legal advice and might > not even be correct). You should indeed put a little copyright line for > Andrew in the code. The exact copyright line you should use seems to be > this (pulled from their git repo): > > ;;; Copyright =C2=A9 2020 Andrew Whatson > > You can do all this without contacting the author, but hopefully Andrew > responds to us with lots of love. > > Thanks, > > Morgan > > On 12/11/20 3:40 PM, John Soo wrote: > > Hi Morgan, > > > > Thank you! I will take a look. If I end up using some of their code, > > should I consult them about it and see if they want a copyright line? > > How is that supposed to work? > > > > Thank you again, > > > > John > > From debbugs-submit-bounces@debbugs.gnu.org Thu Dec 17 21:57:53 2020 Received: (at 44775) by debbugs.gnu.org; 18 Dec 2020 02:57:54 +0000 Received: from localhost ([127.0.0.1]:37424 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kq5xp-0004ML-LV for submit@debbugs.gnu.org; Thu, 17 Dec 2020 21:57:53 -0500 Received: from mail-wm1-f46.google.com ([209.85.128.46]:33730) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kq5xn-0004M7-F5 for 44775@debbugs.gnu.org; Thu, 17 Dec 2020 21:57:52 -0500 Received: by mail-wm1-f46.google.com with SMTP id n16so5074666wmc.0 for <44775@debbugs.gnu.org>; Thu, 17 Dec 2020 18:57:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-transfer-encoding; bh=04MW20pdJAsYmNmu5J7uCOUvXqIY69GXmXrjXX/GXiQ=; b=DTsXaS2tvH0OXAujYmOBRPi6HpJhaDjBm+oD7Gxvci4IsPmemUrBipvMDA/aPwUe+9 w+TlzCmr3kKqvkA+ZDPZFjPYe/h7xP+g+QkB9bAt6CMnZQH2A6eA6TAYugeQICm+R4co jJOTZM619Gv+FgP1lkLOuWL0ZJs80xyCPhkTGECjjDnZNcQHDupFvk/kdv7KJnNOVSwp tQ7vSj1FlAKxWKjKq3IC7J6v+K/+b61+mT6c+dzbXjZgrE3UgwW31wUj614M8F7ok7n6 4iyZorIjEt+gIkNj2sURQbkt45L7NsqVxnjvH89GiqAO8XrV5BRDZSosnmARt4EIPSFc /Hsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:in-reply-to:references:date :message-id:mime-version:content-transfer-encoding; bh=04MW20pdJAsYmNmu5J7uCOUvXqIY69GXmXrjXX/GXiQ=; b=YVlX2xcLut665UKxMLwBFspzsJkbD7qQZn29HAsVAa2+oBGu2+mWJvcbLx3T3YmV0B CjxF8ezgkmEI3UcfAeeaPIA7QXfDjfCn9kl4kP2kHY/MwxK4U8yuERq0v17t3jY7ALYN lV+U96edo8RBDbfWcNh3v7P9TXmey8DbFV9+aAIbHfdG2ehRA0csYsfzawU3MGbgRD2j vGWxh5nLUksIaiSjczMaz7EEb7ogqz52cdxeGApQFsJcvHGlajkPMheI0FxZGR8G9wid 5QZ8rclkvFjUb9rEUV0rgWkzUo2haj3Jqz2Tbnd97FkxDrlboysPS6b+t1w5D7ZHB/Tb nH9Q== X-Gm-Message-State: AOAM533Qne35CldNl9yrcIdo5W/mjzcbauht6adaYnAR6/ljPdM9k2xp tkR942ja4Q437/YoxUGSOeasU+qCHpU= X-Google-Smtp-Source: ABdhPJyMk9subxjW+k2qpgkuWJneor3tDRaY2FVoSxNsiTbgXiQU/adqRijXIqdTElMq5mNp72zmJw== X-Received: by 2002:a1c:2c4:: with SMTP id 187mr2078084wmc.187.1608260265621; Thu, 17 Dec 2020 18:57:45 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id f9sm12695927wrw.81.2020.12.17.18.57.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Dec 2020 18:57:45 -0800 (PST) From: zimoun To: John Soo Subject: Re: [bug#44775] [PATCH] WIP: Add gccemacs In-Reply-To: <87tutex08p.fsf@asu.edu> References: <874kljnk8z.fsf@asu.edu> <86360zvhkw.fsf@gmail.com> <87tutex08p.fsf@asu.edu> Date: Fri, 18 Dec 2020 03:50:18 +0100 Message-ID: <86y2hvn7yt.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44775 Cc: 44775@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi John, On Tue, 24 Nov 2020 at 07:06, John Soo wrote: >> Thanks! This motivates me to resume what had been discussed here [1]: >> be able to somehow run: >> >> guix build emacs-magit emacs-foo emacs-bar --with-input=3Demacs=3Dgccem= acs >> >> At least, have a package transformation that allow to rebuild all the >> Emacs packages with the =E2=80=99gccemacs=E2=80=99 VM instead of the cur= rent Emacs 27 one. >> >>> It feels fast but there are bugs and the closure is huge. Also these >>> patches do not use any of the parameterization machinery. >> >> What do you mean by =E2=80=9Cparameterization machinery=E2=80=9D? The n= ew >> =E2=80=99with-parameter=E2=80=99 introduced here [2] or the package tran= sformation that >> replaces all the dependencies (explicit and implicit). > I am referring to https://yhetil.org/guix-devel/87eeku8trb.fsf@gnu.org > > --with-parameter=3Dgccemacs or similar seem to be required since the > native-comp branch requires a different source, configure flags, and > probably native-search-paths at least. I am not convinced that the =E2=80=9Cparameterization machinery=E2=80=9D co= uld help here (aside it is far to be ready :-)) because in this case, =E2=80=9Cgccemacs= =E2=80=9D is not a =C2=ABparameter=C2=BB but an =C2=ABargument=C2=BB of the Emacs build = system. Maybe I miss something. > There appears to be a separate compiled artifact directory under > $out/lib/emacs/$version/native-lisp/$version-triple which has the > compiled native libraries (.eln files). That directory seems to not be > in the search path. That appears to be causing the first error > I see. I am not sure which env variable would be tweaked to pick those > paths up. Thanks for the explanations. All the best, simon From debbugs-submit-bounces@debbugs.gnu.org Mon May 29 08:06:19 2023 Received: (at 44775-done) by debbugs.gnu.org; 29 May 2023 12:06:19 +0000 Received: from localhost ([127.0.0.1]:57290 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q3bdi-000565-SD for submit@debbugs.gnu.org; Mon, 29 May 2023 08:06:19 -0400 Received: from mail1.fsfe.org ([217.69.89.151]:43898) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1q3bdg-00055x-Rl for 44775-done@debbugs.gnu.org; Mon, 29 May 2023 08:06:18 -0400 From: Jelle Licht DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fsfe.org; s=2021100501; t=1685361976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=H8rHhfoeOP9vwaITfC7dSidhz1V3E3CqClwwXjDhaXg=; b=FdU+YlG9PRxzaVtV6goEhHMXNMWDerUIIkp383ORyAlc6vTVncF4XdZBDsGviW9pYc0Rnw HnVU4dvaGueNvEx3mePRt4T97NTeEVtlQqq8bwyX64am5s3ySXNmhVe1HTzXsfPL26iHZF og4JDNcWCgv2WRjm6rbzWMXnZbGgUaI= To: John Soo Subject: Re: bug#44775: [PATCH] WIP: Add gccemacs In-Reply-To: <874kljnk8z.fsf@asu.edu> (John Soo's message of "Sat, 21 Nov 2020 01:15:40 -0800") References: <874kljnk8z.fsf@asu.edu> Date: Mon, 29 May 2023 14:06:15 +0200 Message-ID: <87v8gbmjew.fsf@fsfe.org> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 44775-done Cc: 44775-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Most versions of Emacs available on the guix master branch make use of this work to make everything blazing fast, so thanks. Closing. From unknown Fri Jun 20 07:24:30 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 27 Jun 2023 11:24:13 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator