Subject: Re: bug#11527: import 2012-05-20 gnulib into trunk

From: Christoph Scholtes <[email-masked]>
Date: Sat, 26 May 2012 21:36:31 -0600

Hi Paul,

On 5/26/2012 6:00 PM, Paul Eggert wrote:
> After further testing I installed that into the trunk
> as bzr 108385 and am marking it as done.

This breaks the Windows build.

Output:
sha1.c:28:22: fatal error: stdalign.h: No such file or directory
md5.c:26:22: fatal error: stdalign.h: No such file or directory
compilation terminated.
compilation terminated.
mingw32-make[1]: *** [oo/i386/md5.o] Error 1
mingw32-make[1]: *** Waiting for unfinished jobs....
mingw32-make[1]: *** [oo/i386/sha1.o] Error 1
mingw32-make[1]: Leaving directory 
`D:/devel/emacs/emacs-bzr/trunk_jenkins/lib'
mingw32-make: *** [bootstrap-gmake] Error 2

Eli,
I am not sure if this is the right fix:

=== modified file 'lib/makefile.w32-in'
--- lib/makefile.w32-in	2012-05-22 16:20:27 +0000
+++ lib/makefile.w32-in	2012-05-27 03:22:07 +0000
@@ -105,6 +105,7 @@
  	$(SRC)/md5.c \
  	$(SRC)/md5.h \
  	$(EMACS_ROOT)/nt/inc/stdint.h \
+	$(EMACS_ROOT)/nt/inc/stdalign.h \
  	$(EMACS_ROOT)/nt/inc/sys/stat.h \
  	$(EMACS_ROOT)/src/s/ms-w32.h \
  	$(EMACS_ROOT)/src/config.h
@@ -113,6 +114,7 @@
  	$(SRC)/sha1.c \
  	$(SRC)/sha1.h \
  	$(EMACS_ROOT)/nt/inc/stdint.h \
+    $(EMACS_ROOT)/nt/inc/stdalign.h \
  	$(EMACS_ROOT)/nt/inc/sys/stat.h \
  	$(EMACS_ROOT)/src/s/ms-w32.h \
  	$(EMACS_ROOT)/src/config.h
@@ -121,6 +123,7 @@
  	$(SRC)/sha256.c \
  	$(SRC)/sha256.h \
  	$(EMACS_ROOT)/nt/inc/stdint.h \
+    $(EMACS_ROOT)/nt/inc/stdalign.h \
  	$(EMACS_ROOT)/nt/inc/sys/stat.h \
  	$(EMACS_ROOT)/src/s/ms-w32.h \
  	$(EMACS_ROOT)/src/config.h
@@ -129,6 +132,7 @@
  	$(SRC)/sha512.c \
  	$(SRC)/sha512.h \
  	$(EMACS_ROOT)/nt/inc/stdint.h \
+    $(EMACS_ROOT)/nt/inc/stdalign.h \
  	$(EMACS_ROOT)/nt/inc/sys/stat.h \
  	$(EMACS_ROOT)/src/s/ms-w32.h \
  	$(EMACS_ROOT)/src/config.h

=== added file 'nt/inc/stdalign.h'
--- nt/inc/stdalign.h	1970-01-01 00:00:00 +0000
+++ nt/inc/stdalign.h	2012-05-27 03:28:15 +0000
@@ -0,0 +1,26 @@
+/* Replacement stdalign.h file for building GNU Emacs on Windows.
+
+Copyright (C) 2012  Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+
+#ifndef _NT_STDALIGN_H_
+#define _NT_STDALIGN_H_
+
+/* Not available on Windows */
+#define _STRING_ARCH_unaligned 1
+
+#endif /* _NT_STDALIGN_H_ */

Christoph