GNU bug report logs - #9960
Compiling Emacs trunk with MSVC

Previous Next

Packages: w32, emacs;

Reported by: Eli Zaretskii <eliz <at> gnu.org>

Date: Sat, 5 Nov 2011 11:24:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #146 received at 9960 <at> debbugs.gnu.org (full text, mbox):

From: Christoph Scholtes <cschol2112 <at> googlemail.com>
To: Fabrice Popineau <fabrice.popineau <at> supelec.fr>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 9960 <at> debbugs.gnu.org
Subject: Re: bug#9960: Compiling Emacs trunk with MSVC
Date: Sat, 12 Nov 2011 10:10:34 -0700
On 11/10/2011 12:56 PM, Fabrice Popineau wrote:

> Status is :
> - completely functional 32 bits version with xpm, gif, jpeg, tiff. Able
> to boostrap itself.
> - the 64 bits version compiles and dumps, but fails to bootstrap (seems
> to be looping inside elisp code).

On a clean checkout or after make maintainer-clean `getopt.h' needs to 
be regenerated. In order for this to work with nmake I needed to make 
the following change:

=== modified file 'lib/makefile.w32-in'
--- lib/makefile.w32-in	2011-11-05 11:34:56 +0000
+++ lib/makefile.w32-in	2011-11-06 13:34:03 +0000
@@ -212,7 +212,7 @@

 HAVE_GETOPT_H = HAVE_GETOPT_H
 INCLUDE_NEXT = include_next
-PRAGMA_SYSTEM_HEADER = \#pragma GCC system_header
+PRAGMA_SYSTEM_HEADER = ^#pragma GCC system_header
 PRAGMA_COLUMNS =
 NEXT_GETOPT_H = <getopt.h>
 ARG_NONNULL_H = ../build-aux/snippet/arg-nonnull.h

This is not meant as a permanent fix, but just an example of what is 
necessary to make it work with nmake.

See:
http://msdn.microsoft.com/en-us/library/f8txf85h%28v=vs.80%29.aspx

Should we define an ESCAPE_SPECIAL_CHAR variable in 
nmake.defs/gmake.defs to handle this or is there a way to make the 
platform specific decision in the makefile.w32-in without too much 
duplication?




This bug report was last modified 13 years and 61 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.