* making an emacs-29 tarball for testing latest changes on the branch
@ 2023-05-30 10:35 Andrés Ramírez
2023-05-30 11:16 ` Eli Zaretskii
0 siblings, 1 reply; 3+ messages in thread
From: Andrés Ramírez @ 2023-05-30 10:35 UTC (permalink / raw)
To: Help-gnu-emacs
Hi.
When You want to speedup compilation on a lower end machine. The best
alternative is making a tarball, this recipe worked in the past:
--8<---------------cut here---------------start------------->8---
autoreconf -i -I m4 --force
make bootstrap
./make-dist --snapshot --no-compress --no-changelog
--8<---------------cut here---------------end--------------->8---
So after downloading from savannah the snapshot
emacs-emacs-29.tar.gz. I tried the recipe.
If failed in the last step
--8<---------------cut here---------------start------------->8---
$ ./make-dist --snapshot --no-compress --no-changelog
Version number is 29.0.91
Sanity checking (use --no-check to disable this)...
The following .el files have no corresponding .elc files:
lisp/emacs-lisp/comp.el lisp/emacs-lisp/comp-cstr.el
Failed checks
$ ./make-dist --snapshot --no-compress --no-changelog --no-check
Version number is 29.0.91
Creating staging directory: 'make-dist.tmp.41366'
./make-dist: line 397: make-dist.tmp.41366/MANIFEST: No such file or directory
$ ./make-dist --snapshot --no-compress --no-changelog --no-check
Version number is 29.0.91
Creating staging directory: 'make-dist.tmp.41922'
Creating top directory: 'make-dist.tmp.41922/emacs-29.0.91'
Creating subdirectories
mkdir: missing operand
Try 'mkdir --help' for more information.
Cleaning up the staging directory
$
--8<---------------cut here---------------end--------------->8---
when
,---- [ ]
| ./make-dist: line 397: make-dist.tmp.41366/MANIFEST: No such file or directory
`----
I did touch MANIFEST
Then I got the last error message.
What I am missing for making the tarball?
Best Regards
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: making an emacs-29 tarball for testing latest changes on the branch
2023-05-30 10:35 making an emacs-29 tarball for testing latest changes on the branch Andrés Ramírez
@ 2023-05-30 11:16 ` Eli Zaretskii
2023-06-03 11:14 ` andrés ramírez
0 siblings, 1 reply; 3+ messages in thread
From: Eli Zaretskii @ 2023-05-30 11:16 UTC (permalink / raw)
To: Help-gnu-emacs
> From: Andrés Ramírez <rrandresf@hotmail.com>
> Date: Tue, 30 May 2023 10:35:30 +0000
>
> $ ./make-dist --snapshot --no-compress --no-changelog
> Version number is 29.0.91
> Sanity checking (use --no-check to disable this)...
> The following .el files have no corresponding .elc files:
> lisp/emacs-lisp/comp.el lisp/emacs-lisp/comp-cstr.el
> Failed checks
> $ ./make-dist --snapshot --no-compress --no-changelog --no-check
> Version number is 29.0.91
> Creating staging directory: 'make-dist.tmp.41366'
> ./make-dist: line 397: make-dist.tmp.41366/MANIFEST: No such file or directory
> $ ./make-dist --snapshot --no-compress --no-changelog --no-check
> Version number is 29.0.91
> Creating staging directory: 'make-dist.tmp.41922'
> Creating top directory: 'make-dist.tmp.41922/emacs-29.0.91'
> Creating subdirectories
> mkdir: missing operand
> Try 'mkdir --help' for more information.
> Cleaning up the staging directory
> $
> --8<---------------cut here---------------end--------------->8---
>
> when
> ,---- [ ]
> | ./make-dist: line 397: make-dist.tmp.41366/MANIFEST: No such file or directory
> `----
>
> I did touch MANIFEST
>
> Then I got the last error message.
>
> What I am missing for making the tarball?
You are missing the detailed instructions in admin/make-tarball.txt.
(Those instructions are for those who actually prepare the
pretest/release tarballs, so they include stuff you don't need for
your case, but knowing which parts are needed and which aren't isn't
trivial.)
In your case, this part is relevant:
For Emacs 28 and later, as long as --with-native-compilation is
not the default, the tree needs to be configured with
native-compilation enabled, to ensure all the pertinent *.elc
files will end up in the tarball. Otherwise, the *.eln files
might not build correctly on the user's system.
./autogen.sh
./configure --with-native-compilation && make
The MANIFEST thing is because this script is supposed to be run from a
Git repository, and you didn't.
There are other issues with what you are trying to do, for example
version 29.0.91 is incorrect (that's the version of the last pretest,
not of the Emacs you are building).
Bottom line: you are doing something users aren't supposed to do
without knowing very well what they are doing and how to do it. So
don't be surprised you face an uphill battle...
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: making an emacs-29 tarball for testing latest changes on the branch
2023-05-30 11:16 ` Eli Zaretskii
@ 2023-06-03 11:14 ` andrés ramírez
0 siblings, 0 replies; 3+ messages in thread
From: andrés ramírez @ 2023-06-03 11:14 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: Help-gnu-emacs
Hi. Eli.
>>>>> "Eli" == Eli Zaretskii <eliz@gnu.org> writes:
>> From: Andrés Ramírez <rrandresf@hotmail.com> Date: Tue, 30 May 2023 10:35:30 +0000
>>
>> $ ./make-dist --snapshot --no-compress --no-changelog Version number is 29.0.91 Sanity
>> checking (use --no-check to disable this)... The following .el files have no corresponding
>> .elc files: lisp/emacs-lisp/comp.el lisp/emacs-lisp/comp-cstr.el Failed checks $ ./make-dist
>> --snapshot --no-compress --no-changelog --no-check Version number is 29.0.91 Creating staging
>> directory: 'make-dist.tmp.41366' ./make-dist: line 397: make-dist.tmp.41366/MANIFEST: No such
>> file or directory $ ./make-dist --snapshot --no-compress --no-changelog --no-check Version
>> number is 29.0.91 Creating staging directory: 'make-dist.tmp.41922' Creating top directory:
>> 'make-dist.tmp.41922/emacs-29.0.91' Creating subdirectories mkdir: missing operand Try 'mkdir
>> --help' for more information. Cleaning up the staging directory $ --8<---------------cut
>> here---------------end--------------->8---
>>
>> when ,---- [ ] | ./make-dist: line 397: make-dist.tmp.41366/MANIFEST: No such file or
>> directory `----
>>
>> I did touch MANIFEST
>>
>> Then I got the last error message.
>>
>> What I am missing for making the tarball?
Eli> You are missing the detailed instructions in admin/make-tarball.txt. (Those instructions
Eli> are for those who actually prepare the pretest/release tarballs, so they include stuff you
Eli> don't need for your case, but knowing which parts are needed and which aren't isn't
Eli> trivial.)
Eli> In your case, this part is relevant:
Eli> For Emacs 28 and later, as long as --with-native-compilation is not the default, the
Eli> tree needs to be configured with native-compilation enabled, to ensure all the pertinent
Eli> *.elc files will end up in the tarball. Otherwise, the *.eln files might not build
Eli> correctly on the user's system.
Eli> ./autogen.sh ./configure --with-native-compilation && make
After trying It. Same error happened. So I think probably the only
option is doing the full compilation on the SBC.
Eli> The MANIFEST thing is because this script is supposed to be run from a Git repository, and
Eli> you didn't.
I see now MANIFEST is on .gitignore.
Eli> There are other issues with what you are trying to do, for example version 29.0.91 is
Eli> incorrect (that's the version of the last pretest, not of the Emacs you are building).
Sure. Package manager could include the hash commit on the description
when needed. But that is just a workaround.
Eli> Bottom line: you are doing something users aren't supposed to do without knowing very well
Eli> what they are doing and how to do it. So don't be surprised you face an uphill battle...
Thanks. Eli
Best Regards
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-06-03 11:14 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-30 10:35 making an emacs-29 tarball for testing latest changes on the branch Andrés Ramírez
2023-05-30 11:16 ` Eli Zaretskii
2023-06-03 11:14 ` andrés ramírez
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).