unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Andrew Tropin via Guix-patches via <guix-patches@gnu.org>
To: Liliana Marie Prikler <liliana.prikler@gmail.com>, 67260@debbugs.gnu.org
Cc: Mekeor Melire <mekeor@posteo.de>,
	Josselin Poiret <dev@jpoiret.xyz>,
	cox.katherine.e+guix@gmail.com
Subject: [bug#67260] [PATCH v4 1/5] gnu: emacs: Build trampolines.
Date: Thu, 28 Dec 2023 08:56:15 +0300	[thread overview]
Message-ID: <87r0j6g9a8.fsf@trop.in> (raw)
In-Reply-To: <8269b690abfe4011b01a59d35f24a5b6ca938f29.camel@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4066 bytes --]

On 2023-12-27 21:03, Liliana Marie Prikler wrote:

> Am Mittwoch, dem 27.12.2023 um 21:27 +0300 schrieb Andrew Tropin:
>> On 2023-12-27 17:40, Liliana Marie Prikler wrote:
>> 
>> > Am Mittwoch, dem 27.12.2023 um 14:00 +0300 schrieb Andrew Tropin:
>> > > On 2023-11-25 12:13, Liliana Marie Prikler wrote:
>> > > 
>> > > > * gnu/packages/emacs.scm (emacs-no-x)[#:phases]: Add ‘build-
>> > > > trampolines’.
>> > > > 
>> > > > Change-Id: I33303bcbaf6cbda15867a5546e793c05d1f0e67b
>> > > > ---
>> > > >  gnu/packages/emacs.scm | 5 ++++-
>> > > >  1 file changed, 4 insertions(+), 1 deletion(-)
>> > > > 
>> > > > diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
>> > > > index b9d9e2b891..55eab48c25 100644
>> > > > --- a/gnu/packages/emacs.scm
>> > > > +++ b/gnu/packages/emacs.scm
>> > > > @@ -327,7 +327,10 @@ (define-public emacs-no-x
>> > > >                      (string-append
>> > > >                       "-B" #$(this-package-input "libgccjit")
>> > > > "/lib/")
>> > > >                      (string-append
>> > > > -                     "-B" #$(this-package-input "libgccjit")
>> > > > "/lib/gcc/"))))))))))
>> > > > +                     "-B" #$(this-package-input "libgccjit")
>> > > > "/lib/gcc/"))))))
>> > > > +            (add-after 'build 'build-trampolines
>> > > > +              (lambda* (#:key make-flags #:allow-other-keys)
>> > > > +                (apply invoke "make" "trampolines" make-
>> > > > flags)))))))
>> > > >      (inputs
>> > > >       (modify-inputs (package-inputs emacs-minimal)
>> > > >         (prepend gnutls
>> > > > 
>> > > > base-commit: 60c97924e9519361494aaf0686e28eb831a42315
>> > > 
>> > > Applied the patch series v4 to emacs-team branch, removed all eln
>> > > files
>> > > in ~/.cache/emacs and ~/.config/emacs, executed
>> > > 
>> > > --8<---------------cut here---------------start------------->8---
>> > > ./pre-inst-env guix shell emacs-pgtk emacs-magit \
>> > > --pure -E '.*GTK.*|.*XDG.*|.*DISPLAY.*' -- emacs -Q
>> > > # M-S-: (require 'magit) RET
>> > > --8<---------------cut here---------------end--------------->8---
>> > You're missing --with-input=emacs-minimal=emacs.  You are not
>> > natively compiling emacs-magit atm.
>> 
>> Right, thank you!
> Turns out you also need to do this with emacs-no-x due to emacs-libgit.
>
> Friendly reminder that we don't have build system/packaging utilities
> to easily replace emacs versions yet, so magit might not have been the
> wisest choice to showcase here.
>
> More worryingly, it appears you're recompiling Emacs itself here.  This
> should not be happening.  However, it turns out that your eln-cache is
> always first on the native load path and thus already compiled files
> won't be found.¹  Try adding 
>   --eval='(setq native-comp-jit-compilation nil)'
> and see whether you can load natively compiled procedures and have them
> show as natively compiled.

--8<---------------cut here---------------start------------->8---
native-comp-eln-load-path is a variable defined in ‘C source code’.

Its value is
("/home/bob/.config/emacs/eln-cache/" "/gnu/store/lxf6aqh5b1zzaclfxcivk8vw1q4fhrrn-profile/lib/emacs/native-site-lisp" "../native-lisp/")
--8<---------------cut here---------------end--------------->8---


--8<---------------cut here---------------start------------->8---
ls ~/.config/emacs/eln-cache/**/ 
/home/bob/.config/emacs/eln-cache/:
29.1-5c9913f6/

/home/bob/.config/emacs/eln-cache/29.1-5c9913f6/:
subr--trampoline-6d616b652d70726f63657373_make_process_0.eln
--8<---------------cut here---------------end--------------->8---

magit-status is an interactive native-compiled Lisp function in
‘magit-status.el’.

>
> Cheers
>
> ¹ Maybe there's a smarter way to locate them files?  Did I go wrong in
> one of my patches?
>

-- 
Best regards,
Andrew Tropin

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

      parent reply	other threads:[~2023-12-28  5:57 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <84c0bc8c4e65af2241b9dd15f494fdc7eedd83d1.1702036387.git.liliana.prikler@gmail.com>
2023-12-08 11:16 ` [bug#67260] [PATCH v4 4/5] gnu: emacs-org: Fix native builds Liliana Marie Prikler
2023-12-08 11:45 ` [bug#67260] [PATCH v4 5/5] gnu: emacs-magit: " Liliana Marie Prikler
2023-12-27 11:00 ` [bug#67260] [PATCH v4 1/5] gnu: emacs: Build trampolines Andrew Tropin via Guix-patches via
2023-12-27 16:40   ` Liliana Marie Prikler
2023-12-27 18:27     ` Andrew Tropin via Guix-patches via
2023-12-27 20:03       ` Liliana Marie Prikler
2023-12-27 20:44         ` Liliana Marie Prikler
2023-12-28  5:56         ` Andrew Tropin via Guix-patches via [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87r0j6g9a8.fsf@trop.in \
    --to=guix-patches@gnu.org \
    --cc=67260@debbugs.gnu.org \
    --cc=andrew@trop.in \
    --cc=cox.katherine.e+guix@gmail.com \
    --cc=dev@jpoiret.xyz \
    --cc=liliana.prikler@gmail.com \
    --cc=mekeor@posteo.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).