1# 2# Makefile for VIM on Win32, using Cygnus gcc 3# Last updated by Dan Sharp. Last Change: 2010 Feb 24 4# 5# Also read INSTALLpc.txt! 6# 7# This compiles Vim as a Windows application. If you want Vim to run as a 8# Cygwin application use the Makefile (just like on Unix). 9# 10# GUI no or yes: set to yes if you want the GUI version (yes) 11# PERL define to path to Perl dir to get Perl support (not defined) 12# PERL_VER define to version of Perl being used (56) 13# DYNAMIC_PERL no or yes: set to yes to load the Perl DLL dynamically (yes) 14# PYTHON define to path to Python dir to get PYTHON support (not defined) 15# PYTHON_VER define to version of Python being used (22) 16# DYNAMIC_PYTHON no or yes: use yes to load the Python DLL dynamically (yes) 17# PYTHON3 define to path to Python3 dir to get PYTHON3 support (not defined) 18# PYTHON3_VER define to version of Python3 being used (22) 19# DYNAMIC_PYTHON3 no or yes: use yes to load the Python3 DLL dynamically (yes) 20# TCL define to path to TCL dir to get TCL support (not defined) 21# TCL_VER define to version of TCL being used (83) 22# DYNAMIC_TCL no or yes: use yes to load the TCL DLL dynamically (yes) 23# RUBY define to path to Ruby dir to get Ruby support (not defined) 24# RUBY_VER define to version of Ruby being used (16) 25# DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (yes) 26# MZSCHEME define to path to MzScheme dir to get MZSCHEME support (not defined) 27# MZSCHEME_VER define to version of MzScheme being used (209_000) 28# DYNAMIC_MZSCHEME no or yes: use yes to load the MzScheme DLLs dynamically (yes) 29# MZSCHEME_DLLS path to MzScheme DLLs (libmzgc and libmzsch), for "static" build. 30# LUA define to path to Lua dir to get Lua support (not defined) 31# LUA_VER define to version of Lua being used (51) 32# DYNAMIC_LUA no or yes: use yes to load the Lua DLL dynamically (yes) 33# GETTEXT no or yes: set to yes for dynamic gettext support (yes) 34# ICONV no or yes: set to yes for dynamic iconv support (yes) 35# MBYTE no or yes: set to yes to include multibyte support (yes) 36# IME no or yes: set to yes to include IME support (yes) 37# DYNAMIC_IME no or yes: set to yes to load imm32.dll dynamically (yes) 38# OLE no or yes: set to yes to make OLE gvim (no) 39# DEBUG no or yes: set to yes if you wish a DEBUGging build (no) 40# CPUNR No longer supported, use ARCH. 41# ARCH i386 through pentium4: select -march argument to compile with 42# (i386) 43# USEDLL no or yes: set to yes to use the Runtime library DLL (no) 44# For USEDLL=yes the cygwin1.dll is required to run Vim. 45# "no" does not work with latest version of Cygwin, use 46# Make_ming.mak instead. Or set CC to gcc-3 and add 47# -L/lib/w32api to EXTRA_LIBS. 48# POSTSCRIPT no or yes: set to yes for PostScript printing (no) 49# FEATURES TINY, SMALL, NORMAL, BIG or HUGE (BIG) 50# WINVER Lowest Win32 version to support. (0x0400) 51# CSCOPE no or yes: to include cscope interface support (yes) 52# OPTIMIZE SPACE, SPEED, or MAXSPEED: set optimization level (MAXSPEED) 53# NETBEANS no or yes: to include netbeans interface support (yes when GUI 54# is yes) 55# NBDEBUG no or yes: to include netbeans interface debugging support (no) 56# XPM define to path to XPM dir to get XPM image support (not defined) 57#>>>>> choose options: 58ifndef GUI 59GUI=yes 60endif 61 62ifndef FEATURES 63FEATURES = BIG 64endif 65 66ifndef GETTEXT 67GETTEXT = yes 68endif 69 70ifndef ICONV 71ICONV = yes 72endif 73 74ifndef MBYTE 75MBYTE = yes 76endif 77 78ifndef IME 79IME = yes 80endif 81 82ifndef ARCH 83ARCH = i386 84endif 85 86ifndef WINVER 87WINVER = 0x0400 88endif 89 90ifndef CSCOPE 91CSCOPE = yes 92endif 93 94ifndef NETBEANS 95ifeq ($(GUI),yes) 96NETBEANS = yes 97endif 98endif 99 100ifndef OPTIMIZE 101OPTIMIZE = MAXSPEED 102endif 103 104### See feature.h for a list of optionals. 105### Any other defines can be included here. 106 107DEFINES = -DWIN32 -DHAVE_PATHDEF -DFEAT_$(FEATURES) \ 108 -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER) 109INCLUDES = -march=$(ARCH) -Iproto 110 111#>>>>> name of the compiler and linker, name of lib directory 112CROSS_COMPILE = 113CC = gcc 114RC = windres 115 116############################## 117# DYNAMIC_PERL=yes and no both work 118############################## 119ifdef PERL 120DEFINES += -DFEAT_PERL 121INCLUDES += -I$(PERL)/lib/CORE 122EXTRA_OBJS += $(OUTDIR)/if_perl.o 123 124ifndef DYNAMIC_PERL 125DYNAMIC_PERL = yes 126endif 127 128ifndef PERL_VER 129PERL_VER = 56 130endif 131 132ifeq (yes, $(DYNAMIC_PERL)) 133DEFINES += -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\" 134else 135EXTRA_LIBS += $(PERL)/lib/CORE/perl$(PERL_VER).lib 136endif 137endif 138 139############################## 140# DYNAMIC_PYTHON=yes works. 141# DYNAMIC_PYTHON=no does not (unresolved externals on link). 142############################## 143ifdef PYTHON 144DEFINES += -DFEAT_PYTHON 145EXTRA_OBJS += $(OUTDIR)/if_python.o 146 147ifndef DYNAMIC_PYTHON 148DYNAMIC_PYTHON = yes 149endif 150 151ifndef PYTHON_VER 152PYTHON_VER = 22 153endif 154 155ifeq (yes, $(DYNAMIC_PYTHON)) 156DEFINES += -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\" 157else 158EXTRA_LIBS += $(PYTHON)/libs/python$(PYTHON_VER).lib 159endif 160endif 161 162############################## 163# DYNAMIC_PYTHON3=yes works. 164# DYNAMIC_PYTHON3=no does not (unresolved externals on link). 165############################## 166ifdef PYTHON3 167DEFINES += -DFEAT_PYTHON3 168EXTRA_OBJS += $(OUTDIR)/if_python3.o 169 170ifndef DYNAMIC_PYTHON3 171DYNAMIC_PYTHON3 = yes 172endif 173 174ifndef PYTHON3_VER 175PYTHON3_VER = 31 176endif 177 178ifeq (yes, $(DYNAMIC_PYTHON3)) 179DEFINES += -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL=\"python$(PYTHON3_VER).dll\" 180else 181EXTRA_LIBS += $(PYTHON3)/libs/python$(PYTHON3_VER).lib 182endif 183endif 184 185############################## 186# DYNAMIC_RUBY=yes works. 187# DYNAMIC_RUBY=no does not (process exits). 188############################## 189ifdef RUBY 190 191ifndef RUBY_VER 192RUBY_VER=16 193endif 194 195ifndef RUBY_VER_LONG 196RUBY_VER_LONG=1.6 197endif 198 199ifndef DYNAMIC_RUBY 200DYNAMIC_RUBY = yes 201endif 202 203ifeq ($(RUBY_VER), 16) 204ifndef RUBY_PLATFORM 205RUBY_PLATFORM = i586-mswin32 206endif 207ifndef RUBY_INSTALL_NAME 208RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_VER) 209endif 210else 211ifndef RUBY_PLATFORM 212RUBY_PLATFORM = i386-mswin32 213endif 214ifndef RUBY_INSTALL_NAME 215RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_VER) 216endif 217endif 218 219DEFINES += -DFEAT_RUBY 220INCLUDES += -I$(RUBY)/lib/ruby/$(RUBY_VER_LONG)/$(RUBY_PLATFORM) 221EXTRA_OBJS += $(OUTDIR)/if_ruby.o 222 223ifeq (yes, $(DYNAMIC_RUBY)) 224DEFINES += -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\" 225DEFINES += -DDYNAMIC_RUBY_VER=$(RUBY_VER) 226else 227EXTRA_LIBS += $(RUBY)/lib/$(RUBY_INSTALL_NAME).lib 228endif 229endif 230 231############################## 232# DYNAMIC_MZSCHEME=yes works 233# DYNAMIC_MZSCHEME=no works too 234############################## 235ifdef MZSCHEME 236DEFINES += -DFEAT_MZSCHEME 237INCLUDES += -I$(MZSCHEME)/include 238EXTRA_OBJS += $(OUTDIR)/if_mzsch.o 239 240ifndef DYNAMIC_MZSCHEME 241DYNAMIC_MZSCHEME = yes 242endif 243 244ifndef MZSCHEME_VER 245MZSCHEME_VER = 209_000 246endif 247 248ifndef MZSCHEME_PRECISE_GC 249MZSCHEME_PRECISE_GC=no 250endif 251 252# for version 4.x we need to generate byte-code for Scheme base 253ifndef MZSCHEME_GENERATE_BASE 254MZSCHEME_GENERATE_BASE=no 255endif 256 257ifeq (yes, $(DYNAMIC_MZSCHEME)) 258DEFINES += -DDYNAMIC_MZSCHEME -DDYNAMIC_MZSCH_DLL=\"libmzsch$(MZSCHEME_VER).dll\" -DDYNAMIC_MZGC_DLL=\"libmzgc$(MZSCHEME_VER).dll\" 259else 260ifndef MZSCHEME_DLLS 261MZSCHEME_DLLS = $(MZSCHEME) 262endif 263ifeq (yes,$(MZSCHEME_PRECISE_GC)) 264MZSCHEME_LIB=-lmzsch$(MZSCHEME_VER) 265else 266MZSCHEME_LIB = -lmzsch$(MZSCHEME_VER) -lmzgc$(MZSCHEME_VER) 267endif 268EXTRA_LIBS += -L$(MZSCHEME_DLLS) -L$(MZSCHEME_DLLS)/lib $(MZSCHEME_LIB) 269endif 270ifeq (yes,$(MZSCHEME_GENERATE_BASE)) 271DEFINES += -DINCLUDE_MZSCHEME_BASE 272MZ_EXTRA_DEP += mzscheme_base.c 273endif 274ifeq (yes,$(MZSCHEME_PRECISE_GC)) 275DEFINES += -DMZ_PRECISE_GC 276endif 277endif 278 279############################## 280# DYNAMIC_TCL=yes and no both work. 281############################## 282ifdef TCL 283DEFINES += -DFEAT_TCL 284INCLUDES += -I$(TCL)/include 285EXTRA_OBJS += $(OUTDIR)/if_tcl.o 286 287ifndef DYNAMIC_TCL 288DYNAMIC_TCL = yes 289endif 290 291ifndef TCL_VER 292TCL_VER = 83 293endif 294 295ifeq (yes, $(DYNAMIC_TCL)) 296DEFINES += -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\" 297EXTRA_LIBS += $(TCL)/lib/tclstub$(TCL_VER).lib 298else 299EXTRA_LIBS += $(TCL)/lib/tcl$(TCL_VER).lib 300endif 301endif 302 303############################## 304# DYNAMIC_LUA=yes works. 305# DYNAMIC_LUA=no does not (unresolved externals on link). 306############################## 307ifdef LUA 308DEFINES += -DFEAT_LUA 309INCLUDES += -I$(LUA)/include 310EXTRA_OBJS += $(OUTDIR)/if_lua.o 311 312ifndef DYNAMIC_LUA 313DYNAMIC_LUA = yes 314endif 315 316ifndef LUA_VER 317LUA_VER = 51 318endif 319 320ifeq (yes, $(DYNAMIC_LUA)) 321DEFINES += -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\" 322else 323EXTRA_LIBS += $(LUA)/lib/lua$(LUA_VER).lib 324endif 325endif 326 327############################## 328ifeq (yes, $(GETTEXT)) 329DEFINES += -DDYNAMIC_GETTEXT 330endif 331 332############################## 333ifeq (yes, $(ICONV)) 334DEFINES += -DDYNAMIC_ICONV 335endif 336 337############################## 338ifeq (yes, $(MBYTE)) 339DEFINES += -DFEAT_MBYTE 340endif 341 342############################## 343ifeq (yes, $(IME)) 344DEFINES += -DFEAT_MBYTE_IME 345 346ifndef DYNAMIC_IME 347DYNAMIC_IME = yes 348endif 349 350ifeq (yes, $(DYNAMIC_IME)) 351DEFINES += -DDYNAMIC_IME 352else 353EXTRA_LIBS += -limm32 354endif 355endif 356 357############################## 358ifeq (yes, $(DEBUG)) 359DEFINES += -DDEBUG 360INCLUDES += -g -fstack-check 361DEBUG_SUFFIX = d 362else 363 364ifeq ($(OPTIMIZE), SIZE) 365OPTFLAG = -Os 366else 367ifeq ($(OPTIMIZE), MAXSPEED) 368OPTFLAG = -O3 -fomit-frame-pointer -freg-struct-return 369else 370OPTFLAG = -O2 371endif 372endif 373 374# A bug in the GCC <= 3.2 optimizer can cause a crash. The 375# following option removes the problem optimization. 376OPTFLAG += -fno-strength-reduce 377 378INCLUDES += -s 379 380endif 381 382############################## 383# USEDLL=yes will build a Cygwin32 executable that relies on cygwin1.dll. 384# USEDLL=no will build a Mingw32 executable with no extra dll dependencies. 385############################## 386ifeq (yes, $(USEDLL)) 387DEFINES += -D_MAX_PATH=256 -D__CYGWIN__ 388else 389INCLUDES += -mno-cygwin 390endif 391 392############################## 393ifeq (yes, $(POSTSCRIPT)) 394DEFINES += -DMSWINPS 395endif 396 397############################## 398ifeq (yes, $(CSCOPE)) 399DEFINES += -DFEAT_CSCOPE 400EXTRA_OBJS += $(OUTDIR)/if_cscope.o 401endif 402 403############################## 404ifeq ($(GUI),yes) 405 406############################## 407ifeq (yes, $(NETBEANS)) 408# Only allow NETBEANS for a GUI build. 409DEFINES += -DFEAT_NETBEANS_INTG 410EXTRA_OBJS += $(OUTDIR)/netbeans.o 411EXTRA_LIBS += -lwsock32 412 413ifeq (yes, $(NBDEBUG)) 414DEFINES += -DNBDEBUG 415NBDEBUG_DEP = nbdebug.h nbdebug.c 416endif 417 418endif 419 420############################## 421ifdef XPM 422# Only allow XPM for a GUI build. 423DEFINES += -DFEAT_XPM_W32 424INCLUDES += -I$(XPM)/include 425EXTRA_OBJS += $(OUTDIR)/xpm_w32.o 426EXTRA_LIBS += -L$(XPM)/lib -lXpm 427endif 428 429############################## 430EXE = gvim$(DEBUG_SUFFIX).exe 431OUTDIR = gobj$(DEBUG_SUFFIX) 432DEFINES += -DFEAT_GUI_W32 -DFEAT_CLIPBOARD 433EXTRA_OBJS += $(OUTDIR)/gui.o $(OUTDIR)/gui_w32.o $(OUTDIR)/gui_beval.o $(OUTDIR)/os_w32exe.o 434EXTRA_LIBS += -mwindows -lcomctl32 -lversion 435else 436EXE = vim$(DEBUG_SUFFIX).exe 437OUTDIR = obj$(DEBUG_SUFFIX) 438LIBS += -luser32 -lgdi32 -lcomdlg32 439endif 440 441############################## 442ifeq (yes, $(OLE)) 443DEFINES += -DFEAT_OLE 444EXTRA_OBJS += $(OUTDIR)/if_ole.o 445EXTRA_LIBS += -loleaut32 -lstdc++ 446endif 447 448############################## 449ifneq (sh.exe, $(SHELL)) 450DEL = rm 451MKDIR = mkdir -p 452DIRSLASH = / 453else 454DEL = del 455MKDIR = mkdir 456DIRSLASH = \\ 457endif 458 459#>>>>> end of choices 460########################################################################### 461 462INCL = vim.h globals.h option.h keymap.h macros.h ascii.h term.h os_win32.h \ 463 structs.h version.h 464 465CFLAGS = $(OPTFLAG) $(DEFINES) $(INCLUDES) 466 467RCFLAGS = -O coff $(DEFINES) 468 469OBJ = \ 470 $(OUTDIR)/blowfish.o \ 471 $(OUTDIR)/buffer.o \ 472 $(OUTDIR)/charset.o \ 473 $(OUTDIR)/diff.o \ 474 $(OUTDIR)/digraph.o \ 475 $(OUTDIR)/edit.o \ 476 $(OUTDIR)/eval.o \ 477 $(OUTDIR)/ex_cmds.o \ 478 $(OUTDIR)/ex_cmds2.o \ 479 $(OUTDIR)/ex_docmd.o \ 480 $(OUTDIR)/ex_eval.o \ 481 $(OUTDIR)/ex_getln.o \ 482 $(OUTDIR)/fileio.o \ 483 $(OUTDIR)/fold.o \ 484 $(OUTDIR)/getchar.o \ 485 $(OUTDIR)/hardcopy.o \ 486 $(OUTDIR)/hashtab.o \ 487 $(OUTDIR)/main.o \ 488 $(OUTDIR)/mark.o \ 489 $(OUTDIR)/memfile.o \ 490 $(OUTDIR)/memline.o \ 491 $(OUTDIR)/menu.o \ 492 $(OUTDIR)/message.o \ 493 $(OUTDIR)/misc1.o \ 494 $(OUTDIR)/misc2.o \ 495 $(OUTDIR)/move.o \ 496 $(OUTDIR)/mbyte.o \ 497 $(OUTDIR)/normal.o \ 498 $(OUTDIR)/ops.o \ 499 $(OUTDIR)/option.o \ 500 $(OUTDIR)/os_win32.o \ 501 $(OUTDIR)/os_mswin.o \ 502 $(OUTDIR)/pathdef.o \ 503 $(OUTDIR)/popupmnu.o \ 504 $(OUTDIR)/quickfix.o \ 505 $(OUTDIR)/regexp.o \ 506 $(OUTDIR)/screen.o \ 507 $(OUTDIR)/search.o \ 508 $(OUTDIR)/sha256.o \ 509 $(OUTDIR)/spell.o \ 510 $(OUTDIR)/syntax.o \ 511 $(OUTDIR)/tag.o \ 512 $(OUTDIR)/term.o \ 513 $(OUTDIR)/ui.o \ 514 $(OUTDIR)/undo.o \ 515 $(OUTDIR)/version.o \ 516 $(OUTDIR)/vimrc.o \ 517 $(OUTDIR)/window.o \ 518 $(EXTRA_OBJS) 519 520all: $(EXE) xxd/xxd.exe vimrun.exe install.exe uninstal.exe GvimExt/gvimext.dll 521 522# According to the Cygwin doc 1.2 FAQ, kernel32 should not be specified for 523# linking unless calling ld directly. 524# See /usr/doc/cygwin-doc-1.2/html/faq_toc.html#TOC93 for more information. 525$(EXE): $(OUTDIR) $(OBJ) 526 $(CC) $(CFLAGS) -o $(EXE) $(OBJ) $(LIBS) -luuid -lole32 $(EXTRA_LIBS) 527 528xxd/xxd.exe: xxd/xxd.c 529 $(MAKE) -C xxd -f Make_cyg.mak CC=$(CC) USEDLL=$(USEDLL) 530 531GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h 532 $(MAKE) -C GvimExt -f Make_ming.mak CROSS_COMPILE=$(CROSS_COMPILE) 533 534vimrun.exe: vimrun.c 535 $(CC) $(CFLAGS) -o vimrun.exe vimrun.c $(LIBS) 536 537install.exe: dosinst.c 538 $(CC) $(CFLAGS) -o install.exe dosinst.c $(LIBS) -luuid -lole32 539 540uninstal.exe: uninstal.c 541 $(CC) $(CFLAGS) -o uninstal.exe uninstal.c $(LIBS) 542 543$(OUTDIR): 544 $(MKDIR) $(OUTDIR) 545 546tags: 547 command /c ctags *.c $(INCL) 548 549clean: 550 -$(DEL) $(OUTDIR)$(DIRSLASH)*.o 551 -rmdir $(OUTDIR) 552 -$(DEL) $(EXE) vimrun.exe install.exe uninstal.exe 553ifdef PERL 554 -$(DEL) if_perl.c 555endif 556ifdef MZSCHEME 557 -$(DEL) mzscheme_base.c 558endif 559 -$(DEL) pathdef.c 560 $(MAKE) -C xxd -f Make_cyg.mak clean 561 $(MAKE) -C GvimExt -f Make_ming.mak clean 562 563distclean: clean 564 -$(DEL) obj$(DIRSLASH)*.o 565 -rmdir obj 566 -$(DEL) gobj$(DIRSLASH)*.o 567 -rmdir gobj 568 -$(DEL) objd$(DIRSLASH)*.o 569 -rmdir objd 570 -$(DEL) gobjd$(DIRSLASH)*.o 571 -rmdir gobjd 572 -$(DEL) *.exe 573 574########################################################################### 575 576$(OUTDIR)/%.o : %.c $(INCL) 577 $(CC) -c $(CFLAGS) $< -o $@ 578 579$(OUTDIR)/ex_docmd.o: ex_docmd.c $(INCL) ex_cmds.h 580 $(CC) -c $(CFLAGS) ex_docmd.c -o $(OUTDIR)/ex_docmd.o 581 582$(OUTDIR)/ex_eval.o: ex_eval.c $(INCL) ex_cmds.h 583 $(CC) -c $(CFLAGS) ex_eval.c -o $(OUTDIR)/ex_eval.o 584 585$(OUTDIR)/if_cscope.o: if_cscope.c $(INCL) if_cscope.h 586 $(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o 587 588$(OUTDIR)/if_ole.o: if_ole.cpp $(INCL) 589 $(CC) -c $(CFLAGS) if_ole.cpp -o $(OUTDIR)/if_ole.o 590 591$(OUTDIR)/if_python.o : if_python.c $(INCL) 592 $(CC) -c $(CFLAGS) -I$(PYTHON)/include $< -o $@ 593 594$(OUTDIR)/if_python3.o : if_python3.c $(INCL) 595 $(CC) -c $(CFLAGS) -I$(PYTHON3)/include $< -o $@ 596 597if_perl.c: if_perl.xs typemap 598 $(PERL)/bin/perl `cygpath -d $(PERL)/lib/ExtUtils/xsubpp` \ 599 -prototypes -typemap \ 600 `cygpath -d $(PERL)/lib/ExtUtils/typemap` if_perl.xs > $@ 601 602$(OUTDIR)/if_perl.o: if_perl.c $(INCL) 603ifeq (yes, $(USEDLL)) 604 $(CC) -c $(CFLAGS) -I/usr/include/mingw -D__MINGW32__ if_perl.c -o $(OUTDIR)/if_perl.o 605endif 606 607$(OUTDIR)/if_ruby.o: if_ruby.c $(INCL) 608ifeq (16, $(RUBY_VER)) 609 $(CC) -c $(CFLAGS) -U_WIN32 if_ruby.c -o $(OUTDIR)/if_ruby.o 610endif 611 612$(OUTDIR)/netbeans.o: netbeans.c $(INCL) $(NBDEBUG_DEP) 613 $(CC) -c $(CFLAGS) netbeans.c -o $(OUTDIR)/netbeans.o 614 615$(OUTDIR)/if_mzsch.o: if_mzsch.c $(INCL) if_mzsch.h $(MZ_EXTRA_DEP) 616 $(CC) -c $(CFLAGS) if_mzsch.c -o $(OUTDIR)/if_mzsch.o 617 618$(OUTDIR)/vimrc.o: vim.rc version.h gui_w32_rc.h 619 $(RC) $(RCFLAGS) vim.rc -o $(OUTDIR)/vimrc.o 620 621mzscheme_base.c: 622 $(MZSCHEME)/mzc --c-mods mzscheme_base.c ++lib scheme/base 623 624pathdef.c: $(INCL) 625ifneq (sh.exe, $(SHELL)) 626 @echo creating pathdef.c 627 @echo '/* pathdef.c */' > pathdef.c 628 @echo '#include "vim.h"' >> pathdef.c 629 @echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' >> pathdef.c 630 @echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' >> pathdef.c 631 @echo 'char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)";' >> pathdef.c 632 @echo 'char_u *all_lflags = (char_u *)"$(CC) -s -o $(EXE) $(LIBS) -luuid -lole32 $(EXTRA_LIBS)";' >> pathdef.c 633 @echo 'char_u *compiled_user = (char_u *)"$(USERNAME)";' >> pathdef.c 634 @echo 'char_u *compiled_sys = (char_u *)"$(USERDOMAIN)";' >> pathdef.c 635else 636 @echo creating pathdef.c 637 @echo /* pathdef.c */ > pathdef.c 638 @echo #include "vim.h" >> pathdef.c 639 @echo char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)"; >> pathdef.c 640 @echo char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)"; >> pathdef.c 641 @echo char_u *all_cflags = (char_u *)"$(CC) $(CFLAGS)"; >> pathdef.c 642 @echo char_u *all_lflags = (char_u *)"$(CC) -s -o $(EXE) $(LIBS) -luuid -lole32 $(EXTRA_LIBS)"; >> pathdef.c 643 @echo char_u *compiled_user = (char_u *)"$(USERNAME)"; >> pathdef.c 644 @echo char_u *compiled_sys = (char_u *)"$(USERDOMAIN)"; >> pathdef.c 645endif 646 647