emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: The emacs-28 release branch has been created


From: Ken Brown
Subject: Re: The emacs-28 release branch has been created
Date: Sun, 3 Oct 2021 18:40:11 -0400
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0

On 10/3/2021 5:21 PM, Ken Brown wrote:
On 10/3/2021 3:45 PM, Ken Brown wrote:
On 10/3/2021 3:20 PM, Eli Zaretskii wrote:
Cc: emacs-devel@gnu.org
From: Ken Brown <kbrown@cornell.edu>
Date: Sun, 3 Oct 2021 13:56:56 -0400

It turns out that those *.elc files are not in the tarball because of my own
stupid mistake.  When I ran make-dist, I got a warning about that.  I didn't
want to think about it, so I reran make-dist with --no-check rather than fixing
the problem.

Could it be that the *.elc files were not in the tarball because the
build failed at some point?

No, they weren't in the tarball because when I built emacs prior to running make-dist, I didn't specify --with-native-compilation.  Currently lisp/Makefile.in has

ifneq ($(HAVE_NATIVE_COMP),yes)
compile-targets: $(filter-out ./emacs-lisp/comp-cstr.elc,$(filter-out ./emacs-lisp/comp.elc,$(TARGETS)))

That seems wrong to me.

There's still a bug in src/Makefile.in: Make could try building
native-lisp even though it exists, because the rules that create that
directory don't tell Make the directory is created as a side effect.
If and when Make tries to rune the ../native-lisp: rule, it will fail
because mkdir will fail.

I see you've fixed that now.  I'll test it while building a new tarball.

That fix seems OK.  But there are still problems building from a tarball. First, there's an obvious typo (presumably a copy/paste error) in this part of the recipe for ../native-lisp:

   cp -f $@ $(bootstrap_pdmp)

I assume you want

   cp -f $(pdmp) $(bootstrap_pdmp)

if that's even needed at all.

Second, I get the following native-compilation error, which doesn't occur in an ordinary build (i.e., not from a tarball):

   ELN  ../lisp/disp-table.eln
Debugger entered--Lisp error: (native-compiler-error "../lisp/disp-table.el" "Debugger entered--Lisp error: (invalid-read-syntax...")   signal(native-compiler-error ("../lisp/disp-table.el" "Debugger entered--Lisp error: (invalid-read-syntax..."))
   comp--native-compile("../lisp/disp-table.el")
   batch-native-compile(t)
   eval((batch-native-compile t) t)
  command-line-1(("--eval" "(setq load-prefer-newer t)" "-l" "comp" "-f" "byte-compile-refresh-preloaded" "--eval" "(batch-native-compile t)" "../lisp/disp-table.el"))
   command-line()
   normal-top-level()

I'll retry with make -k to see if there are any more such errors

There were no more compilation errors, and the build seemed to finish correctly except for what I've already mentioned.

The rebase problem on Cygwin is fixed by the following:

diff --git a/src/Makefile.in b/src/Makefile.in
index 25c7865d4a..01ae7356b5 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -806,6 +806,9 @@ elnlisp := $(addprefix ${lispsource}/,${elnlisp}) $(lisp:
 ../native-lisp: | $(pdmp)
        if test ! -d $@; then \
          mkdir $@ && $(MAKE) $(AM_V_NO_PD) $(elnlisp); \
+         if test $(SYSTEM_TYPE) = cygwin; then \
+           find $@ -name '*.eln' | rebase -v -O -T -; \
+         fi; \
          LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup 
--temacs=pdump \
                --bin-dest $(BIN_DESTDIR) --eln-dest $(ELN_DESTDIR); \
          cp -f $@ $(bootstrap_pdmp); \

OK to apply this bandaid?

Ken



reply via email to

[Prev in Thread] Current Thread [Next in Thread]