GNU bug report logs - #70246
30.0.50; Update INSTALL for native compilation

Previous Next

Package: emacs;

Reported by: Stephen Berman <stephen.berman <at> gmx.net>

Date: Sat, 6 Apr 2024 20:54:01 UTC

Severity: normal

Found in version 30.0.50

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 70246 in the body.
You can then email your comments to 70246 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Sat, 06 Apr 2024 20:54:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stephen Berman <stephen.berman <at> gmx.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 06 Apr 2024 20:54:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Stephen Berman <stephen.berman <at> gmx.net>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.0.50; Update INSTALL for native compilation
Date: Sat, 06 Apr 2024 22:53:31 +0200
[Message part 1 (text/plain, inline)]
The INSTALL file in the Emacs sources makes no reference to native
compilation.  The attached patch is an attempt to fill this gap (but I'm
not sure about the default locations of installed natively compiled Lisp
files, since I do not install Emacs when I build and do not have a
distribution installation of Emacs built with native compilation to
check).

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
 3.24.41, cairo version 1.18.0) of 2024-03-31 built on strobelfs
Repository revision: 09f381d70d8852d90cdd3c8d7e1e2786dbc61f92
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101011
System Description: Linux From Scratch r12.1-30

Configured using:
 'configure 'CFLAGS=-Og -g3' PKG_CONFIG_PATH=/opt/qt5/lib/pkgconfig'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
LCMS2 LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG
RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11
XDBE XIM XINPUT2 XPM GTK3 ZLIB

[Message part 2 (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Sun, 07 Apr 2024 06:09:02 GMT) Full text and rfc822 format available.

Message #8 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stephen Berman <stephen.berman <at> gmx.net>
Cc: 70246 <at> debbugs.gnu.org
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Sun, 07 Apr 2024 09:08:05 +0300
> Date: Sat, 06 Apr 2024 22:53:31 +0200
> From:  Stephen Berman via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
> 
> The INSTALL file in the Emacs sources makes no reference to native
> compilation.  The attached patch is an attempt to fill this gap (but I'm
> not sure about the default locations of installed natively compiled Lisp
> files, since I do not install Emacs when I build and do not have a
> distribution installation of Emacs built with native compilation to
> check).

Thanks.  This LGTM, except the changes to item 6: there, I would only
mention the possibility of building out of the source tree.  Whether
running uninstalled is possible in this case depends where is the
build tree relative to the source tree, so I'd rather not describe all
the gory details there because they are too complex to explain (what
you wrote is inaccurate); I'd just say that running uninstalled is
fully supported only when Emacs is built in the source tree.

> +'/usr/local/share/emacs/VERSION/native-lisp' holds the natively compiled
> +		pre-loaded Emacs Lisp files.

This is incorrect: native-lisp is installed under /usr/lib/emacs/VERSION,
not under /usr/share/emacs/VERSION.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Sun, 07 Apr 2024 11:50:02 GMT) Full text and rfc822 format available.

Message #11 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Stephen Berman <stephen.berman <at> gmx.net>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 70246 <at> debbugs.gnu.org
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Sun, 07 Apr 2024 13:48:41 +0200
[Message part 1 (text/plain, inline)]
On Sun, 07 Apr 2024 09:08:05 +0300 Eli Zaretskii <eliz <at> gnu.org> wrote:

>> Date: Sat, 06 Apr 2024 22:53:31 +0200
>> From:  Stephen Berman via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
>>
>> The INSTALL file in the Emacs sources makes no reference to native
>> compilation.  The attached patch is an attempt to fill this gap (but I'm
>> not sure about the default locations of installed natively compiled Lisp
>> files, since I do not install Emacs when I build and do not have a
>> distribution installation of Emacs built with native compilation to
>> check).
>
> Thanks.  This LGTM, except the changes to item 6: there, I would only
> mention the possibility of building out of the source tree.  Whether
> running uninstalled is possible in this case depends where is the
> build tree relative to the source tree, so I'd rather not describe all
> the gory details there because they are too complex to explain (what
> you wrote is inaccurate);

There was a mistake at the end of 6b; what I meant to write is "but the
../lib-src and ../native-lisp directories in the build directory
(because the compiled files in these directories are
machine-dependent)."  If there were any other inaccuracies in what I
wrote, can you please point them out to me (for my own edification)?

>                           I'd just say that running uninstalled is
> fully supported only when Emacs is built in the source tree.

So instead of having 6{a,b,c} as in my patch, are the following
additions to the current version (at the end of the first paragraph of
6) ok?

=======================================================================
, ../native-lisp (if built with support for native compilation).

If you build Emacs in a directory separate from the source directory
("out-of-tree"), run 'make' in the build directory.  Then you can
execute the 'src/emacs' file under that directory "in place".  However,
running Emacs uninstalled is fully supported only when it is built in
the source tree.
=======================================================================

But, again for my own edification, can you elaborate what "fully
supported" means here?  I've been running Emacs uninstalled from a build
directory outside of the source tree for many years, and that statement
suggests my builds are deficient (though perhaps only in unobvious ways
that are not crucial for using Emacs), and if so, I'd like to know how
and why.

>> +'/usr/local/share/emacs/VERSION/native-lisp' holds the natively compiled
>> +		pre-loaded Emacs Lisp files.
>
> This is incorrect: native-lisp is installed under /usr/lib/emacs/VERSION,
> not under /usr/share/emacs/VERSION.

I guess you meant /usr/local/lib/emacs/VERSION for the default location?

The above changes are in the attached patch (which also corrects two
typos in my previous patch in the first paragraph under the heading
"Native compilation of Lisp files").

Steve Berman

[Message part 2 (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Sun, 07 Apr 2024 14:53:02 GMT) Full text and rfc822 format available.

Message #14 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stephen Berman <stephen.berman <at> gmx.net>
Cc: 70246 <at> debbugs.gnu.org
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Sun, 07 Apr 2024 17:52:13 +0300
> From: Stephen Berman <stephen.berman <at> gmx.net>
> Cc: 70246 <at> debbugs.gnu.org
> Date: Sun, 07 Apr 2024 13:48:41 +0200
> 
> On Sun, 07 Apr 2024 09:08:05 +0300 Eli Zaretskii <eliz <at> gnu.org> wrote:
> 
> > Thanks.  This LGTM, except the changes to item 6: there, I would only
> > mention the possibility of building out of the source tree.  Whether
> > running uninstalled is possible in this case depends where is the
> > build tree relative to the source tree, so I'd rather not describe all
> > the gory details there because they are too complex to explain (what
> > you wrote is inaccurate);
> 
> There was a mistake at the end of 6b; what I meant to write is "but the
> ../lib-src and ../native-lisp directories in the build directory
> (because the compiled files in these directories are
> machine-dependent)."  If there were any other inaccuracies in what I
> wrote, can you please point them out to me (for my own edification)?

See below.

> >                           I'd just say that running uninstalled is
> > fully supported only when Emacs is built in the source tree.
> 
> So instead of having 6{a,b,c} as in my patch, are the following
> additions to the current version (at the end of the first paragraph of
> 6) ok?
> 
> =======================================================================
> , ../native-lisp (if built with support for native compilation).
> 
> If you build Emacs in a directory separate from the source directory
> ("out-of-tree"), run 'make' in the build directory.  Then you can
> execute the 'src/emacs' file under that directory "in place".  However,
> running Emacs uninstalled is fully supported only when it is built in
> the source tree.
> =======================================================================

Yes, but see below.

> But, again for my own edification, can you elaborate what "fully
> supported" means here?

It means that (a) Emacs will find all the files it needs for running,
which includes programs and files in lib-src/, Lisp *.el/*.elc/*.eln
files, Info files, and files in the etc/ subdirectory in the tree from
which it is run; and (b) when any of the source files are edited and
Emacs is rebuilt, the next invocation will use the updated files,
including recompiling the *.eln files as needed.

> I've been running Emacs uninstalled from a build
> directory outside of the source tree for many years, and that statement
> suggests my builds are deficient (though perhaps only in unobvious ways
> that are not crucial for using Emacs), and if so, I'd like to know how
> and why.

What Emacs does at startup to decide where its files are installed is
complex and hard to explain without describing the entire algorithm
(which is both inappropriate for INSTALL and subject to change without
notice).  If you are interested, look in emacs.c:init_cmdargs and
lread.c:load_path_default.

The bottom line is that the Lisp and Info files will be taken from the
source tree, not from the build tree.  So if you have more than one
build from the same source tree, then they all share the Lisp and Info
files.  Therefore, if you modify anything in the source tree, you must
rebuild all the out-of-tree builds, otherwise those you don't rebuild
will be inconsistent with the modified sources.

> >> +'/usr/local/share/emacs/VERSION/native-lisp' holds the natively compiled
> >> +		pre-loaded Emacs Lisp files.
> >
> > This is incorrect: native-lisp is installed under /usr/lib/emacs/VERSION,
> > not under /usr/share/emacs/VERSION.
> 
> I guess you meant /usr/local/lib/emacs/VERSION for the default location?

Yes.

> +By default, Emacs natively compiles only pre-loaded Lisp files during
> +the build process; other Lisp files are natively compiled
> +"just-in-time", i.e, when they are loaded in the running Emacs.  If you
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
"when they are first time loaded into the running Emacs".

>  6) Run 'make' in the top directory of the Emacs distribution to finish
> -building Emacs in the standard way.  The final executable file is
> -named 'src/emacs'.  You can execute this file "in place" without
> -copying it, if you wish; then it automatically uses the sibling
> -directories ../lisp, ../lib-src, ../info.
> +building Emacs in the standard way.  The final executable file is named
> +'src/emacs'.  You can execute this file "in place" without copying it,
> +if you wish; then it automatically uses the sibling directories ../lisp,
> +../lib-src, ../info, ../native-lisp (if built with support for native
> +compilation).
> +
> +If you build Emacs in a directory separate from the source directory
> +("out-of-tree"), run 'make' in the build directory.  Then you can
> +execute the 'src/emacs' file under that directory "in place".  However,
> +running Emacs uninstalled is fully supported only when it is built in
> +the source tree.

I think the last sentence should be better phrased as

  However, running Emacs uninstalled in this case will still use the
  ../lisp and ../info subdirectories of the source tree, while using
  the ../lib-src and ../native-lisp subdirectories from the build tree.

> +'/usr/local/lib/emacs/VERSION/native-lisp' holds the natively compiled
> +		pre-loaded Emacs Lisp files.

The above also contains the other Lisp files if using the
"--with-native-compilation=aot" configure-time option.

> +'~/.emacs.d/eln-cache/' holds the remaining natively compiled Lisp files.

Instead of "remaining" I'd say "just-in-time natively compiled Lisp
files".

Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Sun, 07 Apr 2024 19:15:02 GMT) Full text and rfc822 format available.

Message #17 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Stephen Berman <stephen.berman <at> gmx.net>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 70246 <at> debbugs.gnu.org
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Sun, 07 Apr 2024 21:14:08 +0200
[Message part 1 (text/plain, inline)]
On Sun, 07 Apr 2024 17:52:13 +0300 Eli Zaretskii <eliz <at> gnu.org> wrote:

>> From: Stephen Berman <stephen.berman <at> gmx.net>
>> Cc: 70246 <at> debbugs.gnu.org
>> Date: Sun, 07 Apr 2024 13:48:41 +0200
>>
>> On Sun, 07 Apr 2024 09:08:05 +0300 Eli Zaretskii <eliz <at> gnu.org> wrote:
>>
>> > Thanks.  This LGTM, except the changes to item 6: there, I would only
>> > mention the possibility of building out of the source tree.  Whether
>> > running uninstalled is possible in this case depends where is the
>> > build tree relative to the source tree, so I'd rather not describe all
>> > the gory details there because they are too complex to explain (what
>> > you wrote is inaccurate);
>>
>> There was a mistake at the end of 6b; what I meant to write is "but the
>> ../lib-src and ../native-lisp directories in the build directory
>> (because the compiled files in these directories are
>> machine-dependent)."  If there were any other inaccuracies in what I
>> wrote, can you please point them out to me (for my own edification)?
>
> See below.
>
>> >                           I'd just say that running uninstalled is
>> > fully supported only when Emacs is built in the source tree.
>>
>> So instead of having 6{a,b,c} as in my patch, are the following
>> additions to the current version (at the end of the first paragraph of
>> 6) ok?
>>
>> =======================================================================
>> , ../native-lisp (if built with support for native compilation).
>>
>> If you build Emacs in a directory separate from the source directory
>> ("out-of-tree"), run 'make' in the build directory.  Then you can
>> execute the 'src/emacs' file under that directory "in place".  However,
>> running Emacs uninstalled is fully supported only when it is built in
>> the source tree.
>> =======================================================================
>
> Yes, but see below.
>
>> But, again for my own edification, can you elaborate what "fully
>> supported" means here?
>
> It means that (a) Emacs will find all the files it needs for running,
> which includes programs and files in lib-src/, Lisp *.el/*.elc/*.eln
> files, Info files, and files in the etc/ subdirectory in the tree from
> which it is run; and (b) when any of the source files are edited and
> Emacs is rebuilt, the next invocation will use the updated files,
> including recompiling the *.eln files as needed.

AFAIK all that happens with my uninstalled out-of-tree builds, but maybe
there's some subtlety I'm not aware of.

>> I've been running Emacs uninstalled from a build
>> directory outside of the source tree for many years, and that statement
>> suggests my builds are deficient (though perhaps only in unobvious ways
>> that are not crucial for using Emacs), and if so, I'd like to know how
>> and why.
>
> What Emacs does at startup to decide where its files are installed is
> complex and hard to explain without describing the entire algorithm
> (which is both inappropriate for INSTALL and subject to change without
> notice).

Yes, INSTALL is certainly not the place for such details.

>           If you are interested, look in emacs.c:init_cmdargs and
> lread.c:load_path_default.

Ok, thanks for the pointers.

> The bottom line is that the Lisp and Info files will be taken from the
> source tree, not from the build tree.  So if you have more than one
> build from the same source tree, then they all share the Lisp and Info
> files.  Therefore, if you modify anything in the source tree, you must
> rebuild all the out-of-tree builds, otherwise those you don't rebuild
> will be inconsistent with the modified sources.

Yes, but if you instead make copies of the sources (or different repo
branches) to build different configurations and make changes that you
want to test in all configurations, then you have to make those changes
in each copy or branch and rebuild them all, too.  So there are
trade-offs in both procedures.

>> >> +'/usr/local/share/emacs/VERSION/native-lisp' holds the natively compiled
>> >> +		pre-loaded Emacs Lisp files.
>> >
>> > This is incorrect: native-lisp is installed under /usr/lib/emacs/VERSION,
>> > not under /usr/share/emacs/VERSION.
>>
>> I guess you meant /usr/local/lib/emacs/VERSION for the default location?
>
> Yes.
>
>> +By default, Emacs natively compiles only pre-loaded Lisp files during
>> +the build process; other Lisp files are natively compiled
>> +"just-in-time", i.e, when they are loaded in the running Emacs.  If you
>                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> "when they are first time loaded into the running Emacs".
>
>>  6) Run 'make' in the top directory of the Emacs distribution to finish
>> -building Emacs in the standard way.  The final executable file is
>> -named 'src/emacs'.  You can execute this file "in place" without
>> -copying it, if you wish; then it automatically uses the sibling
>> -directories ../lisp, ../lib-src, ../info.
>> +building Emacs in the standard way.  The final executable file is named
>> +'src/emacs'.  You can execute this file "in place" without copying it,
>> +if you wish; then it automatically uses the sibling directories ../lisp,
>> +../lib-src, ../info, ../native-lisp (if built with support for native
>> +compilation).
>> +
>> +If you build Emacs in a directory separate from the source directory
>> +("out-of-tree"), run 'make' in the build directory.  Then you can
>> +execute the 'src/emacs' file under that directory "in place".  However,
>> +running Emacs uninstalled is fully supported only when it is built in
>> +the source tree.
>
> I think the last sentence should be better phrased as
>
>   However, running Emacs uninstalled in this case will still use the
>   ../lisp and ../info subdirectories of the source tree, while using
>   the ../lib-src and ../native-lisp subdirectories from the build tree.
>
>> +'/usr/local/lib/emacs/VERSION/native-lisp' holds the natively compiled
>> +		pre-loaded Emacs Lisp files.
>
> The above also contains the other Lisp files if using the
> "--with-native-compilation=aot" configure-time option.
>
>> +'~/.emacs.d/eln-cache/' holds the remaining natively compiled Lisp files.
>
> Instead of "remaining" I'd say "just-in-time natively compiled Lisp
> files".
>
> Thanks.

Thanks again for the review and suggestions, which I've incorporated
into the attached patch, and if you confirm it's good to go, I'll commit
it to master.

Steve Berman

[Message part 2 (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Sun, 07 Apr 2024 19:30:04 GMT) Full text and rfc822 format available.

Message #20 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Björn Bidar <bjorn.bidar <at> thaodan.de>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 70246 <at> debbugs.gnu.org, Stephen Berman <stephen.berman <at> gmx.net>
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Sun, 07 Apr 2024 22:28:55 +0300
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Date: Sat, 06 Apr 2024 22:53:31 +0200
>> From:  Stephen Berman via "Bug reports for GNU Emacs,
>>  the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
>> 
>> The INSTALL file in the Emacs sources makes no reference to native
>> compilation.  The attached patch is an attempt to fill this gap (but I'm
>> not sure about the default locations of installed natively compiled Lisp
>> files, since I do not install Emacs when I build and do not have a
>> distribution installation of Emacs built with native compilation to
>> check).
>
> Thanks.  This LGTM, except the changes to item 6: there, I would only
> mention the possibility of building out of the source tree.  Whether
> running uninstalled is possible in this case depends where is the
> build tree relative to the source tree, so I'd rather not describe all
> the gory details there because they are too complex to explain (what
> you wrote is inaccurate); I'd just say that running uninstalled is
> fully supported only when Emacs is built in the source tree.
>
>> +'/usr/local/share/emacs/VERSION/native-lisp' holds the natively compiled
>> +		pre-loaded Emacs Lisp files.
>
> This is incorrect: native-lisp is installed under /usr/lib/emacs/VERSION,
> not under /usr/share/emacs/VERSION.
I would add a note that it might be /usr/lib64/emacs/30.0.50 depending
on the system.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Mon, 08 Apr 2024 02:29:02 GMT) Full text and rfc822 format available.

Message #23 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Björn Bidar <bjorn.bidar <at> thaodan.de>
Cc: 70246 <at> debbugs.gnu.org, stephen.berman <at> gmx.net
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Mon, 08 Apr 2024 05:28:19 +0300
> From: Björn Bidar <bjorn.bidar <at> thaodan.de>
> Cc: Stephen Berman <stephen.berman <at> gmx.net>,  70246 <at> debbugs.gnu.org
> Date: Sun, 07 Apr 2024 22:28:55 +0300
> 
> Eli Zaretskii <eliz <at> gnu.org> writes:
> 
> >> +'/usr/local/share/emacs/VERSION/native-lisp' holds the natively compiled
> >> +		pre-loaded Emacs Lisp files.
> >
> > This is incorrect: native-lisp is installed under /usr/lib/emacs/VERSION,
> > not under /usr/share/emacs/VERSION.
> I would add a note that it might be /usr/lib64/emacs/30.0.50 depending
> on the system.

Not by default, AFAIU.  I think you are looking at an installation of
a distro, in which case those who built the distro used the --prefix
option to install in different places.

The file INSTALL describes the defaults set by the configure script,
it cannot possibly describe what distros or individual users do on
their systems.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Mon, 08 Apr 2024 11:11:02 GMT) Full text and rfc822 format available.

Message #26 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Stephen Berman <stephen.berman <at> gmx.net>
Cc: 70246 <at> debbugs.gnu.org
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Mon, 08 Apr 2024 14:10:12 +0300
> From: Stephen Berman <stephen.berman <at> gmx.net>
> Cc: 70246 <at> debbugs.gnu.org
> Date: Sun, 07 Apr 2024 21:14:08 +0200
> 
> > The bottom line is that the Lisp and Info files will be taken from the
> > source tree, not from the build tree.  So if you have more than one
> > build from the same source tree, then they all share the Lisp and Info
> > files.  Therefore, if you modify anything in the source tree, you must
> > rebuild all the out-of-tree builds, otherwise those you don't rebuild
> > will be inconsistent with the modified sources.
> 
> Yes, but if you instead make copies of the sources (or different repo
> branches) to build different configurations and make changes that you
> want to test in all configurations, then you have to make those changes
> in each copy or branch and rebuild them all, too.  So there are
> trade-offs in both procedures.

My point was not that there aren't tradeoffs, my point was that
building out of source has certain subtleties that need to be
understood to avoid surprises.

> @@ -574,6 +601,11 @@ are installed in the following directories:
>  		at the same time; in particular, you don't have to
>  		make Emacs unavailable while installing a new version.
> 
> +'/usr/local/lib/emacs/VERSION/native-lisp' holds the natively compiled
> +		pre-loaded Emacs Lisp files.
> +
> +'~/.emacs.d/eln-cache/' holds the remaining natively compiled Lisp files.
> +
>  '/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC
>  		file, and other architecture-independent files Emacs
>  		might need while running.

Here you didn't make the change I suggested:

> > +'/usr/local/lib/emacs/VERSION/native-lisp' holds the natively compiled
> > +		pre-loaded Emacs Lisp files.
> 
> The above also contains the other Lisp files if using the
> "--with-native-compilation=aot" configure-time option.
> 
> > +'~/.emacs.d/eln-cache/' holds the remaining natively compiled Lisp files.
> 
> Instead of "remaining" I'd say "just-in-time natively compiled Lisp
> files".

Without that, these are a bit inaccurate, and could be misinterpreted.

Other that that, the patch LGTM, thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#70246; Package emacs. (Mon, 08 Apr 2024 12:02:02 GMT) Full text and rfc822 format available.

Message #29 received at 70246 <at> debbugs.gnu.org (full text, mbox):

From: Stephen Berman <stephen.berman <at> gmx.net>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 70246 <at> debbugs.gnu.org
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Mon, 08 Apr 2024 14:01:18 +0200
On Mon, 08 Apr 2024 14:10:12 +0300 Eli Zaretskii <eliz <at> gnu.org> wrote:

>> From: Stephen Berman <stephen.berman <at> gmx.net>
>> Cc: 70246 <at> debbugs.gnu.org
>> Date: Sun, 07 Apr 2024 21:14:08 +0200
>>
[...]
>> @@ -574,6 +601,11 @@ are installed in the following directories:
>>  		at the same time; in particular, you don't have to
>>  		make Emacs unavailable while installing a new version.
>>
>> +'/usr/local/lib/emacs/VERSION/native-lisp' holds the natively compiled
>> +		pre-loaded Emacs Lisp files.
>> +
>> +'~/.emacs.d/eln-cache/' holds the remaining natively compiled Lisp files.
>> +
>>  '/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC
>>  		file, and other architecture-independent files Emacs
>>  		might need while running.
>
> Here you didn't make the change I suggested:
>
>> > +'/usr/local/lib/emacs/VERSION/native-lisp' holds the natively compiled
>> > +		pre-loaded Emacs Lisp files.
>>
>> The above also contains the other Lisp files if using the
>> "--with-native-compilation=aot" configure-time option.
>>
>> > +'~/.emacs.d/eln-cache/' holds the remaining natively compiled Lisp files.
>>
>> Instead of "remaining" I'd say "just-in-time natively compiled Lisp
>> files".
>
> Without that, these are a bit inaccurate, and could be misinterpreted.

Oops, those were unintentional omissions.  I'm glad I asked you to
eyeball the patch again, and thanks for catching them!  Now corrected.

> Other that that, the patch LGTM, thanks.

Thanks, pushed as commit b9b2bc7192e to master.

Steve Berman




Reply sent to Stefan Kangas <stefankangas <at> gmail.com>:
You have taken responsibility. (Sun, 30 Jun 2024 05:50:02 GMT) Full text and rfc822 format available.

Notification sent to Stephen Berman <stephen.berman <at> gmx.net>:
bug acknowledged by developer. (Sun, 30 Jun 2024 05:50:02 GMT) Full text and rfc822 format available.

Message #34 received at 70246-done <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Stephen Berman <stephen.berman <at> gmx.net>
Cc: 70246-done <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>
Subject: Re: bug#70246: 30.0.50; Update INSTALL for native compilation
Date: Sat, 29 Jun 2024 22:48:27 -0700
Stephen Berman <stephen.berman <at> gmx.net> writes:

> Thanks, pushed as commit b9b2bc7192e to master.

I'm therefore closing this bug report.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 28 Jul 2024 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 203 days ago.

Previous Next


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