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

Bug#868868: emacs25: Please include patch to fix FTBFS on m68k

Source: emacs25
Version: 25.2+1-2
Severity: normal
Tags: patch
User: debian-68k@lists.debian.org
Usertags: m68k


emacs25 currently fails to build from source on m68k because the struct
Lisp_Object in src/lisp.h has incorrect alignment which results in the
tagged pointers used by the Lisp VM being corrupted.  This happens because
the native alignment on m68k is 16-bit such that the total size of List_Object
is not dividable by 8.

This can be either fixed by building emacs25 on m68k with "--with-wide-int"
or by applying the attached patch which makes sure the alignment of List_Object
is correct and the tagged pointers work as expected.

I will file a bug report upstream and send them the suggested patch.


 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Description: Make sure that List_Symbol is 8-byte-aligned
Author: Michael Karcher <debian@mkarcher.dialup.fu-berlin.de>
Last-Update: 2017-07-19

Index: emacs25-25.2+1/src/lisp.h
--- emacs25-25.2+1.orig/src/lisp.h
+++ emacs25-25.2+1/src/lisp.h
@@ -658,7 +658,7 @@ struct Lisp_Symbol
   bool_bf pinned : 1;
   /* The symbol's name, as a Lisp string.  */
-  Lisp_Object name;
+  Lisp_Object name __attribute__((aligned(4)));
   /* Value of the symbol or Qunbound if unbound.  Which alternative of the
      union is used depends on the `redirect' field above.  */

Reply to: