@echo off\r
rem ----------------------------------------------------------------------\r
rem Configuration script for MS Windows operating systems\r
-rem Copyright (C) 1999-2012 Free Software Foundation, Inc.\r
+rem Copyright (C) 1999-2014 Free Software Foundation, Inc.\r
\r
rem This file is part of GNU Emacs.\r
\r
rem\r
rem + MS Windows 95, NT or later\r
rem + either MSVC 2.x or later, or gcc-2.95 or later (with GNU make 3.75\r
-rem or later) and the Mingw32 and W32 API headers and libraries.\r
+rem or later) and the Mingw32 and Windows API headers and libraries.\r
rem + Visual Studio 2005 is not supported at this time.\r
rem\r
rem For reference, here is a list of which builds of GNU make are known to\r
rem [7] not recommended; please report if you try this combination.\r
rem [8] tested only on Windows XP.\r
rem\r
-\r
+echo ****************************************************************\r
+echo *** THIS METHOD OF BUILDING EMACS IS NO LONGER SUPPORTED. **\r
+echo *** INSTEAD, FOLLOW THE INSTRUCTIONS FROM INSTALL. **\r
+echo ****************************************************************\r
+:confirm_continue\r
+set /p answer=Continue running this script at your own risks ? (Y/N)\r
+if x%answer% == xy (goto confirm_continue_y)\r
+if x%answer% == xY (goto confirm_continue_y)\r
+if x%answer% == xn (goto end)\r
+if x%answer% == xN (goto end)\r
+echo Please answer by Y or N\r
+goto confirm_continue\r
+\r
+:confirm_continue_y\r
if exist config.log del config.log\r
\r
rem ----------------------------------------------------------------------\r
echo. --with-msvc use MSVC to compile Emacs\r
echo. --no-debug exclude debug info from executables\r
echo. --no-opt disable optimization\r
-echo. --enable-checking enable checks and assertions\r
+echo. --enable-checking enable additional run-time checks\r
echo. --profile enable profiling\r
echo. --no-cygwin use -mno-cygwin option with GCC\r
echo. --cflags FLAG pass FLAG to compiler\r
echo. character depends on command extensions. This batch file attempts to\r
echo. enable command extensions. If command extensions cannot be enabled, a\r
echo. warning message will be displayed.\r
+echo.\r
+echo. IMPORTANT: This method of building Emacs for MS-Windows is deprecated,\r
+echo. and could be removed in a future version of Emacs. The preferred way\r
+echo to build Emacs for MS-Windows from now on is using the MSYS environment\r
+echo. and MinGW development tools. Please see nt/INSTALL for details.\r
goto end\r
\r
rem ----------------------------------------------------------------------\r
rem of w32api-xxx.zip from Anders Norlander since 1999-11-18 at least.\r
rem Beginning with Emacs 23, we need usp10.h.\r
rem\r
-echo Checking whether W32 API headers are too old...\r
+echo Checking whether Windows API headers are too old...\r
echo #include "windows.h" >junk.c\r
echo #include "usp10.h" >>junk.c\r
-echo test(PIMAGE_NT_HEADERS pHeader) >>junk.c\r
+echo void test(PIMAGE_NT_HEADERS pHeader) >>junk.c\r
echo {PIMAGE_SECTION_HEADER pSection = IMAGE_FIRST_SECTION(pHeader);} >>junk.c\r
if (%nocygwin%) == (Y) goto chkapi1\r
set cf=%usercflags%\r
echo.\r
echo Configure failed.\r
echo To configure Emacs for Windows, you need to have either\r
-echo gcc-2.95 or later with Mingw32 and the W32 API headers,\r
+echo gcc-2.95 or later with Mingw32 and the Windows API headers,\r
echo or MSVC 2.x or later.\r
del junk.c\r
goto end\r
if (%gifsupport%) == (N) goto gifDone\r
\r
echo Checking for libgif...\r
-echo #include "gif_lib.h" >junk.c\r
+rem giflib-5.0.0 needs size_t defined before gif_lib.h is included\r
+rem redirection characters need to be protected from the shell\r
+echo #include ^<stddef.h^> >junk.c\r
+echo #include "gif_lib.h" >>junk.c\r
echo main (){} >>junk.c\r
rem -o option is ignored with cl, but allows result to be consistent.\r
echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log\r
if not "(%dbginfo%)" == "()" >>config.settings echo DEBUG_INFO=%dbginfo%\r
if (%nodebug%) == (Y) >>config.settings echo NODEBUG=1\r
if (%noopt%) == (Y) >>config.settings echo NOOPT=1\r
-if (%enablechecking%) == (Y) >>config.settings echo ENABLECHECKS=1\r
if (%profile%) == (Y) >>config.settings echo PROFILE=1\r
if (%nocygwin%) == (Y) >>config.settings echo NOCYGWIN=1\r
if not "(%prefix%)" == "()" >>config.settings echo INSTALL_DIR=%prefix%\r
if (%docflags%) == (Y) echo #define USER_CFLAGS " %escusercflags%" >>config.tmp\r
if (%doldflags%) == (Y) echo #define USER_LDFLAGS " %escuserldflags%" >>config.tmp\r
if (%profile%) == (Y) echo #define PROFILING 1 >>config.tmp\r
+if (%enablechecking%) == (Y) echo #define ENABLE_CHECKING 1 >>config.tmp\r
if not "(%HAVE_PNG%)" == "()" echo #define HAVE_PNG 1 >>config.tmp\r
if not "(%HAVE_GNUTLS%)" == "()" echo #define HAVE_GNUTLS 1 >>config.tmp\r
if not "(%HAVE_LIBXML2%)" == "()" echo #define HAVE_LIBXML2 1 >>config.tmp\r
set HAVE_TIFF=\r
set HAVE_XPM=\r
set dbginfo=\r
-\r
+endlocal\r
+set use_extensions=\r