--- /dev/null
- 47583d9d9a27fe9fa4fe96a932501497dc27af56
- 47583d9d9a27fe9fa4fe96a932501497dc27af56
+# see git-dpm(1) from git-dpm package
++e0103758d20a59363b6a356e8d50d28cf25616b1
++e0103758d20a59363b6a356e8d50d28cf25616b1
+09a20fd582947ca08f0e80bc5353ae8abfe1e5ed
+09a20fd582947ca08f0e80bc5353ae8abfe1e5ed
+emacs25_25.2+1.orig.tar.xz
+655de53b3ee88f19a7c85005636fa8851a6f71b1
+23189972
--- /dev/null
--- /dev/null
++From e0103758d20a59363b6a356e8d50d28cf25616b1 Mon Sep 17 00:00:00 2001
++From: Andreas Schwab <schwab@linux-m68k.org>
++Date: Tue, 25 Jul 2017 01:12:50 +0200
++Subject: A memory alignment problem causing m68k failures has been fixed
++
++This patch has been backported from upstream to fix m68k build
++failures:
++
++ Properly align global lispsym
++
++ * lib-src/make-docfile.c (close_emacs_globals): Wrap struct
++ Lisp_Symbols inside struct.
++ * src/alloc.c (sweep_symbols): Update use of lispsym.
++ * src/lisp.h (builtin_lisp_symbol): Likewise.
++
++Origin: backport, commit: 7a4d9f6304cffa39642507609605bcbfa40d4675
++Bug-Debian: http://bugs.debian.org/868868
++Forwarded: not-needed
++---
++ lib-src/make-docfile.c | 4 +++-
++ src/alloc.c | 2 +-
++ src/lisp.h | 2 +-
++ 3 files changed, 5 insertions(+), 3 deletions(-)
++
++diff --git a/lib-src/make-docfile.c b/lib-src/make-docfile.c
++index 29061b76b26..bd268553248 100644
++--- a/lib-src/make-docfile.c
+++++ b/lib-src/make-docfile.c
++@@ -667,7 +667,9 @@ close_emacs_globals (ptrdiff_t num_symbols)
++ "#ifndef DEFINE_SYMBOLS\n"
++ "extern\n"
++ "#endif\n"
++- "struct Lisp_Symbol alignas (GCALIGNMENT) lispsym[%td];\n"),
+++ "struct {\n"
+++ " struct Lisp_Symbol alignas (GCALIGNMENT) s;\n"
+++ "} lispsym[%td];\n"),
++ num_symbols);
++ }
++
++diff --git a/src/alloc.c b/src/alloc.c
++index 68bee7728c0..9a96a425071 100644
++--- a/src/alloc.c
+++++ b/src/alloc.c
++@@ -6823,7 +6823,7 @@ sweep_symbols (void)
++ symbol_free_list = NULL;
++
++ for (int i = 0; i < ARRAYELTS (lispsym); i++)
++- lispsym[i].gcmarkbit = 0;
+++ lispsym[i].s.gcmarkbit = 0;
++
++ for (sblk = symbol_block; sblk; sblk = *sprev)
++ {
++diff --git a/src/lisp.h b/src/lisp.h
++index 5aee80cea11..08c40dc3795 100644
++--- a/src/lisp.h
+++++ b/src/lisp.h
++@@ -1110,7 +1110,7 @@ make_lisp_symbol (struct Lisp_Symbol *sym)
++ INLINE Lisp_Object
++ builtin_lisp_symbol (int index)
++ {
++- return make_lisp_symbol (lispsym + index);
+++ return make_lisp_symbol (&lispsym[index].s);
++ }
++
++ #define XSETINT(a, b) ((a) = make_number (b))
--- /dev/null
+0001-Prefer-usr-share-info-emacs-MAJORVERSION.patch
+0002-Run-debian-startup-and-set-debian-emacs-flavor.patch
+0003-Remove-files-that-appear-to-be-incompatible-with-the.patch
+0004-Adjust-documentation-references-for-Debian.patch
+0005-Modify-the-output-of-version-to-indicate-Debian-modi.patch
+0006-Don-t-try-to-build-src-macuvs.h-via-IVD_Sequences.tx.patch
+0007-Kill-gpg-agent-in-package-test.el-to-avoid-a-race.patch
+0008-Don-t-provide-openssl-s_client-as-an-option-for-ssl-.patch
++0009-A-memory-alignment-problem-causing-m68k-failures-has.patch