blob: ddbdbe304a655a855bd2183d0e40355e4ffb9fa8 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001#
2# Makefile for Vim.
3# Compiler: Borland C++ 5.0 and later 32-bit compiler
4# Targets: Dos16 or Win32 (Windows NT and Windows 95) (with/without GUI)
5#
Bram Moolenaar17b609e2016-01-01 17:56:17 +01006# NOTE: THIS IS OLD AND PROBABLY NO LONGER WORKS.
7#
Bram Moolenaar071d4272004-06-13 20:20:40 +00008# Contributed by Ben Singer.
9# Updated 4/1997 by Ron Aaron
10# 6/1997 - added support for 16 bit DOS
11# Note: this has been tested, and works, for BC5. Your mileage may vary.
12# Has been reported NOT to work with BC 4.52. Maybe it can be fixed?
13# 10/1997 - ron - fixed bugs w/ BC 5.02
14# 8/1998 - ron - updated with new targets, fixed some stuff
15# 3/2000 - Bram: Made it work with BC 5.5 free command line compiler,
16# cleaned up variables.
17# 6/2001 - Dan - Added support for compiling Python and TCL
18# 7/2001 - Dan - Added support for compiling Ruby
19#
20# It builds on Windows 95 and NT-Intel, producing the same binary in either
21# case. To build using Microsoft Visual C++, use Make_mvc.mak.
22#
23# This should work with the free Borland command line compiler, version 5.5.
24# You need at least sp1 (service pack 1). With sp2 it compiles faster.
25# Use a command like this:
26# <path>\bin\make /f Make_bc5.mak BOR=<path>
27#
28
29# let the make utility do the hard work:
30.AUTODEPEND
31.CACHEAUTODEPEND
32
33# VARIABLES:
34# name value (default)
35#
36# BOR path to root of Borland C install (c:\bc5)
37# LINK name of the linker ($(BOR)\bin\ilink if OSTYPE is DOS16,
38# $(BOR)\bin\ilink32 otherwise)
39# GUI no or yes: set to yes if you want the GUI version (yes)
Bram Moolenaar0ba04292010-07-14 23:23:17 +020040# LUA define to path to Lua dir to get Lua support (not defined)
41# LUA_VER define to version of Lua being used (51)
42# DYNAMIC_LUA no or yes: set to yes to load the Lua DLL dynamically (no)
Bram Moolenaar071d4272004-06-13 20:20:40 +000043# PERL define to path to Perl dir to get Perl support (not defined)
44# PERL_VER define to version of Perl being used (56)
45# DYNAMIC_PERL no or yes: set to yes to load the Perl DLL dynamically (no)
46# PYTHON define to path to Python dir to get PYTHON support (not defined)
47# PYTHON_VER define to version of Python being used (22)
48# DYNAMIC_PYTHON no or yes: use yes to load the Python DLL dynamically (no)
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +020049# PYTHON3 define to path to Python3 dir to get PYTHON3 support (not defined)
50# PYTHON3_VER define to version of Python3 being used (31)
51# DYNAMIC_PYTHON3 no or yes: use yes to load the Python3 DLL dynamically (no)
Bram Moolenaar071d4272004-06-13 20:20:40 +000052# TCL define to path to TCL dir to get TCL support (not defined)
53# TCL_VER define to version of TCL being used (83)
54# DYNAMIC_TCL no or yes: use yes to load the TCL DLL dynamically (no)
55# RUBY define to path to Ruby dir to get Ruby support (not defined)
56# NOTE: You may have to remove the defines for uid_t and gid_t
57# from the Ruby config.h header file.
58# RUBY_VER define to version of Ruby being used (16)
59# NOTE: compilation on WinNT/2K/XP requires
60# at least version 1.6.5 of Ruby. Earlier versions
61# of Ruby will cause a compile error on these systems.
Bram Moolenaar910f66f2006-04-05 20:41:53 +000062# RUBY_VER_LONG same, but in format with dot. (1.6)
Bram Moolenaar071d4272004-06-13 20:20:40 +000063# DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (no)
64# MBYTE no or yes: set to yes for multi-byte support (yes)
Bram Moolenaarc9b4b052006-04-30 18:54:39 +000065# NOTE: multi-byte support is broken in the Borland libraries,
66# not everything will work properly! Esp. handling multi-byte
67# file names.
Bram Moolenaar071d4272004-06-13 20:20:40 +000068# IME no or yes: set to yes for multi-byte IME support (yes)
69# DYNAMIC_IME no or yes: set to yes to load imm32.dll dynamically (yes)
70# GETTEXT no or yes: set to yes for multi-language support (yes)
71# ICONV no or yes: set to yes for dynamic iconv support (yes)
72# OLE no or yes: set to yes to make OLE gvim (no)
73# OSTYPE DOS16 or WIN32 (WIN32)
74# DEBUG no or yes: set to yes if you wish a DEBUGging build (no)
75# CODEGUARD no or yes: set to yes if you want to use CODEGUARD (no)
76# CPUNR 1 through 6: select -CPU argument to compile with (3)
77# 3 for 386, 4 for 486, 5 for pentium, 6 for pentium pro.
78# USEDLL no or yes: set to yes to use the Runtime library DLL (no)
79# For USEDLL=yes the cc3250.dll is required to run Vim.
80# VIMDLL no or yes: create vim32.dll, and stub (g)vim.exe (no)
81# ALIGN 1, 2 or 4: Alignment to use (4 for Win32, 2 for DOS16)
82# FASTCALL no or yes: set to yes to use register-based function protocol (yes)
83# OPTIMIZE SPACE, SPEED, or MAXSPEED: type of optimization (MAXSPEED)
84# POSTSCRIPT no or yes: set to yes for PostScript printing
85# FEATURES TINY, SMALL, NORMAL, BIG or HUGE
86# (BIG for WIN32, SMALL for DOS16)
87# WINVER 0x0400 or 0x0500: minimum Win32 version to support (0x0400)
88# CSCOPE no or yes: include support for Cscope interface (yes)
89# NETBEANS no or yes: include support for Netbeans interface (yes if GUI
90# is yes)
Bram Moolenaarc9b4b052006-04-30 18:54:39 +000091# NBDEBUG no or yes: include support for debugging Netbeans interface (no)
Bram Moolenaar071d4272004-06-13 20:20:40 +000092# XPM define to path to XPM dir to get support for loading XPM images.
93
94### BOR: root of the BC installation
95!if ("$(BOR)"=="")
96BOR = c:\bc5
97!endif
98
99### LINK: Name of the linker: tlink or ilink32 (this is below, depends on
100# $(OSTYPE)
101
102### GUI: yes for GUI version, no for console version
103!if ("$(GUI)"=="")
104GUI = yes
105!endif
106
107### MBYTE: yes for multibyte support, no to disable it.
108!if ("$(MBYTE)"=="")
109MBYTE = yes
110!endif
111
112### IME: yes for multibyte support, no to disable it.
113!if ("$(IME)"=="")
114IME = yes
115!endif
116!if ("$(DYNAMIC_IME)"=="")
117DYNAMIC_IME = yes
118!endif
119
120### GETTEXT: yes for multilanguage support, no to disable it.
121!if ("$(GETTEXT)"=="")
122GETTEXT = yes
123!endif
124
125### ICONV: yes to enable dynamic-iconv support, no to disable it
126!if ("$(ICONV)"=="")
127ICONV = yes
128!endif
129
130### CSCOPE: yes to enable Cscope support, no to disable it
131!if ("$(CSCOPE)"=="")
132CSCOPE = yes
133!endif
134
135### NETBEANS: yes to enable NetBeans interface support, no to disable it
136!if ("$(NETBEANS)"=="") && ("$(GUI)"=="yes")
137NETBEANS = yes
138!endif
139
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200140### LUA: uncomment this line if you want lua support in vim
141# LUA=c:\lua
142
Bram Moolenaar071d4272004-06-13 20:20:40 +0000143### PERL: uncomment this line if you want perl support in vim
144# PERL=c:\perl
145
146### PYTHON: uncomment this line if you want python support in vim
147# PYTHON=c:\python22
148
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200149### PYTHON3: uncomment this line if you want python3 support in vim
150# PYTHON3=c:\python31
151
Bram Moolenaar071d4272004-06-13 20:20:40 +0000152### RUBY: uncomment this line if you want ruby support in vim
153# RUBY=c:\ruby
154
155### TCL: uncomment this line if you want tcl support in vim
156# TCL=c:\tcl
157
158### OLE: no for normal gvim, yes for OLE-capable gvim (only works with GUI)
159#OLE = yes
160
161### OSTYPE: DOS16 for Windows 3.1 version, WIN32 for Windows 95/98/NT/2000
162# version
163!if ("$(OSTYPE)"=="")
164OSTYPE = WIN32
165!endif
166
167### DEBUG: Uncomment to make an executable for debugging
168# DEBUG = yes
169!if ("$(DEBUG)"=="yes")
170DEBUG_FLAG = -v
171!endif
172
173### CODEGUARD: Uncomment to use the CODEGUARD stuff (BC 5.0 or later):
174# CODEGUARD = yes
175!if ("$(CODEGUARD)"=="yes")
176CODEGUARD_FLAG = -vG
177!endif
178
179### CPUNR: set your target processor (3 to 6)
180!if ("$(CPUNR)" == "i386") || ("$(CPUNR)" == "3")
181CPUNR = 3
182!elif ("$(CPUNR)" == "i486") || ("$(CPUNR)" == "4")
183CPUNR = 4
184!elif ("$(CPUNR)" == "i586") || ("$(CPUNR)" == "5")
185CPUNR = 5
186!elif ("$(CPUNR)" == "i686") || ("$(CPUNR)" == "6")
187CPUNR = 6
188!else
189CPUNR = 3
190!endif
191
192### Comment out to use precompiled headers (faster, but uses lots of disk!)
193HEADERS = -H -H=vim.csm -Hc
194
195### USEDLL: no for statically linked version of run-time, yes for DLL runtime
196!if ("$(USEDLL)"=="")
197USEDLL = no
198!endif
199
200### VIMDLL: yes for a DLL version of VIM (NOT RECOMMENDED), no otherwise
201#VIMDLL = yes
202
203### ALIGN: alignment you desire: (1,2 or 4: s/b 4 for Win32, 2 for DOS)
204!if ("$(ALIGN)"=="")
205!if ($(OSTYPE)==DOS16)
206ALIGN = 2
207!else
208ALIGN = 4
209!endif
210!endif
211
212### FASTCALL: yes to use FASTCALL calling convention (RECOMMENDED!), no otherwise
213# Incompatible when calling external functions (like MSVC-compiled DLLs), so
214# don't use FASTCALL when linking with external libs.
215!if ("$(FASTCALL)"=="") && \
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200216 ("$(LUA)"=="") && \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000217 ("$(PYTHON)"=="") && \
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200218 ("$(PYTHON3)"=="") && \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000219 ("$(PERL)"=="") && \
220 ("$(TCL)"=="") && \
221 ("$(RUBY)"=="") && \
222 ("$(ICONV)"!="yes") && \
223 ("$(IME)"!="yes") && \
224 ("$(MBYTE)"!="yes") && \
225 ("$(XPM)"=="")
226FASTCALL = yes
227!endif
228
229### OPTIMIZE: SPEED to optimize for speed, SPACE otherwise (SPEED RECOMMENDED)
230!if ("$(OPTIMIZE)"=="")
231OPTIMIZE = MAXSPEED
232!endif
233
234### FEATURES: TINY, SMALL, NORMAL, BIG or HUGE (BIG for WIN32, SMALL for DOS16)
235!if ("$(FEATURES)"=="")
236! if ($(OSTYPE)==DOS16)
237FEATURES = SMALL
238! else
239FEATURES = BIG
240! endif
241!endif
242
243### POSTSCRIPT: uncomment this line if you want PostScript printing
244#POSTSCRIPT = yes
245
246###
247# If you have a fixed directory for $VIM or $VIMRUNTIME, other than the normal
248# default, use these lines.
249#VIMRCLOC = somewhere
250#VIMRUNTIMEDIR = somewhere
251
252### Set the default $(WINVER) to make it work with Bcc 5.5.
253!ifndef WINVER
254WINVER = 0x0400
255!endif
256
257#
258# Sanity checks for the above options:
259#
260
261!if ($(OSTYPE)==DOS16)
262!if (($(CPUNR)+0)>4)
263!error CPUNR Must be less than or equal to 4 for DOS16
264!endif
265
266!if (($(ALIGN)+0)>2)
267!error ALIGN Must be less than or equal to 2 for DOS16
268!endif
269
270!else # not DOS16
271!if (($(CPUNR)+0)<3)
272!error CPUNR Must be greater or equal to 3 for WIN32
273!endif
274!endif
275
276!if ($(OSTYPE)!=WIN32) && ($(OSTYPE)!=DOS16)
277!error Check the OSTYPE variable again: $(OSTYPE) is not supported!
278!endif
279
280#
281# Optimizations: change as desired (RECOMMENDATION: Don't change!):
282#
283!if ("$(DEBUG)"=="yes")
284OPT = -Od -N
285!else
286!if ("$(OPTIMIZE)"=="SPACE")
287OPT = -O1 -f- -d
288!elif ("$(OPTIMIZE)"=="MAXSPEED")
289OPT = -O2 -f- -d -Ocavi -O
290!else
291OPT = -O2 -f- -d -Oc -O
292!endif
293!if ("$(FASTCALL)"=="yes")
294OPT = $(OPT) -pr
295!endif
296!if ("$(CODEGUARD)"!="yes")
297OPT = $(OPT) -vi-
298!endif
299!endif
300!if ($(OSTYPE)==DOS16)
301!undef GUI
302!undef VIMDLL
303!undef USEDLL
304!endif
305# shouldn't have to change:
306LIB = $(BOR)\lib
307INCLUDE = $(BOR)\include;.;proto
308DEFINES = -DFEAT_$(FEATURES) -DWIN32 -DHAVE_PATHDEF \
309 -DWINVER=$(WINVER) -D_WIN32_WINNT=$(WINVER)
310
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200311!ifdef LUA
312INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_LUA
313INCLUDE = $(LUA)\include;$(INCLUDE)
314! ifndef LUA_VER
315LUA_VER = 51
316! endif
317! if ("$(DYNAMIC_LUA)" == "yes")
318INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_LUA -DDYNAMIC_LUA_DLL=\"lua$(LUA_VER).dll\"
319LUA_LIB_FLAG = /nodefaultlib:
320! endif
321!endif
322
Bram Moolenaar071d4272004-06-13 20:20:40 +0000323!ifdef PERL
324INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_PERL
325INCLUDE = $(PERL)\lib\core;$(INCLUDE)
326! ifndef PERL_VER
327PERL_VER = 56
328! endif
329! if ("$(DYNAMIC_PERL)" == "yes")
330! if ($(PERL_VER) > 55)
331INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_PERL -DDYNAMIC_PERL_DLL=\"perl$(PERL_VER).dll\"
332PERL_LIB_FLAG = /nodefaultlib:
333! else
334! message "Cannot dynamically load Perl versions less than 5.6. Loading statically..."
335! endif
336! endif
337!endif
338
339!ifdef PYTHON
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200340!ifdef PYTHON3
341DYNAMIC_PYTHON=yes
342DYNAMIC_PYTHON3=yes
343!endif
344!endif
345
346!ifdef PYTHON
Bram Moolenaar071d4272004-06-13 20:20:40 +0000347INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_PYTHON
Bram Moolenaar071d4272004-06-13 20:20:40 +0000348!ifndef PYTHON_VER
349PYTHON_VER = 22
350!endif
351!if "$(DYNAMIC_PYTHON)" == "yes"
352INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_PYTHON -DDYNAMIC_PYTHON_DLL=\"python$(PYTHON_VER).dll\"
353PYTHON_LIB_FLAG = /nodefaultlib:
354!endif
355!endif
356
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200357!ifdef PYTHON3
358INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_PYTHON3
359!ifndef PYTHON3_VER
360PYTHON3_VER = 31
361!endif
362!if "$(DYNAMIC_PYTHON3)" == "yes"
363INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_PYTHON3 -DDYNAMIC_PYTHON3_DLL=\"python$(PYTHON3_VER).dll\"
364PYTHON3_LIB_FLAG = /nodefaultlib:
365!endif
366!endif
367
368
Bram Moolenaar071d4272004-06-13 20:20:40 +0000369!ifdef RUBY
370!ifndef RUBY_VER
371RUBY_VER = 16
372!endif
373!ifndef RUBY_VER_LONG
374RUBY_VER_LONG = 1.6
375!endif
376
377!if "$(RUBY_VER)" == "16"
378!ifndef RUBY_PLATFORM
379RUBY_PLATFORM = i586-mswin32
380!endif
381!ifndef RUBY_INSTALL_NAME
382RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_VER)
383!endif
384!else
385!ifndef RUBY_PLATFORM
386RUBY_PLATFORM = i386-mswin32
387!endif
388!ifndef RUBY_INSTALL_NAME
389RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_VER)
390!endif
391!endif
392
393INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_RUBY
394INCLUDE = $(RUBY)\lib\ruby\$(RUBY_VER_LONG)\$(RUBY_PLATFORM);$(INCLUDE)
395
396!if "$(DYNAMIC_RUBY)" == "yes"
397INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_RUBY -DDYNAMIC_RUBY_DLL=\"$(RUBY_INSTALL_NAME).dll\"
398INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_RUBY_VER=$(RUBY_VER)
399RUBY_LIB_FLAG = /nodefaultlib:
400!endif
401!endif
402
403!ifdef TCL
404INTERP_DEFINES = $(INTERP_DEFINES) -DFEAT_TCL
405INCLUDE = $(TCL)\include;$(INCLUDE)
406!ifndef TCL_VER
407TCL_VER = 83
408!endif
409TCL_LIB = $(TCL)\lib\tcl$(TCL_VER).lib
410TCL_LIB_FLAG =
411!if "$(DYNAMIC_TCL)" == "yes"
412INTERP_DEFINES = $(INTERP_DEFINES) -DDYNAMIC_TCL -DDYNAMIC_TCL_DLL=\"tcl$(TCL_VER).dll\"
413TCL_LIB = tclstub$(TCL_VER)-bor.lib
414TCL_LIB_FLAG =
415!endif
416!endif
417#
418# DO NOT change below:
419#
420CPUARG = -$(CPUNR)
421ALIGNARG = -a$(ALIGN)
422#
423!if ("$(DEBUG)"=="yes")
Bram Moolenaar78cf3f02014-01-10 18:16:07 +0100424DEFINES=$(DEFINES) -DDEBUG -D_DEBUG
Bram Moolenaar071d4272004-06-13 20:20:40 +0000425!endif
426#
427!if ("$(OLE)"=="yes")
428DEFINES = $(DEFINES) -DFEAT_OLE
429!endif
430#
431!if ("$(MBYTE)"=="yes")
432MBDEFINES = $(MBDEFINES) -DFEAT_MBYTE
433!endif
434!if ("$(IME)"=="yes")
435MBDEFINES = $(MBDEFINES) -DFEAT_MBYTE_IME
436!if ("$(DYNAMIC_IME)" == "yes")
437MBDEFINES = $(MBDEFINES) -DDYNAMIC_IME
438!endif
439!endif
440!if ("$(ICONV)"=="yes")
441MBDEFINES = $(MBDEFINES) -DDYNAMIC_ICONV
442!endif
443!if ("$(GETTEXT)"=="yes")
444MBDEFINES = $(MBDEFINES) -DDYNAMIC_GETTEXT
445!endif
446
447!if ("$(CSCOPE)"=="yes")
448DEFINES = $(DEFINES) -DFEAT_CSCOPE
449!endif
450
Bram Moolenaar071d4272004-06-13 20:20:40 +0000451!if ("$(GUI)"=="yes")
452DEFINES = $(DEFINES) -DFEAT_GUI_W32 -DFEAT_CLIPBOARD
453!if ("$(DEBUG)"=="yes")
454TARGET = gvimd.exe
455!else
456TARGET = gvim.exe
457!endif
458!if ("$(VIMDLL)"=="yes")
459EXETYPE=-WD
460DEFINES = $(DEFINES) -DVIMDLL
461!else
462EXETYPE=-W
463!endif
464STARTUPOBJ = c0w32.obj
465LINK2 = -aa
466RESFILE = vim.res
467!else
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000468!undef NETBEANS
469!undef XPM
470!undef VIMDLL
Bram Moolenaar071d4272004-06-13 20:20:40 +0000471!if ("$(DEBUG)"=="yes")
472TARGET = vimd.exe
473!else
474# for now, anyway: VIMDLL is only for the GUI version
Bram Moolenaar071d4272004-06-13 20:20:40 +0000475TARGET = vim.exe
476!endif
477!if ($(OSTYPE)==DOS16)
478DEFINES= -DFEAT_$(FEATURES) -DMSDOS
479EXETYPE=-ml
480STARTUPOBJ = c0l.obj
481LINK2 =
482!else
483EXETYPE=-WC
484STARTUPOBJ = c0x32.obj
485LINK2 = -ap -OS -o -P
486!endif
487RESFILE = vim.res
488!endif
489
Bram Moolenaarcfbc5ee2004-07-02 15:38:35 +0000490!if ("$(NETBEANS)"=="yes")
491DEFINES = $(DEFINES) -DFEAT_NETBEANS_INTG
492!if ("$(NBDEBUG)"=="yes")
493DEFINES = $(DEFINES) -DNBDEBUG
494NBDEBUG_DEP = nbdebug.h nbdebug.c
495!endif
496!endif
497
498!ifdef XPM
499!if ("$(GUI)"=="yes")
500DEFINES = $(DEFINES) -DFEAT_XPM_W32
501INCLUDE = $(XPM)\include;$(INCLUDE)
502!endif
503!endif
504
Bram Moolenaar071d4272004-06-13 20:20:40 +0000505!if ("$(USEDLL)"=="yes")
506DEFINES = $(DEFINES) -D_RTLDLL
507!endif
508
509!if ("$(DEBUG)"=="yes")
510OBJDIR = $(OSTYPE)\objdbg
511!else
512!if ("$(GUI)"=="yes")
513!if ("$(OLE)"=="yes")
514OBJDIR = $(OSTYPE)\oleobj
515!else
516OBJDIR = $(OSTYPE)\gobj
517!endif
518!else
519OBJDIR = $(OSTYPE)\obj
520!endif
521!endif
522
523!if ("$(POSTSCRIPT)"=="yes")
524DEFINES = $(DEFINES) -DMSWINPS
525!endif
526
527##### BASE COMPILER/TOOLS RULES #####
528MAKE = $(BOR)\bin\make
529CFLAGS = -w-aus -w-par -w-pch -w-ngu -w-csu -I$(INCLUDE)
530!if ($(OSTYPE)==DOS16)
531BRC =
532!if ("$(LINK)"=="")
533LINK = $(BOR)\BIN\TLink
534!endif
535CC = $(BOR)\BIN\Bcc
536LFLAGS = -Tde -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
537LFLAGSDLL =
538CFLAGS = $(CFLAGS) -H- $(HEADERS)
539!else
540BRC = $(BOR)\BIN\brc32
541!if ("$(LINK)"=="")
542LINK = $(BOR)\BIN\ILink32
543!endif
544CC = $(BOR)\BIN\Bcc32
545LFLAGS = -OS -Tpe -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
546LFLAGSDLL = -Tpd -c -m -L$(LIB) $(DEBUG_FLAG) $(LINK2)
547CFLAGS = $(CFLAGS) -d -RT- -k- -Oi $(HEADERS) -f-
548!endif
549
550CC1 = -c
551CC2 = -o
552CCARG = +$(OBJDIR)\bcc.cfg
553
554# implicit rules:
555
556# Without the following, the implicit rule in BUILTINS.MAK is picked up
557# for a rule for .c.obj rather than the local implicit rule
558.SUFFIXES
559.SUFFIXES .c .obj
560.path.c = .
561
562{.}.c{$(OBJDIR)}.obj:
563 $(CC) $(CCARG) $(CC1) -n$(OBJDIR)\ {$< }
564
565.cpp.obj:
566 $(CC) $(CCARG) $(CC1) $(CC2)$@ $*.cpp
567
568!if ($(OSTYPE)==DOS16)
569!else # win32:
570vimmain = \
571 $(OBJDIR)\os_w32exe.obj
572!if ("$(VIMDLL)"=="yes")
573vimwinmain = \
574 $(OBJDIR)\os_w32dll.obj
575!else
576vimwinmain = \
577 $(OBJDIR)\os_w32exe.obj
578!endif
579!endif
580
581vimobj = \
Bram Moolenaar40e6a712010-05-16 22:32:54 +0200582 $(OBJDIR)\blowfish.obj \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000583 $(OBJDIR)\buffer.obj \
584 $(OBJDIR)\charset.obj \
Bram Moolenaar07cf3822014-08-10 16:31:50 +0200585 $(OBJDIR)\crypt.obj \
586 $(OBJDIR)\crypt_zip.obj \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000587 $(OBJDIR)\diff.obj \
588 $(OBJDIR)\digraph.obj \
589 $(OBJDIR)\edit.obj \
590 $(OBJDIR)\eval.obj \
591 $(OBJDIR)\ex_cmds.obj \
592 $(OBJDIR)\ex_cmds2.obj \
593 $(OBJDIR)\ex_docmd.obj \
594 $(OBJDIR)\ex_eval.obj \
595 $(OBJDIR)\ex_getln.obj \
596 $(OBJDIR)\fileio.obj \
597 $(OBJDIR)\fold.obj \
598 $(OBJDIR)\getchar.obj \
Bram Moolenaar58d98232005-07-23 22:25:46 +0000599 $(OBJDIR)\hardcopy.obj \
Bram Moolenaarc01140a2006-03-24 22:21:52 +0000600 $(OBJDIR)\hashtab.obj \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000601 $(OBJDIR)\main.obj \
602 $(OBJDIR)\mark.obj \
603 $(OBJDIR)\memfile.obj \
604 $(OBJDIR)\memline.obj \
605 $(OBJDIR)\menu.obj \
606 $(OBJDIR)\message.obj \
607 $(OBJDIR)\misc1.obj \
608 $(OBJDIR)\misc2.obj \
609 $(OBJDIR)\move.obj \
610 $(OBJDIR)\mbyte.obj \
611 $(OBJDIR)\normal.obj \
612 $(OBJDIR)\ops.obj \
613 $(OBJDIR)\option.obj \
Bram Moolenaarc01140a2006-03-24 22:21:52 +0000614 $(OBJDIR)\popupmnu.obj \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000615 $(OBJDIR)\quickfix.obj \
616 $(OBJDIR)\regexp.obj \
617 $(OBJDIR)\screen.obj \
618 $(OBJDIR)\search.obj \
Bram Moolenaar40e6a712010-05-16 22:32:54 +0200619 $(OBJDIR)\sha256.obj \
Bram Moolenaarfc735152005-03-22 22:54:12 +0000620 $(OBJDIR)\spell.obj \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000621 $(OBJDIR)\syntax.obj \
622 $(OBJDIR)\tag.obj \
623 $(OBJDIR)\term.obj \
624 $(OBJDIR)\ui.obj \
625 $(OBJDIR)\undo.obj \
626 $(OBJDIR)\version.obj \
627 $(OBJDIR)\window.obj \
628 $(OBJDIR)\pathdef.obj
629
630!if ("$(OLE)"=="yes")
631vimobj = $(vimobj) \
632 $(OBJDIR)\if_ole.obj
633!endif
634
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200635!ifdef LUA
636vimobj = $(vimobj) \
637 $(OBJDIR)\if_lua.obj
638!endif
639
Bram Moolenaar071d4272004-06-13 20:20:40 +0000640!ifdef PERL
641vimobj = $(vimobj) \
642 $(OBJDIR)\if_perl.obj
643!endif
644
645!ifdef PYTHON
646vimobj = $(vimobj) \
647 $(OBJDIR)\if_python.obj
648!endif
649
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200650!ifdef PYTHON3
651vimobj = $(vimobj) \
652 $(OBJDIR)\if_python3.obj
653!endif
654
Bram Moolenaar071d4272004-06-13 20:20:40 +0000655!ifdef RUBY
656vimobj = $(vimobj) \
657 $(OBJDIR)\if_ruby.obj
658!endif
659
660!ifdef TCL
661vimobj = $(vimobj) \
662 $(OBJDIR)\if_tcl.obj
663!endif
664
665!if ("$(CSCOPE)"=="yes")
666vimobj = $(vimobj) \
667 $(OBJDIR)\if_cscope.obj
668!endif
669
670!if ("$(NETBEANS)"=="yes")
671vimobj = $(vimobj) \
Bram Moolenaar408fb622005-03-07 23:03:19 +0000672 $(OBJDIR)\netbeans.obj
Bram Moolenaar071d4272004-06-13 20:20:40 +0000673!endif
674
675!ifdef XPM
676vimobj = $(vimobj) \
677 $(OBJDIR)\xpm_w32.obj
678!endif
679
680!if ("$(VIMDLL)"=="yes")
681vimdllobj = $(vimobj)
682!if ("$(DEBUG)"=="yes")
683DLLTARGET = vim32d.dll
684!else
685DLLTARGET = vim32.dll
686!endif
687!else
688DLLTARGET = joebob
689!endif
690
691!if ("$(GUI)"=="yes")
692vimobj = $(vimobj) \
693 $(vimwinmain) \
694 $(OBJDIR)\gui.obj \
Bram Moolenaar408fb622005-03-07 23:03:19 +0000695 $(OBJDIR)\gui_beval.obj \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000696 $(OBJDIR)\gui_w32.obj
697!endif
698
699!if ($(OSTYPE)==WIN32)
700vimobj = $(vimobj) \
Bram Moolenaar693e40c2013-02-26 14:56:42 +0100701 $(OBJDIR)\os_win32.obj $(OBJDIR)\os_mswin.obj $(OBJDIR)\winclip.obj
Bram Moolenaar071d4272004-06-13 20:20:40 +0000702!elif ($(OSTYPE)==DOS16)
703vimobj = $(vimobj) \
704 $(OBJDIR)\os_msdos.obj
705!endif
706# Blab what we are going to do:
707MSG = Compiling $(OSTYPE) $(TARGET) $(OLETARGET), with:
708!if ("$(GUI)"=="yes")
709MSG = $(MSG) GUI
710!endif
711!if ("$(OLE)"=="yes")
712MSG = $(MSG) OLE
713!endif
714!if ("$(USEDLL)"=="yes")
715MSG = $(MSG) USEDLL
716!endif
717!if ("$(VIMDLL)"=="yes")
718MSG = $(MSG) VIMDLL
719!endif
720!if ("$(FASTCALL)"=="yes")
721MSG = $(MSG) FASTCALL
722!endif
723!if ("$(MBYTE)"=="yes")
724MSG = $(MSG) MBYTE
725!endif
726!if ("$(IME)"=="yes")
727MSG = $(MSG) IME
728! if "$(DYNAMIC_IME)" == "yes"
729MSG = $(MSG)(dynamic)
730! endif
731!endif
732!if ("$(GETTEXT)"=="yes")
733MSG = $(MSG) GETTEXT
734!endif
735!if ("$(ICONV)"=="yes")
736MSG = $(MSG) ICONV
737!endif
738!if ("$(DEBUG)"=="yes")
739MSG = $(MSG) DEBUG
740!endif
741!if ("$(CODEGUARD)"=="yes")
742MSG = $(MSG) CODEGUARD
743!endif
744!if ("$(CSCOPE)"=="yes")
745MSG = $(MSG) CSCOPE
746!endif
747!if ("$(NETBEANS)"=="yes")
748MSG = $(MSG) NETBEANS
749!endif
750!ifdef XPM
751MSG = $(MSG) XPM
752!endif
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200753!ifdef LUA
754MSG = $(MSG) LUA
755! if "$(DYNAMIC_LUA)" == "yes"
756MSG = $(MSG)(dynamic)
757! endif
758!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000759!ifdef PERL
760MSG = $(MSG) PERL
761! if "$(DYNAMIC_PERL)" == "yes"
762MSG = $(MSG)(dynamic)
763! endif
764!endif
765!ifdef PYTHON
766MSG = $(MSG) PYTHON
767! if "$(DYNAMIC_PYTHON)" == "yes"
768MSG = $(MSG)(dynamic)
769! endif
770!endif
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200771!ifdef PYTHON3
772MSG = $(MSG) PYTHON3
773! if "$(DYNAMIC_PYTHON3)" == "yes"
774MSG = $(MSG)(dynamic)
775! endif
776!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000777!ifdef RUBY
778MSG = $(MSG) RUBY
779! if "$(DYNAMIC_RUBY)" == "yes"
780MSG = $(MSG)(dynamic)
781! endif
782!endif
783!ifdef TCL
784MSG = $(MSG) TCL
785! if "$(DYNAMIC_TCL)" == "yes"
786MSG = $(MSG)(dynamic)
787! endif
788!endif
789MSG = $(MSG) cpu=$(CPUARG)
790MSG = $(MSG) Align=$(ALIGNARG)
791
792!message $(MSG)
793
794!if ($(OSTYPE)==DOS16)
795TARGETS = $(TARGET)
796!else
797!if ("$(VIMDLL)"=="yes")
798TARGETS = $(DLLTARGET)
799!endif
800TARGETS = $(TARGETS) $(TARGET)
801!endif
802
803# Targets:
804all: vim vimrun.exe install.exe xxd uninstal.exe GvimExt/gvimext.dll
805
806vim: $(OSTYPE) $(OBJDIR) $(OBJDIR)\bcc.cfg $(TARGETS)
807 @if exist $(OBJDIR)\version.obj del $(OBJDIR)\version.obj
808 @if exist auto\pathdef.c del auto\pathdef.c
809
810$(OSTYPE):
811 -@md $(OSTYPE)
812
813$(OBJDIR):
814 -@md $(OBJDIR)
815
816xxd:
817 @cd xxd
818 $(MAKE) /f Make_bc5.mak BOR="$(BOR)" BCC="$(CC)"
819 @cd ..
820
821GvimExt/gvimext.dll: GvimExt/gvimext.cpp GvimExt/gvimext.rc GvimExt/gvimext.h
822 cd GvimExt
823 $(MAKE) /f Make_bc5.mak USEDLL=$(USEDLL) BOR=$(BOR)
824 cd ..
825
826install.exe: dosinst.c $(OBJDIR)\bcc.cfg
827!if ($(OSTYPE)==WIN32)
828 $(CC) $(CCARG) -WC -DWIN32 -einstall dosinst.c
829!else
830 $(CC) $(CCARG) -WC -einstall dosinst.c
831!endif
832
833uninstal.exe: uninstal.c $(OBJDIR)\bcc.cfg
834!if ($(OSTYPE)==WIN32)
835 $(CC) $(CCARG) -WC -DWIN32 -O2 -euninstal uninstal.c
836!else
837 $(CC) $(CCARG) -WC -O2 -euninstal uninstal.c
838!endif
839
840clean:
841!if "$(OS)" == "Windows_NT"
842 # For Windows NT/2000, doesn't work on Windows 95/98...
843 # $(COMSPEC) needed to ensure rmdir.exe is not run
844 -@$(COMSPEC) /C rmdir /Q /S $(OBJDIR)
845!else
846 # For Windows 95/98, doesn't work on Windows NT/2000...
847 -@deltree /y $(OBJDIR)
848!endif
849 -@del *.res
850 -@del vim32*.dll
851 -@del vim32*.lib
852 -@del *vim*.exe
853 -@del *install*.exe
854 -@del *.csm
855 -@del *.map
856 -@del *.ilc
857 -@del *.ild
858 -@del *.ilf
859 -@del *.ils
860 -@del *.tds
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200861!ifdef LUA
862 -@del lua.lib
863!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000864!ifdef PERL
865 -@del perl.lib
866!endif
867!ifdef PYTHON
868 -@del python.lib
869!endif
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200870!ifdef PYTHON3
871 -@del python3.lib
872!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000873!ifdef RUBY
874 -@del ruby.lib
875!endif
876!ifdef TCL
877 -@del tcl.lib
878!endif
879!ifdef XPM
880 -@del xpm.lib
881!endif
882 cd xxd
883 $(MAKE) /f Make_bc5.mak BOR="$(BOR)" clean
884 cd ..
885 cd GvimExt
886 $(MAKE) /f Make_bc5.mak BOR="$(BOR)" clean
887 cd ..
888
889$(DLLTARGET): $(OBJDIR) $(vimdllobj)
890 $(LINK) @&&|
891 $(LFLAGSDLL) +
892 c0d32.obj +
893 $(vimdllobj)
894 $<,$*
895!if ("$(CODEGUARD)"=="yes")
896 cg32.lib+
897!endif
898# $(OSTYPE)==WIN32 causes os_mswin.c compilation. FEAT_SHORTCUT in it needs OLE
899!if ("$(OLE)"=="yes" || $(OSTYPE)==WIN32)
900 ole2w32.lib +
901!endif
902!if ($(OSTYPE)==WIN32)
903 import32.lib+
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200904!ifdef LUA
905 $(LUA_LIB_FLAG)lua.lib+
906!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000907!ifdef PERL
908 $(PERL_LIB_FLAG)perl.lib+
909!endif
910!ifdef PYTHON
911 $(PYTHON_LIB_FLAG)python.lib+
912!endif
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200913!ifdef PYTHON3
914 $(PYTHON3_LIB_FLAG)python3.lib+
915!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000916!ifdef RUBY
917 $(RUBY_LIB_FLAG)ruby.lib+
918!endif
919!ifdef TCL
920 $(TCL_LIB_FLAG)tcl.lib+
921!endif
922!ifdef XPM
923 xpm.lib+
924!endif
925!if ("$(USEDLL)"=="yes")
926 cw32i.lib
927!else
928 cw32.lib
929!endif
930 vim.def
931!else
932 cl.lib
933!endif
934|
935
936!if ("$(VIMDLL)"=="yes")
937$(TARGET): $(OBJDIR) $(DLLTARGET) $(vimmain) $(OBJDIR)\$(RESFILE)
938!else
939$(TARGET): $(OBJDIR) $(vimobj) $(OBJDIR)\$(RESFILE)
940!endif
941 $(LINK) @&&|
942 $(LFLAGS) +
943 $(STARTUPOBJ) +
944!if ("$(VIMDLL)"=="yes")
945 $(vimmain)
946!else
947 $(vimobj)
948!endif
949 $<,$*
950!if ($(OSTYPE)==WIN32)
951!if ("$(CODEGUARD)"=="yes")
952 cg32.lib+
953!endif
954# $(OSTYPE)==WIN32 causes os_mswin.c compilation. FEAT_SHORTCUT in it needs OLE
955!if ("$(OLE)"=="yes" || $(OSTYPE)==WIN32)
956 ole2w32.lib +
957!endif
958 import32.lib+
Bram Moolenaar0ba04292010-07-14 23:23:17 +0200959!ifdef LUA
960 $(LUA_LIB_FLAG)lua.lib+
961!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000962!ifdef PERL
963 $(PERL_LIB_FLAG)perl.lib+
964!endif
965!ifdef PYTHON
966 $(PYTHON_LIB_FLAG)python.lib+
967!endif
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +0200968!ifdef PYTHON3
969 $(PYTHON3_LIB_FLAG)python3.lib+
970!endif
Bram Moolenaar071d4272004-06-13 20:20:40 +0000971!ifdef RUBY
972 $(RUBY_LIB_FLAG)ruby.lib+
973!endif
974!ifdef TCL
975 $(TCL_LIB_FLAG)tcl.lib+
976!endif
977!ifdef XPM
978 xpm.lib+
979!endif
980!if ("$(USEDLL)"=="yes")
981 cw32i.lib
982!else
983 cw32.lib
984!endif
985
986 $(OBJDIR)\$(RESFILE)
987!else
988 emu.lib + cl.lib
989!endif
990|
991
992test:
993 cd testdir
994 $(MAKE) /NOLOGO -f Make_dos.mak win32
995 cd ..
996
997$(OBJDIR)\ex_docmd.obj: ex_docmd.c ex_cmds.h
998
999$(OBJDIR)\ex_eval.obj: ex_eval.c ex_cmds.h
1000
1001$(OBJDIR)\if_ole.obj: if_ole.cpp
1002
Bram Moolenaar0ba04292010-07-14 23:23:17 +02001003$(OBJDIR)\if_lua.obj: if_lua.c lua.lib
1004 $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_lua.c
1005
Bram Moolenaar071d4272004-06-13 20:20:40 +00001006$(OBJDIR)\if_perl.obj: if_perl.c perl.lib
1007 $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_perl.c
1008
1009if_perl.c: if_perl.xs typemap
1010 $(PERL)\bin\perl.exe $(PERL)\lib\ExtUtils\xsubpp -prototypes -typemap \
1011 $(PERL)\lib\ExtUtils\typemap if_perl.xs > $@
1012
Bram Moolenaardd9a4a42013-06-03 20:12:51 +02001013$(OBJDIR)\if_python.obj: if_python.c if_py_both.h python.lib
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +02001014 $(CC) -I$(PYTHON)\include $(CCARG) $(CC1) $(CC2)$@ -pc if_python.c
1015
Bram Moolenaardd9a4a42013-06-03 20:12:51 +02001016$(OBJDIR)\if_python3.obj: if_python3.c if_py_both.h python3.lib
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +02001017 $(CC) -I$(PYTHON3)\include $(CCARG) $(CC1) $(CC2)$@ -pc if_python3.c
Bram Moolenaar071d4272004-06-13 20:20:40 +00001018
1019$(OBJDIR)\if_ruby.obj: if_ruby.c ruby.lib
1020 $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_ruby.c
1021
1022$(OBJDIR)\if_tcl.obj: if_tcl.c tcl.lib
1023 $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc if_tcl.c
1024
1025$(OBJDIR)\xpm_w32.obj: xpm_w32.c xpm.lib
1026 $(CC) $(CCARG) $(CC1) $(CC2)$@ -pc xpm_w32.c
1027
1028$(OBJDIR)\netbeans.obj: netbeans.c $(NBDEBUG_DEP)
1029 $(CC) $(CCARG) $(CC1) $(CC2)$@ netbeans.c
1030
1031$(OBJDIR)\vim.res: vim.rc version.h tools.bmp tearoff.bmp \
1032 vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
1033 $(BRC) -fo$(OBJDIR)\vim.res -i $(BOR)\include -w32 -r vim.rc @&&|
1034 $(DEFINES)
1035|
1036
1037$(OBJDIR)\pathdef.obj: auto\pathdef.c
1038 $(CC) $(CCARG) $(CC1) $(CC2)$@ auto\pathdef.c
1039
1040
1041# Need to escape both quotes and backslashes in $INTERP_DEFINES
1042INTERP_DEFINES_ESC_BKS=$(INTERP_DEFINES:\=\\)
1043INTERP_DEFINES_ESC=$(INTERP_DEFINES_ESC_BKS:"=\")
1044
1045# Note: the silly /*"*/ below are there to trick make into accepting
1046# the # character as something other than a comment without messing up
1047# the preprocessor directive.
1048auto\pathdef.c::
1049 -@md auto
1050 @echo creating auto/pathdef.c
1051 @copy /y &&|
1052/* pathdef.c */
1053/*"*/#include "vim.h"/*"*/
1054
1055char_u *default_vim_dir = (char_u *)"$(VIMRCLOC:\=\\)";
1056char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR:\=\\)";
1057char_u *all_cflags = (char_u *)"$(CC:\=\\) $(CFLAGS:\=\\) $(DEFINES) $(MBDEFINES) $(INTERP_DEFINES_ESC) $(OPT) $(EXETYPE) $(CPUARG) $(ALIGNARG) $(DEBUG_FLAG) $(CODEGUARD_FLAG)";
1058char_u *all_lflags = (char_u *)"$(LINK:\=\\) $(LFLAGS:\=\\)";
1059char_u *compiled_user = (char_u *)"$(USERNAME)";
1060char_u *compiled_sys = (char_u *)"$(USERDOMAIN)";
1061| auto\pathdef.c
1062
Bram Moolenaar0ba04292010-07-14 23:23:17 +02001063lua.lib: $(LUA)\lib\lua$(LUA_VER).lib
1064 coff2omf $(LUA)\lib\lua$(LUA_VER).lib $@
1065
Bram Moolenaar071d4272004-06-13 20:20:40 +00001066perl.lib: $(PERL)\lib\CORE\perl$(PERL_VER).lib
1067 coff2omf $(PERL)\lib\CORE\perl$(PERL_VER).lib $@
1068
1069python.lib: $(PYTHON)\libs\python$(PYTHON_VER).lib
1070 coff2omf $(PYTHON)\libs\python$(PYTHON_VER).lib $@
1071
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +02001072python3.lib: $(PYTHON3)\libs\python$(PYTHON3_VER).lib
1073 coff2omf $(PYTHON3)\libs\python$(PYTHON3_VER).lib $@
1074
Bram Moolenaar071d4272004-06-13 20:20:40 +00001075ruby.lib: $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib
1076 coff2omf $(RUBY)\lib\$(RUBY_INSTALL_NAME).lib $@
1077
1078# For some reason, the coff2omf method doesn't work on libXpm.lib, so
1079# we have to manually generate an import library straight from the DLL.
1080xpm.lib: $(XPM)\lib\libXpm.lib
1081 implib -a $@ $(XPM)\bin\libXpm.dll
1082
1083tcl.lib: $(TCL_LIB)
1084!if ("$(DYNAMIC_TCL)" == "yes")
1085 copy $(TCL_LIB) $@
1086!else
1087 coff2omf $(TCL_LIB) $@
1088!endif
1089
1090!if ("$(DYNAMIC_TCL)" == "yes")
1091tclstub$(TCL_VER)-bor.lib:
1092 -@IF NOT EXIST $@ ECHO You must download tclstub$(TCL_VER)-bor.lib separately and\
1093 place it in the src directory in order to compile a dynamic TCL-enabled\
1094 (g)vim with the Borland compiler. You can get the tclstub$(TCL_VER)-bor.lib file\
1095 at http://mywebpage.netscape.com/sharppeople/vim/tclstub$(TCL_VER)-bor.lib
1096!endif
1097
1098# vimrun.exe:
1099vimrun.exe: vimrun.c
1100!if ("$(USEDLL)"=="yes")
1101 $(CC) -WC -O1 -I$(INCLUDE) -L$(LIB) -D_RTLDLL vimrun.c cw32mti.lib
1102!else
1103 $(CC) -WC -O1 -I$(INCLUDE) -L$(LIB) vimrun.c
1104!endif
1105
1106# The dependency on $(OBJDIR) is to have bcc.cfg generated each time.
1107$(OBJDIR)\bcc.cfg: Make_bc5.mak $(OBJDIR)
1108 copy /y &&|
1109 $(CFLAGS)
1110 -L$(LIB)
1111 $(DEFINES)
1112 $(MBDEFINES)
1113 $(INTERP_DEFINES)
1114 $(EXETYPE)
1115 $(DEBUG_FLAG)
1116 $(OPT)
1117 $(CODEGUARD_FLAG)
1118 $(CPUARG)
1119 $(ALIGNARG)
1120| $@
1121
1122# vi:set sts=4 sw=4:
Bram Moolenaarbd5e15f2010-07-17 21:19:38 +02001123