emacs-bug-tracker
[Top][All Lists]
Advanced

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

bug#48743: closed (28.0.50; batch-native-compile should produce .elc fil


From: GNU bug Tracking System
Subject: bug#48743: closed (28.0.50; batch-native-compile should produce .elc files as well)
Date: Tue, 30 Nov 2021 17:00:03 +0000

Your message dated Tue, 30 Nov 2021 16:59:32 +0000
with message-id <xjfilw91swb.fsf@ma.sdf.org>
and subject line Re: bug#48743: 28.0.50; batch-native-compile should produce 
.elc files as well
has caused the debbugs.gnu.org bug report #48743,
regarding 28.0.50; batch-native-compile should produce .elc files as well
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
48743: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=48743
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: 28.0.50; batch-native-compile should produce .elc files as well Date: Sun, 30 May 2021 06:57:54 -0700 (PDT)
1. Large packages that span multiple files can have build-order
   dependencies e.g. files containing macros need to be built and
   loaded when compiling the rest of the package.

   2. At present, jitted .eln files appear to be compiled from the .el
      files, and that misses these dependencies, leading to spurious
      warnings, and possibly incorrect behavior.

      3. Attempting to fix this by using -f batch-native-compile fails
         in one and possibly two ways:

         A. If the Makefile defines its build rules   using .elc and
            .el suffixes, then one needs to first  remove the .elc
            files before  running make in order to generate the .eln
            files. These .eln files  end up in .emacs.d/eln-cache;

B. however if one then rebuilds the .elc files, those are now
            newer than the .eln files, which means the .eln files get
            jitted anyway. That jit run of course produces all the
            afore-mentioned problems.
            

            Suggestion:  have batch-native-compile generate both .eln
            and .elc files -- or alternatively, have the jit compiler
            generate the .eln files from .elc files if the .elc files
            are newer. The latter solution would be nice since it
            isolates package developers from having to think about
            native compilation, and differences between .eln and .elc
            files with respect to warnings and behavior.
            

--Raman
            
            


In GNU Emacs 28.0.50 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo 
version 1.16.0)
 of 2021-05-29 built on raman-glaptop
Repository revision: f163b9f426c6bd0bec87c0985bca4f838b9eee89
Repository branch: native-emacs
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux rodete

Configured using:
 'configure --enable-silent-rules --without-xwidgets --with-mailutils
 --without-compress-install --with-native-compilation
 --program-prefix=native- LDFLAGS=-O3 'CPPFLAGS=-Ofast ''

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

Important settings:
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix

Major mode: Shell

Minor modes in effect:
  recentf-mode: t
  dired-omit-mode: t
  dirtrack-procfs-mode: t
  savehist-mode: t
  save-place-mode: t
  psession-mode: t
  psession-autosave-mode: t
  midnight-mode: t
  magit-wip-initial-backup-mode: t
  magit-wip-before-change-mode: t
  magit-wip-after-apply-mode: t
  magit-wip-after-save-mode: t
  magit-wip-mode: t
  global-git-commit-mode: t
  ido-ubiquitous-mode: t
  flx-ido-mode: t
  ido-everywhere: t
  display-time-mode: t
  disable-mouse-global-mode: t
  company-statistics-mode: t
  company-prescient-mode: t
  prescient-persist-mode: t
  cl-font-lock-built-in-mode: t
  auto-correct-mode: t
  global-voice-lock-mode: t
  voice-lock-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/raman/emacs/lisp/emacspeak/lisp/tapestry hides 
/home/raman/emacs/lisp/site-lisp/vm/lisp/tapestry
/home/raman/.emacs.d/elpa/lispy-20210121.926/elpa hides 
/home/raman/.emacs.d/elpa/ivy-20210518.1815/elpa
/home/raman/.emacs.d/elpa/transient-20210525.1141/transient hides 
/home/raman/sourceforge/native-emacs/lisp/transient
/home/raman/emacs/lisp/emacspeak/lisp/tetris hides 
/home/raman/sourceforge/native-emacs/lisp/play/tetris

Features:
(shadow mailalias emacsbug shr-color mm-archive mule-util hl-line
finder-inf emacspeak-paradox paradox ...)

Memory information:
((conses 16 3018329 1355737)
 (symbols 48 72873 30)
 (strings 32 378570 157451)
 (string-bytes 1 15281924)
 (vectors 16 191362)
 (vector-slots 8 5234800 796305)
 (floats 8 2349 1254)
 (intervals 56 284641 71727)
 (buffers 992 45))


-- 

Thanks,

--Raman(I Search, I Find, I Misplace, I Research)
♉ Id: kg:/m/0285kf1  🦮

-- 

Thanks,

--Raman(I Search, I Find, I Misplace, I Research)
♉ Id: kg:/m/0285kf1  🦮



--- End Message ---
--- Begin Message --- Subject: Re: bug#48743: 28.0.50; batch-native-compile should produce .elc files as well Date: Tue, 30 Nov 2021 16:59:32 +0000 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)
Andrea Corallo via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <bug-gnu-emacs@gnu.org> writes:

> Eli Zaretskii <eliz@gnu.org> writes:
>
>>> From: Andrea Corallo <akrl@sdf.org>
>>> Cc: raman@google.com, 48743@debbugs.gnu.org
>>> Date: Mon, 31 May 2021 18:59:41 +0000
>>> 
>>> Eli Zaretskii <eliz@gnu.org> writes:
>>> 
>>> > Can we have a simple variable that could be bound via --eval?
>>> 
>>> How would you suggest this variable to behave?
>>
>> If it is bound, use the value instead of using the last member of
>> native-comp-eln-load-path.
>
> Okay c4b02dad9b a32e65b357 are implementing the renaming and the
> addition of the `native-compile-target-directory' variable.  Please have
> a look.

Closing this as I think a solution was provided.

Happy to reopen if necessary.

Thanks

  Andrea


--- End Message ---

reply via email to

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