unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* How to make aot native-compilation and pdmp creation reproduceable
@ 2023-10-07 18:37 Björn Bidar
  2023-10-07 19:27 ` Gerd Möllmann
  2023-10-08  7:14 ` Andrea Corallo
  0 siblings, 2 replies; 52+ messages in thread
From: Björn Bidar @ 2023-10-07 18:37 UTC (permalink / raw)
  To: emacs-devel


Hey,

I noticed that building Emacs isn't enterily reproduceable.
The compiled byte code it reproduceable, however I notied that
the pdmp files and some of the native compiled elisp for each variant
change each time the package is rebuild.

The specific build option don't seem to make a difference.

Strangely the only eln file that changes is x-win.el:
/usr/lib64/emacs/29.1/native-lisp/29.1-115521d4/preloaded/x-win-3c49581f-6ddb7e08.eln differs in ELF sections
--- old /usr/lib64/emacs/29.1/native-lisp/29.1-115521d4/preloaded/x-win-3c49581f-6ddb7e08.eln (objdump)
+++ new /usr/lib64/emacs/29.1/native-lisp/29.1-115521d4/preloaded/x-win-3c49581f-6ddb7e08.eln (objdump)
@@ -2950,7 +2950,7 @@
  0e7c0 6f726564 20736573 73696f6e 20646174  ored session dat
  0e7d0 61222022 4865776c 6574742d 5061636b  a" "Hewlett-Pack
  0e7e0 61726420 496e636f 72706f72 61746564  ard Incorporated
- 0e7f0 22202334 3d282831 3638202e 206d7574  " #4=((168 . mut
+ 0e7f0 22202336 3d282831 3638202e 206d7574  " #6=((168 . mut
  0e800 652d6163 75746529 20283136 39202e20  e-acute) (169 . 
  0e810 6d757465 2d677261 76652920 28313730  mute-grave) (170
  0e820 202e206d 7574652d 61736369 69636972   . mute-asciicir
@@ -2976,7 +2976,7 @@
  0e960 20224865 776c6574 742d5061 636b6172   "Hewlett-Packar
  0e970 6420436f 6d70616e 79222022 5831312f  d Company" "X11/
  0e980 4e655753 202d2053 756e204d 6963726f  NeWS - Sun Micro
- 0e990 73797374 656d7320 496e632e 22202336  systems Inc." #6
+ 0e990 73797374 656d7320 496e632e 22202334  systems Inc." #4
  0e9a0 3d282833 39323937 36202e20 66333629  =((392976 . f36)
  0e9b0 20283339 32393737 202e2066 33372920   (392977 . f37) 
  0e9c0 28333933 30353620 2e207265 71292028  (393056 . req) (

One example of pdmp of one of the variants:
/usr/bin/emacs-x11 differs in ELF sections
--- old /usr/bin/emacs-x11 (objdump)
+++ new /usr/bin/emacs-x11 (objdump)
@@ -519888,8 +519888,8 @@
  7f1410 2d2d6e6f 2d73706c 61736800 00000000  --no-splash.....
  7f1420 00400000 00000000 00000000 00000000  .@..............
  7f1430 00000000 00000000 00000000 00000000  ................
- 7f1440 81e3b8e4 33011ec5 18db85f2 9586197c  ....3..........|
- 7f1450 be6fb703 f761afd4 c6d7bd74 f2168be2  .o...a.....t....
+ 7f1440 a2c05c34 51540c6d eae96bed 21a90a3c  ..\4QT.m..k.!..<
+ 7f1450 c0cf321a e7c634d2 89ae7791 2fe90967  ..2...4...w./..g
  7f1460 2c010000 00000000 20003900 00000000  ,....... .9.....
  7f1470 ffffffff 15000000 3e000000 7c000000  ........>...|...
  7f1480 12000000 00000000 00000000 00000000  ................

The build log of the package including a binary diff can be found here:
https://build.opensuse.org/build/editors/openSUSE_Tumbleweed/x86_64/emacs/_log

The spec file of the package can be fond here:
https://build.opensuse.org/package/view_file/editors/emacs/emacs.spec?expand=1

How can I debug why they differ after each rebuild?

Br,

Björn Bidar



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

end of thread, other threads:[~2023-10-11  9:15 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-07 18:37 How to make aot native-compilation and pdmp creation reproduceable Björn Bidar
2023-10-07 19:27 ` Gerd Möllmann
2023-10-08 20:53   ` Björn Bidar
2023-10-08 20:57   ` Björn Bidar
2023-10-09  4:19     ` Gerd Möllmann
2023-10-09 11:05       ` Eli Zaretskii
2023-10-09 11:26         ` Gerd Möllmann
2023-10-09 11:32           ` Eli Zaretskii
2023-10-09 11:55             ` Gerd Möllmann
2023-10-09 12:29               ` Gerd Möllmann
2023-10-09 13:09               ` Eli Zaretskii
2023-10-09 13:33                 ` Gerd Möllmann
2023-10-09 14:20                   ` Eli Zaretskii
2023-10-09 14:30                     ` Gerd Möllmann
2023-10-09 14:48                 ` Björn Bidar
2023-10-09 14:58                   ` Eli Zaretskii
2023-10-09 15:44                     ` Björn Bidar
2023-10-09 14:52           ` Björn Bidar
2023-10-09 15:06             ` Gerd Möllmann
     [not found]               ` <8734yju8ax.fsf@thaodan.de>
2023-10-09 15:59                 ` Eli Zaretskii
2023-10-09 16:06                   ` Björn Bidar
2023-10-09 16:28                     ` Eli Zaretskii
2023-10-09 16:53                       ` Björn Bidar
2023-10-09 16:40                 ` Gerd Möllmann
2023-10-09 17:06                   ` Björn Bidar
2023-10-09 17:19                     ` Gerd Möllmann
2023-10-09 18:23                       ` Alan Mackenzie
2023-10-10  6:21                         ` Gerd Möllmann
2023-10-10 10:39                           ` Alan Mackenzie
2023-10-10 11:12                             ` Gerd Möllmann
2023-10-10 11:58                             ` Michael Albinus
2023-10-10 12:17                             ` Eli Zaretskii
2023-10-10 13:07                               ` Alan Mackenzie
2023-10-11  9:15                             ` Andrea Corallo
2023-10-10  8:30                         ` Ulrich Mueller
2023-10-10  9:28                           ` Gerd Möllmann
2023-10-10 10:53                             ` Ulrich Mueller
2023-10-10 11:15                               ` Gerd Möllmann
2023-10-10 11:08                           ` Differences in *.elc files (was: Re: How to make aot native-compilation and pdmp creation reproduceable) Ulrich Mueller
2023-10-10 11:51                             ` Differences in *.elc files Gerd Möllmann
2023-10-10 12:14                           ` How to make aot native-compilation and pdmp creation reproduceable Eli Zaretskii
2023-10-10 14:40                             ` Björn Bidar
2023-10-10 14:59                             ` Ulrich Mueller
2023-10-09  4:28     ` Gerd Möllmann
2023-10-08  7:14 ` Andrea Corallo
2023-10-08 21:38   ` Björn Bidar
2023-10-09  2:34     ` Eli Zaretskii
2023-10-09  4:25       ` Björn Bidar
2023-10-09  4:46         ` Gerd Möllmann
2023-10-09  5:06           ` Gerd Möllmann
2023-10-09  5:47             ` Gerd Möllmann
2023-10-09 11:15         ` Eli Zaretskii

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).