unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: master 9dfd945: Fix byte compilation of package built-ins
       [not found] ` <20211107003052.D02F720A22@vcs0.savannah.gnu.org>
@ 2021-11-10  1:02   ` Lars Ingebrigtsen
  2021-11-10  3:35     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Lars Ingebrigtsen @ 2021-11-10  1:02 UTC (permalink / raw)
  To: emacs-devel; +Cc: dick.r.chiang, Andrea Corallo

larsi@gnus.org (Lars Ingebrigtsen) writes:

>     (package-test-macro-compilation-gz): Test (bug#49708).

This seems to fail when using native compilation:

Test package-test-macro-compilation-gz backtrace:
  require(macro-builtin)
  (let ((load-path load-path)) (add-to-list 'load-path (directory-file
  (unwind-protect (let ((load-path load-path)) (add-to-list 'load-path
  (let ((dir (expand-file-name "macro-builtin-package-1.0"))) (unwind-
  (progn nil (let ((dir (expand-file-name "macro-builtin-package-1.0")

Which may be a bug in native-comp.

The situation is:  You have a directory (in load-path) with

foo.el.gz
foo.elc

and then say (require 'foo), and that fails?  I haven't tried to debug
further; perhaps it's obvious to somebody what's failing here.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master 9dfd945: Fix byte compilation of package built-ins
  2021-11-10  1:02   ` master 9dfd945: Fix byte compilation of package built-ins Lars Ingebrigtsen
@ 2021-11-10  3:35     ` Eli Zaretskii
  2021-11-10  3:51       ` Lars Ingebrigtsen
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2021-11-10  3:35 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: akrl, dick.r.chiang, emacs-devel

> From: Lars Ingebrigtsen <larsi@gnus.org>
> Date: Wed, 10 Nov 2021 02:02:41 +0100
> Cc: dick.r.chiang@gmail.com, Andrea Corallo <akrl@sdf.org>
> 
> Test package-test-macro-compilation-gz backtrace:
>   require(macro-builtin)
>   (let ((load-path load-path)) (add-to-list 'load-path (directory-file
>   (unwind-protect (let ((load-path load-path)) (add-to-list 'load-path
>   (let ((dir (expand-file-name "macro-builtin-package-1.0"))) (unwind-
>   (progn nil (let ((dir (expand-file-name "macro-builtin-package-1.0")
> 
> Which may be a bug in native-comp.
> 
> The situation is:  You have a directory (in load-path) with
> 
> foo.el.gz
> foo.elc
> 
> and then say (require 'foo), and that fails?  I haven't tried to debug
> further; perhaps it's obvious to somebody what's failing here.

Is that a build with built-in compression capabilities?  That is
required for natively-compiling compressed .el files.



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master 9dfd945: Fix byte compilation of package built-ins
  2021-11-10  3:35     ` Eli Zaretskii
@ 2021-11-10  3:51       ` Lars Ingebrigtsen
  2021-11-10  3:59         ` Lars Ingebrigtsen
  0 siblings, 1 reply; 4+ messages in thread
From: Lars Ingebrigtsen @ 2021-11-10  3:51 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: akrl, dick.r.chiang, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> The situation is:  You have a directory (in load-path) with
>> 
>> foo.el.gz
>> foo.elc
>> 
>> and then say (require 'foo), and that fails?  I haven't tried to debug
>> further; perhaps it's obvious to somebody what's failing here.
>
> Is that a build with built-in compression capabilities?  That is
> required for natively-compiling compressed .el files.

Hm...  Oh!  I didn't notice this bit:

Test package-test-macro-compilation-gz condition:
    (file-notify-error "hashing failed" "/home/larsi/src/emacs/trunk/test/lisp/emacs-lisp/package-resources/macro-builtin-package-1.0/macro-builtin.el.gz")

So it passes this test:

static Lisp_Object
comp_hash_source_file (Lisp_Object filename)

[...]

#ifndef HAVE_ZLIB
  if (is_gz)
    xsignal2 (Qfile_notify_error,
	      build_string ("Cannot natively compile compressed *.el files without zlib support"),
	      filename);

But then signals an error here:

#ifdef HAVE_ZLIB
  int res = is_gz
    ? md5_gz_stream (f, SSDATA (digest))
    : md5_stream (f, SSDATA (digest));
#else
  int res = md5_stream (f, SSDATA (digest));
#endif
  fclose (f);

  if (res)
    xsignal2 (Qfile_notify_error, build_string ("hashing failed"), filename);


-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: master 9dfd945: Fix byte compilation of package built-ins
  2021-11-10  3:51       ` Lars Ingebrigtsen
@ 2021-11-10  3:59         ` Lars Ingebrigtsen
  0 siblings, 0 replies; 4+ messages in thread
From: Lars Ingebrigtsen @ 2021-11-10  3:59 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel, dick.r.chiang, akrl

Lars Ingebrigtsen <larsi@gnus.org> writes:

> #ifdef HAVE_ZLIB
>   int res = is_gz
>     ? md5_gz_stream (f, SSDATA (digest))
>     : md5_stream (f, SSDATA (digest));

The error is in the test -- these aren't really .gz files -- they're
just .el files that have been renamed to .el.gz, which is why it's
failing.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-11-10  3:59 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20211107003051.7974.4876@vcs0.savannah.gnu.org>
     [not found] ` <20211107003052.D02F720A22@vcs0.savannah.gnu.org>
2021-11-10  1:02   ` master 9dfd945: Fix byte compilation of package built-ins Lars Ingebrigtsen
2021-11-10  3:35     ` Eli Zaretskii
2021-11-10  3:51       ` Lars Ingebrigtsen
2021-11-10  3:59         ` Lars Ingebrigtsen

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.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).