* gmake.defs (DEBUG_FLAG, DEBUG_LINK) [!NODEBUG]:
[bpt/emacs.git] / nt / configure.bat
1 @echo off
2 rem ----------------------------------------------------------------------
3 rem Configuration script for MS Windows 95/98/Me and NT/2000/XP
4 rem Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005,
5 rem 2006, 2007, 2008 Free Software Foundation, Inc.
6
7 rem This file is part of GNU Emacs.
8
9 rem GNU Emacs is free software: you can redistribute it and/or modify
10 rem it under the terms of the GNU General Public License as published by
11 rem the Free Software Foundation, either version 3 of the License, or
12 rem (at your option) any later version.
13
14 rem GNU Emacs is distributed in the hope that it will be useful,
15 rem but WITHOUT ANY WARRANTY; without even the implied warranty of
16 rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 rem GNU General Public License for more details.
18
19 rem You should have received a copy of the GNU General Public License
20 rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/.
21
22 rem ----------------------------------------------------------------------
23 rem YOU'LL NEED THE FOLLOWING UTILITIES TO MAKE EMACS:
24 rem
25 rem + MS Windows 95/98/Me or NT/2000/XP
26 rem + either MSVC 2.x or later, or gcc-2.95 or later (with GNU make 3.75
27 rem or later) and the Mingw32 and W32 API headers and libraries.
28 rem + Visual Studio 2005 is not supported at this time.
29 rem
30 rem For reference, here is a list of which builds of GNU make are known to
31 rem work or not, and whether they work in the presence and/or absence of
32 rem sh.exe.
33 rem
34 rem sh exists no sh
35 rem cygwin b20.1 make (3.75): fails[1,5] fails[2,5]
36 rem MSVC compiled gmake 3.77: okay okay
37 rem MSVC compiled gmake 3.78.1: okay okay
38 rem MSVC compiled gmake 3.79.1: okay okay
39 rem mingw32/gcc-2.92.2 make (3.77): okay okay[4]
40 rem cygwin compiled gmake 3.77: fails[1,5] fails[2,5]
41 rem cygwin compiled gmake 3.78.1: fails[5] fails[2,5]
42 rem cygwin compiled gmake 3.79.1: fails[3,5] fails[2?,5]
43 rem cygwin compiled make 3.80: okay[6] fails?[7]
44 rem cygwin compiled make 3.81: fails fails?[7]
45 rem mingw32 compiled make 3.79.1: okay okay
46 rem mingw32 compiled make 3.80: okay okay?[7]
47 rem mingw32 compiled make 3.81: okay okay[8]
48 rem
49 rem [1] doesn't cope with makefiles with DOS line endings, so must mount
50 rem emacs source with text!=binary.
51 rem [2] fails when needs to invoke shell commands; okay invoking gcc etc.
52 rem [3] requires LC_MESSAGES support to build; cannot build with early
53 rem versions of cygwin.
54 rem [4] may fail on Windows 9X and Windows ME; if so, install Bash.
55 rem [5] fails when building leim due to the use of cygwin style paths.
56 rem May work if building emacs without leim.
57 rem [6] need to uncomment 3 lines in nt/gmake.defs that invoke `cygpath';
58 rem look for "cygpath" near line 85 of gmake.defs.
59 rem [7] not recommended; please report if you try this combination.
60 rem [8] tested only on Windows XP.
61 rem
62
63 if exist config.log del config.log
64
65 rem ----------------------------------------------------------------------
66 rem See if the environment is large enough. We need 43 (?) bytes.
67 set $foo$=123456789_123456789_123456789_123456789_123
68 if not "%$foo$%" == "123456789_123456789_123456789_123456789_123" goto SmallEnv
69 set $foo$=
70
71 rem ----------------------------------------------------------------------
72 rem Make sure we are running in the nt subdir
73 if exist configure.bat goto start
74 echo You must run configure from the nt subdirectory.
75 goto end
76
77 :start
78 rem ----------------------------------------------------------------------
79 rem Default settings.
80 set prefix=
81 set nodebug=N
82 set noopt=N
83 set nocygwin=N
84 set COMPILER=
85 set usercflags=
86 set docflags=
87 set userldflags=
88 set doldflags=
89 set sep1=
90 set sep2=
91
92 rem ----------------------------------------------------------------------
93 rem Handle arguments.
94 :again
95 if "%1" == "-h" goto usage
96 if "%1" == "--help" goto usage
97 if "%1" == "--prefix" goto setprefix
98 if "%1" == "--with-gcc" goto withgcc
99 if "%1" == "--with-msvc" goto withmsvc
100 if "%1" == "--no-debug" goto nodebug
101 if "%1" == "--no-opt" goto noopt
102 if "%1" == "--no-cygwin" goto nocygwin
103 if "%1" == "--cflags" goto usercflags
104 if "%1" == "--ldflags" goto userldflags
105 if "%1" == "--without-png" goto withoutpng
106 if "%1" == "--without-jpeg" goto withoutjpeg
107 if "%1" == "--without-gif" goto withoutgif
108 if "%1" == "--without-tiff" goto withouttiff
109 if "%1" == "--without-xpm" goto withoutxpm
110 if "%1" == "" goto checkutils
111 :usage
112 echo Usage: configure [options]
113 echo Options:
114 echo. --prefix PREFIX install Emacs in directory PREFIX
115 echo. --with-gcc use GCC to compile Emacs
116 echo. --with-msvc use MSVC to compile Emacs
117 echo. --no-debug exclude debug info from executables
118 echo. --no-opt disable optimization
119 echo. --no-cygwin use -mno-cygwin option with GCC
120 echo. --cflags FLAG pass FLAG to compiler
121 echo. --ldflags FLAG pass FLAG to compiler when linking
122 echo. --without-png do not use PNG library even if it is installed
123 echo. --without-jpeg do not use JPEG library even if it is installed
124 echo. --without-gif do not use GIF library even if it is installed
125 echo. --without-tiff do not use TIFF library even if it is installed
126 echo. --without-xpm do not use XPM library even if it is installed
127 goto end
128 rem ----------------------------------------------------------------------
129 :setprefix
130 shift
131 set prefix=%1
132 shift
133 goto again
134 rem ----------------------------------------------------------------------
135 :withgcc
136 set COMPILER=gcc
137 shift
138 goto again
139 rem ----------------------------------------------------------------------
140 :withmsvc
141 set COMPILER=cl
142 shift
143 goto again
144 rem ----------------------------------------------------------------------
145 :nodebug
146 set nodebug=Y
147 shift
148 goto again
149 rem ----------------------------------------------------------------------
150 :noopt
151 set noopt=Y
152 shift
153 goto again
154 rem ----------------------------------------------------------------------
155 :nocygwin
156 set nocygwin=Y
157 shift
158 goto again
159 rem ----------------------------------------------------------------------
160 :usercflags
161 shift
162 set usercflags=%usercflags%%sep1%%1
163 set sep1= %nothing%
164 shift
165 goto again
166 rem ----------------------------------------------------------------------
167 :userldflags
168 shift
169 set userldflags=%userldflags%%sep2%%1
170 set sep2= %nothing%
171 shift
172 goto again
173 rem ----------------------------------------------------------------------
174
175 :withoutpng
176 set pngsupport=N
177 set HAVE_PNG=
178 shift
179 goto again
180
181 rem ----------------------------------------------------------------------
182
183 :withoutjpeg
184 set jpegsupport=N
185 set HAVE_JPEG=
186 shift
187 goto again
188
189 rem ----------------------------------------------------------------------
190
191 :withoutgif
192 set gifsupport=N
193 set HAVE_GIF=
194 shift
195 goto again
196
197 rem ----------------------------------------------------------------------
198
199 :withouttiff
200 set tiffsupport=N
201 set HAVE_TIFF=
202 shift
203 goto again
204
205 rem ----------------------------------------------------------------------
206
207 :withoutxpm
208 set xpmsupport=N
209 set HAVE_XPM=
210 shift
211 goto again
212
213 rem ----------------------------------------------------------------------
214 rem Check that necessary utilities (cp and rm) are present.
215 :checkutils
216 echo Checking for 'cp'...
217 cp configure.bat junk.bat
218 if not exist junk.bat goto needcp
219 echo Checking for 'rm'...
220 rm junk.bat
221 if exist junk.bat goto needrm
222 goto checkcompiler
223 :needcp
224 echo You need 'cp' (the Unix file copy program) to build Emacs.
225 goto end
226 :needrm
227 del junk.bat
228 echo You need 'rm' (the Unix file delete program) to build Emacs.
229 goto end
230
231 rem ----------------------------------------------------------------------
232 rem Auto-detect compiler if not specified, and validate GCC if chosen.
233 :checkcompiler
234 if (%COMPILER%)==(cl) goto compilercheckdone
235 if (%COMPILER%)==(gcc) goto checkgcc
236
237 echo Checking whether 'gcc' is available...
238 echo main(){} >junk.c
239 gcc -c junk.c
240 if exist junk.o goto checkgcc
241
242 echo Checking whether 'cl' is available...
243 cl -nologo -c junk.c
244 if exist junk.obj goto clOK
245 goto nocompiler
246
247 :checkgcc
248 if exist junk.o del junk.o
249 Rem WARNING -- COMMAND.COM on some systems only looks at the first
250 Rem 8 characters of a label. So do NOT be tempted to change
251 Rem chkapi* into something fancier like checkw32api
252 Rem You HAVE been warned!
253 if (%nocygwin%) == (Y) goto chkapiN
254 echo Checking whether gcc requires '-mno-cygwin'...
255 echo #include "cygwin/version.h" >junk.c
256 echo main(){} >>junk.c
257 echo gcc -c junk.c >>config.log
258 gcc -c junk.c >>config.log 2>&1
259 if not exist junk.o goto chkapi
260 echo gcc -mno-cygwin -c junk.c >>config.log
261 gcc -mno-cygwin -c junk.c >>config.log 2>&1
262 if exist junk.o set nocygwin=Y
263
264 :chkapi
265 echo The failed program was: >>config.log
266 type junk.c >>config.log
267 :chkapiN
268 rm -f junk.c junk.o
269 rem ----------------------------------------------------------------------
270 rem Older versions of the Windows API headers either don't have any of
271 rem the IMAGE_xxx definitions (the headers that come with Cygwin b20.1
272 rem are like this), or have a typo in the definition of
273 rem IMAGE_FIRST_SECTION (the headers with gcc/mingw32 2.95 have this
274 rem problem). The gcc/mingw32 2.95.2 headers are okay, as are distros
275 rem of w32api-xxx.zip from Anders Norlander since 1999-11-18 at least.
276 rem Beginning with Emacs 23, we need usp10.h.
277 rem
278 echo Checking whether W32 API headers are too old...
279 echo #include "windows.h" >junk.c
280 echo #include "usp10.h" >>junk.c
281 echo test(PIMAGE_NT_HEADERS pHeader) >>junk.c
282 echo {PIMAGE_SECTION_HEADER pSection = IMAGE_FIRST_SECTION(pHeader);} >>junk.c
283 if (%nocygwin%) == (Y) goto chkapi1
284 set cf=%usercflags%
285 goto chkapi2
286 :chkapi1
287 set cf=%usercflags% -mno-cygwin
288 :chkapi2
289 echo on
290 gcc %cf% -c junk.c
291 @echo off
292 @echo gcc %cf% -c junk.c >>config.log
293 gcc %cf% -c junk.c >>config.log 2>&1
294 set cf=
295 if exist junk.o goto gccOk
296 echo The failed program was: >>config.log
297 type junk.c >>config.log
298
299 :nocompiler
300 echo.
301 echo Configure failed.
302 echo To configure Emacs for Windows, you need to have either
303 echo gcc-2.95 or later with Mingw32 and the W32 API headers,
304 echo or MSVC 2.x or later.
305 del junk.c
306 goto end
307
308 :gccOk
309 set COMPILER=gcc
310 echo Using 'gcc'
311 rm -f junk.c junk.o
312 Rem It is not clear what GCC version began supporting -mtune
313 Rem and pentium4 on x86, so check this explicitly.
314 echo main(){} >junk.c
315 echo gcc -c -O2 -mtune=pentium4 junk.c >>config.log
316 gcc -c -O2 -mtune=pentium4 junk.c >>config.log 2>&1
317 if not errorlevel 1 goto gccMtuneOk
318 echo The failed program was: >>config.log
319 type junk.c >>config.log
320 set mf=-mcpu=i686
321 rm -f junk.c junk.o
322 goto gccdebug
323 :gccMtuneOk
324 echo GCC supports -mtune=pentium4 >>config.log
325 set mf=-mtune=pentium4
326 rm -f junk.c junk.o
327 :gccdebug
328 rem Check for DWARF-2 debug info support, else default to stabs
329 echo main(){} >junk.c
330 echo gcc -c -gdwarf-2 -g3 junk.c >>config.log
331 gcc -c -gdwarf-2 -g3 junk.c >>config.log 2>&1
332 if not errorlevel 1 goto gccdwarf
333 echo The failed program was: >>config.log
334 type junk.c >>config.log
335 set dbginfo=-gstabs+
336 rm -f junk.c junk.o
337 goto compilercheckdone
338 :gccdwarf
339 echo GCC supports DWARF-2 >>config.log
340 set dbginfo=-gdwarf-2 -g3
341 rm -f junk.c junk.o
342 goto compilercheckdone
343
344 :clOk
345 set COMPILER=cl
346 rm -f junk.c junk.obj
347 echo Using 'MSVC'
348
349 :compilercheckdone
350
351 rem ----------------------------------------------------------------------
352 rem Check for external image libraries. Since they are loaded
353 rem dynamically, the libraries themselves do not need to be present
354 rem at compile time, but the header files are required.
355
356 set mingwflag=
357
358 if (%nocygwin%) == (N) goto flagsOK
359 set mingwflag=-mno-cygwin
360
361 :flagsOK
362
363 if (%pngsupport%) == (N) goto pngDone
364
365 echo Checking for libpng...
366 echo #include "png.h" >junk.c
367 echo main (){} >>junk.c
368 rem -o option is ignored with cl, but allows result to be consistent.
369 echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log
370 %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >junk.out 2>>config.log
371 if exist junk.obj goto havePng
372
373 echo ...png.h not found, building without PNG support.
374 echo The failed program was: >>config.log
375 type junk.c >>config.log
376 set HAVE_PNG=
377 goto :pngDone
378
379 :havePng
380 echo ...PNG header available, building with PNG support.
381 set HAVE_PNG=1
382
383 :pngDone
384 rm -f junk.c junk.obj
385
386 if (%jpegsupport%) == (N) goto jpegDone
387
388 echo Checking for jpeg-6b...
389 echo #include "jconfig.h" >junk.c
390 echo main (){} >>junk.c
391 rem -o option is ignored with cl, but allows result to be consistent.
392 echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log
393 %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >junk.out 2>>config.log
394 if exist junk.obj goto haveJpeg
395
396 echo ...jconfig.h not found, building without JPEG support.
397 echo The failed program was: >>config.log
398 type junk.c >>config.log
399 set HAVE_JPEG=
400 goto :jpegDone
401
402 :haveJpeg
403 echo ...JPEG header available, building with JPEG support.
404 set HAVE_JPEG=1
405
406 :jpegDone
407 rm -f junk.c junk.obj
408
409 if (%gifsupport%) == (N) goto gifDone
410
411 echo Checking for libgif...
412 echo #include "gif_lib.h" >junk.c
413 echo main (){} >>junk.c
414 rem -o option is ignored with cl, but allows result to be consistent.
415 echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log
416 %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >junk.out 2>>config.log
417 if exist junk.obj goto haveGif
418
419 echo ...gif_lib.h not found, building without GIF support.
420 echo The failed program was: >>config.log
421 type junk.c >>config.log
422 set HAVE_GIF=
423 goto :gifDone
424
425 :haveGif
426 echo ...GIF header available, building with GIF support.
427 set HAVE_GIF=1
428
429 :gifDone
430 rm -f junk.c junk.obj
431
432 if (%tiffsupport%) == (N) goto tiffDone
433
434 echo Checking for tiff...
435 echo #include "tiffio.h" >junk.c
436 echo main (){} >>junk.c
437 rem -o option is ignored with cl, but allows result to be consistent.
438 echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log
439 %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >junk.out 2>>config.log
440 if exist junk.obj goto haveTiff
441
442 echo ...tiffio.h not found, building without TIFF support.
443 echo The failed program was: >>config.log
444 type junk.c >>config.log
445 set HAVE_TIFF=
446 goto :tiffDone
447
448 :haveTiff
449 echo ...TIFF header available, building with TIFF support.
450 set HAVE_TIFF=1
451
452 :tiffDone
453 rm -f junk.c junk.obj
454
455 if (%xpmsupport%) == (N) goto xpmDone
456
457 echo Checking for libXpm...
458 echo #define FOR_MSW 1 >junk.c
459 echo #include "X11/xpm.h" >>junk.c
460 echo main (){} >>junk.c
461 rem -o option is ignored with cl, but allows result to be consistent.
462 echo %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >>config.log
463 %COMPILER% %usercflags% %mingwflag% -c junk.c -o junk.obj >junk.out 2>>config.log
464 if exist junk.obj goto haveXpm
465
466 echo ...X11/xpm.h not found, building without XPM support.
467 echo The failed program was: >>config.log
468 type junk.c >>config.log
469 set HAVE_XPM=
470 goto :xpmDone
471
472 :haveXpm
473 echo ...XPM header available, building with XPM support.
474 set HAVE_XPM=1
475
476 :xpmDone
477 rm -f junk.c junk.obj junk.err junk.out
478
479 rem ----------------------------------------------------------------------
480 :genmakefiles
481 echo Generating makefiles
482 if %COMPILER% == gcc set MAKECMD=gmake
483 if %COMPILER% == cl set MAKECMD=nmake
484
485 rem Pass on chosen settings to makefiles.
486 rem NB. Be very careful to not have a space before redirection symbols
487 rem except when there is a preceding digit, when a space is required.
488 rem
489 echo # Start of settings from configure.bat >config.settings
490 echo COMPILER=%COMPILER%>>config.settings
491 if not "(%mf%)" == "()" echo MCPU_FLAG=%mf%>>config.settings
492 if not "(%dbginfo%)" == "()" echo DEBUG_INFO=%dbginfo%>>config.settings
493 if (%nodebug%) == (Y) echo NODEBUG=1 >>config.settings
494 if (%noopt%) == (Y) echo NOOPT=1 >>config.settings
495 if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings
496 if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings
497 rem We go thru docflags because usercflags could be "-DFOO=bar" -something
498 rem and the if command cannot cope with this
499 for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y
500 if (%docflags%)==(Y) echo USER_CFLAGS=%usercflags%>>config.settings
501 for %%v in (%userldflags%) do if not (%%v)==() set doldflags=Y
502 if (%doldflags%)==(Y) echo USER_LDFLAGS=%userldflags%>>config.settings
503 echo # End of settings from configure.bat>>config.settings
504 echo. >>config.settings
505
506 copy config.nt config.tmp
507 echo. >>config.tmp
508 echo /* Start of settings from configure.bat. */ >>config.tmp
509 if (%docflags%) == (Y) echo #define USER_CFLAGS " %usercflags%">>config.tmp
510 if (%doldflags%) == (Y) echo #define USER_LDFLAGS " %userldflags%">>config.tmp
511 if not "(%HAVE_PNG%)" == "()" echo #define HAVE_PNG 1 >>config.tmp
512 if not "(%HAVE_JPEG%)" == "()" echo #define HAVE_JPEG 1 >>config.tmp
513 if not "(%HAVE_GIF%)" == "()" echo #define HAVE_GIF 1 >>config.tmp
514 if not "(%HAVE_TIFF%)" == "()" echo #define HAVE_TIFF 1 >>config.tmp
515 if not "(%HAVE_XPM%)" == "()" echo #define HAVE_XPM 1 >>config.tmp
516 echo /* End of settings from configure.bat. */ >>config.tmp
517
518 Rem See if fc.exe returns a meaningful exit status. If it does, we
519 Rem might as well avoid unnecessary overwriting of config.h and epaths.h,
520 Rem since this forces recompilation of every source file.
521 if exist foo.bar del foo.bar
522 fc /b foo.bar foo.bar >nul 2>&1
523 if not errorlevel 2 goto doCopy
524 fc /b config.tmp ..\src\config.h >nul 2>&1
525 if errorlevel 1 goto doCopy
526 fc /b paths.h ..\src\epaths.h >nul 2>&1
527 if errorlevel 0 goto dontCopy
528 :doCopy
529 copy config.tmp ..\src\config.h
530 copy paths.h ..\src\epaths.h
531
532 :dontCopy
533 if exist config.tmp del config.tmp
534 copy /b config.settings+%MAKECMD%.defs+..\nt\makefile.w32-in ..\nt\makefile
535 if exist ..\admin\unidata copy /b config.settings+%MAKECMD%.defs+..\admin\unidata\makefile.w32-in ..\admin\unidata\makefile
536 copy /b config.settings+%MAKECMD%.defs+..\lib-src\makefile.w32-in ..\lib-src\makefile
537 copy /b config.settings+%MAKECMD%.defs+..\src\makefile.w32-in ..\src\makefile
538 copy /b config.settings+%MAKECMD%.defs+..\doc\emacs\makefile.w32-in ..\doc\emacs\makefile
539 copy /b config.settings+%MAKECMD%.defs+..\doc\misc\makefile.w32-in ..\doc\misc\makefile
540 copy /b config.settings+%MAKECMD%.defs+..\doc\lispref\makefile.w32-in ..\doc\lispref\makefile
541 copy /b config.settings+%MAKECMD%.defs+..\doc\lispintro\makefile.w32-in ..\doc\lispintro\makefile
542 if exist ..\lisp\makefile rm -f ../lisp/[Mm]akefile
543 copy /b config.settings+%MAKECMD%.defs+..\lisp\makefile.w32-in ..\lisp\makefile
544 rem Use the default (no-op) Makefile.in if the nt version is not present.
545 if exist ..\leim\makefile.w32-in copy /b config.settings+%MAKECMD%.defs+..\leim\makefile.w32-in ..\leim\makefile
546 if not exist ..\leim\makefile.w32-in copy /b config.settings+%MAKECMD%.defs+..\leim\Makefile.in ..\leim\makefile
547 del config.settings
548
549 Rem Some people use WinZip which doesn't create empty directories!
550 if not exist ..\site-lisp\nul mkdir ..\site-lisp\
551 Rem Update subdirs.el only if it is different or fc.exe doesn't work.
552 if exist foo.bar del foo.bar
553 fc /b foo.bar foo.bar >nul 2>&1
554 if not errorlevel 2 goto doUpdateSubdirs
555 fc /b subdirs.el ..\site-lisp\subdirs.el >nul 2>&1
556 if not errorlevel 1 goto dontUpdateSubdirs
557 :doUpdateSubdirs
558 if exist ..\site-lisp\subdirs.el del ..\site-lisp\subdirs.el
559 copy subdirs.el ..\site-lisp\subdirs.el
560
561 :dontUpdateSubdirs
562 echo.
563
564 rem check that we have all the libraries we need.
565 set libsOK=1
566
567 if not "(%HAVE_XPM%)" == "()" goto checkpng
568 if (%xpmsupport%) == (N) goto checkpng
569 set libsOK=0
570 echo XPM support is missing. It is required for color icons in the toolbar.
571 echo Install libXpm development files or use --without-xpm
572
573 :checkpng
574 if not "(%HAVE_PNG%)" == "()" goto checkjpeg
575 if (%pngsupport%) == (N) goto checkjpeg
576 set libsOK=0
577 echo PNG support is missing.
578 echo Install libpng development files or use --without-png
579
580 :checkjpeg
581 if not "(%HAVE_JPEG%)" == "()" goto checktiff
582 if (%jpegsupport%) == (N) goto checktiff
583 set libsOK=0
584 echo JPEG support is missing.
585 echo Install jpeg development files or use --without-jpeg
586
587 :checktiff
588 if not "(%HAVE_TIFF%)" == "()" goto checkgif
589 if (%tiffsupport%) == (N) goto checkgif
590 set libsOK=0
591 echo TIFF support is missing.
592 echo Install libtiff development files or use --without-tiff
593
594 :checkgif
595 if not "(%HAVE_GIF%)" == "()" goto donelibchecks
596 if (%gifsupport%) == (N) goto donelibchecks
597 set libsOK=0
598 echo GIF support is missing.
599 echo Install giflib or libungif development files or use --without-gif
600
601 :donelibchecks
602 if (%libsOK%) == (1) goto success
603 echo.
604 echo Important libraries are missing. Fix these issues before running make.
605 goto end
606
607 :success
608 echo Emacs successfully configured.
609 echo Emacs successfully configured. >>config.log
610 if (%MAKECMD%) == (gmake) set MAKECMD=make
611 echo Run `%MAKECMD%' to build, then run `%MAKECMD% install' to install.
612 goto end
613
614 :SmallEnv
615 echo Your environment size is too small. Please enlarge it and rerun configure.
616 echo For example, type "command.com /e:2048" to have 2048 bytes available.
617 set $foo$=
618 :end
619 set prefix=
620 set nodebug=
621 set noopt=
622 set nocygwin=
623 set COMPILER=
624 set MAKECMD=
625 set usercflags=
626 set docflags=
627 set userldflags=
628 set doldflags=
629 set mingwflag=
630 set mf=
631
632 goto skipArchTag
633 arch-tag: 300d20a4-1675-4e75-b615-7ce1a8c5376c
634 :skipArchTag