3 # Compiler: Borland C++ 5.0 and later 32-bit compiler
4 # Targets: Dos16 or Win32 (Windows NT and Windows 95) (with/without GUI)
6 # Contributed by Ben Singer.
7 # Updated 4/1997 by Ron Aaron
8 # 6/1997 - added support for 16 bit DOS
9 # Note: this has been tested, and works, for BC5. Your mileage may vary.
10 # Has been reported NOT to work with BC 4.52. Maybe it can be fixed?
11 # 10/1997 - ron - fixed bugs w/ BC 5.02
12 # 8/1998 - ron - updated with new targets, fixed some stuff
13 # 3/2000 - Bram: Made it work with BC 5.5 free command line compiler,
14 # cleaned up variables.
15 # 6/2001 - Dan - Added support for compiling Python and TCL
16 # 7/2001 - Dan - Added support for compiling Ruby
18 # It builds on Windows 95 and NT-Intel, producing the same binary in either
19 # case. To build using Microsoft Visual C++, use Make_mvc.mak.
21 # This should work with the free Borland command line compiler, version 5.5.
22 # You need at least sp1 (service pack 1). With sp2 it compiles faster.
23 # Use a command like this:
24 # <path>\bin\make /f Make_bc5.mak BOR=<path>
27 # let the make utility do the hard work:
32 # name value (default)
34 # BOR path to root of Borland C install (c:\bc5)
35 # LINK name of the linker ($(BOR)\bin\ilink if OSTYPE is DOS16,
36 # $(BOR)\bin\ilink32 otherwise)
37 # GUI no or yes: set to yes if you want the GUI version (yes)
38 # PERL define to path to Perl dir to get Perl support (not defined)
39 # PERL_VER define to version of Perl being used (56)
40 # DYNAMIC_PERL no or yes: set to yes to load the Perl DLL dynamically (no)
41 # PYTHON define to path to Python dir to get PYTHON support (not defined)
42 # PYTHON_VER define to version of Python being used (22)
43 # DYNAMIC_PYTHON no or yes: use yes to load the Python DLL dynamically (no)
44 # TCL define to path to TCL dir to get TCL support (not defined)
45 # TCL_VER define to version of TCL being used (83)
46 # DYNAMIC_TCL no or yes: use yes to load the TCL DLL dynamically (no)
47 # RUBY define to path to Ruby dir to get Ruby support (not defined)
48 # NOTE: You may have to remove the defines for uid_t and gid_t
49 # from the Ruby config.h header file.
50 # RUBY_VER define to version of Ruby being used (16)
51 # NOTE: compilation on WinNT/2K/XP requires
52 # at least version 1.6.5 of Ruby. Earlier versions
53 # of Ruby will cause a compile error on these systems.
54 # RUBY_VER_LONG same, but in format with dot. (1.6)
55 # DYNAMIC_RUBY no or yes: use yes to load the Ruby DLL dynamically (no)
56 # MBYTE no or yes: set to yes for multi-byte support (yes)
57 # NOTE: multi-byte support is broken in the Borland libraries,
58 # not everything will work properly! Esp. handling multi-byte
60 # IME no or yes: set to yes for multi-byte IME support (yes)
61 # DYNAMIC_IME no or yes: set to yes to load imm32.dll dynamically (yes)
62 # GETTEXT no or yes: set to yes for multi-language support (yes)
63 # ICONV no or yes: set to yes for dynamic iconv support (yes)
64 # OLE no or yes: set to yes to make OLE gvim (no)
65 # OSTYPE DOS16 or WIN32 (WIN32)
66 # DEBUG no or yes: set to yes if you wish a DEBUGging build (no)
67 # CODEGUARD no or yes: set to yes if you want to use CODEGUARD (no)
68 # CPUNR 1 through 6: select -CPU argument to compile with (3)
69 # 3 for 386, 4 for 486, 5 for pentium, 6 for pentium pro.
70 # USEDLL no or yes: set to yes to use the Runtime library DLL (no)
71 # For USEDLL=yes the cc3250.dll is required to run Vim.
72 # VIMDLL no or yes: create vim32.dll, and stub (g)vim.exe (no)
73 # ALIGN 1, 2 or 4: Alignment to use (4 for Win32, 2 for DOS16)
74 # FASTCALL no or yes: set to yes to use register-based function protocol (yes)
75 # OPTIMIZE SPACE, SPEED, or MAXSPEED: type of optimization (MAXSPEED)
76 # POSTSCRIPT no or yes: set to yes for PostScript printing
77 # FEATURES TINY, SMALL, NORMAL, BIG or HUGE
78 # (BIG for WIN32, SMALL for DOS16)
79 # WINVER 0x0400 or 0x0500: minimum Win32 version to support (0x0400)
80 # CSCOPE no or yes: include support for Cscope interface (yes)
81 # NETBEANS no or yes: include support for Netbeans interface (yes if GUI
83 # NBDEBUG no or yes: include support for debugging Netbeans interface (no)
84 # XPM define to path to XPM dir to get support for loading XPM images.
86 ### BOR: root of the BC installation
91 ### LINK: Name of the linker: tlink or ilink32 (this is below, depends on
94 ### GUI: yes for GUI version, no for console version
99 ### MBYTE: yes for multibyte support, no to disable it.
104 ### IME: yes for multibyte support, no to disable it.
108 !if
("$(DYNAMIC_IME)"=="")
112 ### GETTEXT: yes for multilanguage support, no to disable it.
113 !if
("$(GETTEXT)"=="")
117 ### ICONV: yes to enable dynamic-iconv support, no to disable it
122 ### CSCOPE: yes to enable Cscope support, no to disable it
123 !if
("$(CSCOPE)"=="")
127 ### NETBEANS: yes to enable NetBeans interface support, no to disable it
128 !if
("$(NETBEANS)"=="") && ("$(GUI)"=="yes")
132 ### PERL: uncomment this line if you want perl support in vim
135 ### PYTHON: uncomment this line if you want python support in vim
138 ### RUBY: uncomment this line if you want ruby support in vim
141 ### TCL: uncomment this line if you want tcl support in vim
144 ### OLE: no for normal gvim, yes for OLE-capable gvim (only works with GUI)
147 ### OSTYPE: DOS16 for Windows 3.1 version, WIN32 for Windows 95/98/NT/2000
149 !if
("$(OSTYPE)"=="")
153 ### DEBUG: Uncomment to make an executable for debugging
155 !if
("$(DEBUG)"=="yes")
159 ### CODEGUARD: Uncomment to use the CODEGUARD stuff (BC 5.0 or later):
161 !if
("$(CODEGUARD)"=="yes")
165 ### CPUNR: set your target processor (3 to 6)
166 !if
("$(CPUNR)" == "i386") ||
("$(CPUNR)" == "3")
168 !elif
("$(CPUNR)" == "i486") ||
("$(CPUNR)" == "4")
170 !elif
("$(CPUNR)" == "i586") ||
("$(CPUNR)" == "5")
172 !elif
("$(CPUNR)" == "i686") ||
("$(CPUNR)" == "6")
178 ### Comment out to use precompiled headers (faster, but uses lots of disk!)
179 HEADERS
= -H
-H
=vim.csm
-Hc
181 ### USEDLL: no for statically linked version of run-time, yes for DLL runtime
182 !if
("$(USEDLL)"=="")
186 ### VIMDLL: yes for a DLL version of VIM (NOT RECOMMENDED), no otherwise
189 ### ALIGN: alignment you desire: (1,2 or 4: s/b 4 for Win32, 2 for DOS)
191 !if
($(OSTYPE
)==DOS16
)
198 ### FASTCALL: yes to use FASTCALL calling convention (RECOMMENDED!), no otherwise
199 # Incompatible when calling external functions (like MSVC-compiled DLLs), so
200 # don't use FASTCALL when linking with external libs.
201 !if
("$(FASTCALL)"=="") && \
202 ("$(PYTHON)"=="") && \
206 ("$(ICONV)"!="yes") && \
207 ("$(IME)"!="yes") && \
208 ("$(MBYTE)"!="yes") && \
213 ### OPTIMIZE: SPEED to optimize for speed, SPACE otherwise (SPEED RECOMMENDED)
214 !if
("$(OPTIMIZE)"=="")
218 ### FEATURES: TINY, SMALL, NORMAL, BIG or HUGE (BIG for WIN32, SMALL for DOS16)
219 !if
("$(FEATURES)"=="")
220 ! if
($(OSTYPE
)==DOS16
)
227 ### POSTSCRIPT: uncomment this line if you want PostScript printing
231 # If you have a fixed directory for $VIM or $VIMRUNTIME, other than the normal
232 # default, use these lines.
233 #VIMRCLOC = somewhere
234 #VIMRUNTIMEDIR = somewhere
236 ### Set the default $(WINVER) to make it work with Bcc 5.5.
242 # Sanity checks for the above options:
245 !if
($(OSTYPE
)==DOS16
)
247 !error CPUNR Must be less than or equal to
4 for DOS16
251 !error ALIGN Must be less than or equal to
2 for DOS16
256 !error CPUNR Must be greater or equal to
3 for WIN32
260 !if
($(OSTYPE
)!=WIN32
) && ($(OSTYPE
)!=DOS16
)
261 !error Check the OSTYPE variable again
: $(OSTYPE
) is not supported
!
265 # Optimizations: change as desired (RECOMMENDATION: Don't change!):
267 !if
("$(DEBUG)"=="yes")
270 !if
("$(OPTIMIZE)"=="SPACE")
272 !elif
("$(OPTIMIZE)"=="MAXSPEED")
273 OPT
= -O2
-f-
-d
-Ocavi
-O
275 OPT
= -O2
-f-
-d
-Oc
-O
277 !if
("$(FASTCALL)"=="yes")
280 !if
("$(CODEGUARD)"!="yes")
284 !if
($(OSTYPE
)==DOS16
)
289 # shouldn't have to change:
291 INCLUDE
= $(BOR
)\
include;.
;proto
292 DEFINES
= -DFEAT_
$(FEATURES
) -DWIN32
-DHAVE_PATHDEF \
293 -DWINVER
=$(WINVER
) -D_WIN32_WINNT
=$(WINVER
)
296 INTERP_DEFINES
= $(INTERP_DEFINES
) -DFEAT_PERL
297 INCLUDE
= $(PERL
)\lib\core
;$(INCLUDE
)
301 ! if
("$(DYNAMIC_PERL)" == "yes")
302 ! if
($(PERL_VER
) > 55)
303 INTERP_DEFINES
= $(INTERP_DEFINES
) -DDYNAMIC_PERL
-DDYNAMIC_PERL_DLL
=\"perl
$(PERL_VER
).dll
\"
304 PERL_LIB_FLAG
= /nodefaultlib
:
306 ! message
"Cannot dynamically load Perl versions less than 5.6. Loading statically..."
312 INTERP_DEFINES
= $(INTERP_DEFINES
) -DFEAT_PYTHON
313 INCLUDE
= $(PYTHON
)\
include;$(INCLUDE
)
317 !if
"$(DYNAMIC_PYTHON)" == "yes"
318 INTERP_DEFINES
= $(INTERP_DEFINES
) -DDYNAMIC_PYTHON
-DDYNAMIC_PYTHON_DLL
=\"python
$(PYTHON_VER
).dll
\"
319 PYTHON_LIB_FLAG
= /nodefaultlib
:
327 !ifndef RUBY_VER_LONG
331 !if
"$(RUBY_VER)" == "16"
332 !ifndef RUBY_PLATFORM
333 RUBY_PLATFORM
= i586-mswin32
335 !ifndef RUBY_INSTALL_NAME
336 RUBY_INSTALL_NAME
= mswin32-ruby
$(RUBY_VER
)
339 !ifndef RUBY_PLATFORM
340 RUBY_PLATFORM
= i386-mswin32
342 !ifndef RUBY_INSTALL_NAME
343 RUBY_INSTALL_NAME
= msvcrt-ruby
$(RUBY_VER
)
347 INTERP_DEFINES
= $(INTERP_DEFINES
) -DFEAT_RUBY
348 INCLUDE
= $(RUBY
)\lib
\ruby\
$(RUBY_VER_LONG
)\
$(RUBY_PLATFORM
);$(INCLUDE
)
350 !if
"$(DYNAMIC_RUBY)" == "yes"
351 INTERP_DEFINES
= $(INTERP_DEFINES
) -DDYNAMIC_RUBY
-DDYNAMIC_RUBY_DLL
=\"$(RUBY_INSTALL_NAME
).dll
\"
352 INTERP_DEFINES
= $(INTERP_DEFINES
) -DDYNAMIC_RUBY_VER
=$(RUBY_VER
)
353 RUBY_LIB_FLAG
= /nodefaultlib
:
358 INTERP_DEFINES
= $(INTERP_DEFINES
) -DFEAT_TCL
359 INCLUDE
= $(TCL
)\
include;$(INCLUDE
)
363 TCL_LIB
= $(TCL
)\lib
\tcl
$(TCL_VER
).lib
365 !if
"$(DYNAMIC_TCL)" == "yes"
366 INTERP_DEFINES
= $(INTERP_DEFINES
) -DDYNAMIC_TCL
-DDYNAMIC_TCL_DLL
=\"tcl
$(TCL_VER
).dll
\"
367 TCL_LIB
= tclstub
$(TCL_VER
)-bor.lib
372 # DO NOT change below:
375 ALIGNARG
= -a
$(ALIGN
)
377 !if
("$(DEBUG)"=="yes")
378 DEFINES
=$(DEFINES
) -DDEBUG
381 !if
("$(OLE)"=="yes")
382 DEFINES
= $(DEFINES
) -DFEAT_OLE
385 !if
("$(MBYTE)"=="yes")
386 MBDEFINES
= $(MBDEFINES
) -DFEAT_MBYTE
388 !if
("$(IME)"=="yes")
389 MBDEFINES
= $(MBDEFINES
) -DFEAT_MBYTE_IME
390 !if
("$(DYNAMIC_IME)" == "yes")
391 MBDEFINES
= $(MBDEFINES
) -DDYNAMIC_IME
394 !if
("$(ICONV)"=="yes")
395 MBDEFINES
= $(MBDEFINES
) -DDYNAMIC_ICONV
397 !if
("$(GETTEXT)"=="yes")
398 MBDEFINES
= $(MBDEFINES
) -DDYNAMIC_GETTEXT
401 !if
("$(CSCOPE)"=="yes")
402 DEFINES
= $(DEFINES
) -DFEAT_CSCOPE
405 !if
("$(GUI)"=="yes")
406 DEFINES
= $(DEFINES
) -DFEAT_GUI_W32
-DFEAT_CLIPBOARD
407 !if
("$(DEBUG)"=="yes")
412 !if
("$(VIMDLL)"=="yes")
414 DEFINES
= $(DEFINES
) -DVIMDLL
418 STARTUPOBJ
= c0w32.obj
425 !if
("$(DEBUG)"=="yes")
428 # for now, anyway: VIMDLL is only for the GUI version
431 !if
($(OSTYPE
)==DOS16
)
432 DEFINES
= -DFEAT_
$(FEATURES
) -DMSDOS
438 STARTUPOBJ
= c0x32.obj
439 LINK2
= -ap
-OS
-o
-P
444 !if
("$(NETBEANS)"=="yes")
445 DEFINES
= $(DEFINES
) -DFEAT_NETBEANS_INTG
446 !if
("$(NBDEBUG)"=="yes")
447 DEFINES
= $(DEFINES
) -DNBDEBUG
448 NBDEBUG_DEP
= nbdebug.h nbdebug.c
453 !if
("$(GUI)"=="yes")
454 DEFINES
= $(DEFINES
) -DFEAT_XPM_W32
455 INCLUDE
= $(XPM
)\
include;$(INCLUDE
)
459 !if
("$(USEDLL)"=="yes")
460 DEFINES
= $(DEFINES
) -D_RTLDLL
463 !if
("$(DEBUG)"=="yes")
464 OBJDIR
= $(OSTYPE
)\objdbg
466 !if
("$(GUI)"=="yes")
467 !if
("$(OLE)"=="yes")
468 OBJDIR
= $(OSTYPE
)\oleobj
470 OBJDIR
= $(OSTYPE
)\gobj
473 OBJDIR
= $(OSTYPE
)\obj
477 !if
("$(POSTSCRIPT)"=="yes")
478 DEFINES
= $(DEFINES
) -DMSWINPS
481 ##### BASE COMPILER/TOOLS RULES #####
482 MAKE
= $(BOR
)\bin\make
483 CFLAGS
= -w-aus
-w-par
-w-pch
-w-ngu
-w-csu
-I
$(INCLUDE
)
484 !if
($(OSTYPE
)==DOS16
)
487 LINK
= $(BOR
)\BIN\TLink
490 LFLAGS
= -Tde
-c
-m
-L
$(LIB
) $(DEBUG_FLAG
) $(LINK2
)
492 CFLAGS
= $(CFLAGS
) -H-
$(HEADERS
)
494 BRC
= $(BOR
)\BIN
\brc
32
496 LINK
= $(BOR
)\BIN\ILink32
498 CC
= $(BOR
)\BIN\Bcc32
499 LFLAGS
= -OS
-Tpe
-c
-m
-L
$(LIB
) $(DEBUG_FLAG
) $(LINK2
)
500 LFLAGSDLL
= -Tpd
-c
-m
-L
$(LIB
) $(DEBUG_FLAG
) $(LINK2
)
501 CFLAGS
= $(CFLAGS
) -d
-RT-
-k-
-Oi
$(HEADERS
) -f-
506 CCARG
= +$(OBJDIR
)\bcc.cfg
510 # Without the following, the implicit rule in BUILTINS.MAK is picked up
511 # for a rule for .c.obj rather than the local implicit rule
516 {.
}.c
{$(OBJDIR
)}.obj
:
517 $(CC
) $(CCARG
) $(CC1
) -n
$(OBJDIR
)\
{$< }
520 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@
$*.
cpp
522 !if
($(OSTYPE
)==DOS16
)
525 $(OBJDIR
)\os_w32exe.obj
526 !if
("$(VIMDLL)"=="yes")
528 $(OBJDIR
)\os_w32dll.obj
531 $(OBJDIR
)\os_w32exe.obj
536 $(OBJDIR
)\buffer.obj \
537 $(OBJDIR
)\charset.obj \
539 $(OBJDIR
)\digraph.obj \
542 $(OBJDIR
)\ex_cmds.obj \
543 $(OBJDIR
)\ex_cmds2.obj \
544 $(OBJDIR
)\ex_docmd.obj \
545 $(OBJDIR
)\ex_eval.obj \
546 $(OBJDIR
)\ex_getln.obj \
547 $(OBJDIR
)\fileio.obj \
549 $(OBJDIR
)\getchar.obj \
550 $(OBJDIR
)\hardcopy.obj \
551 $(OBJDIR
)\hashtab.obj \
554 $(OBJDIR
)\memfile.obj \
555 $(OBJDIR
)\memline.obj \
557 $(OBJDIR
)\message.obj \
558 $(OBJDIR
)\misc1.obj \
559 $(OBJDIR
)\misc2.obj \
561 $(OBJDIR
)\mbyte.obj \
562 $(OBJDIR
)\normal.obj \
564 $(OBJDIR
)\option.obj \
565 $(OBJDIR
)\popupmnu.obj \
566 $(OBJDIR
)\quickfix.obj \
567 $(OBJDIR
)\regexp.obj \
568 $(OBJDIR
)\screen.obj \
569 $(OBJDIR
)\search.obj \
570 $(OBJDIR
)\spell.obj \
571 $(OBJDIR
)\syntax.obj \
576 $(OBJDIR
)\version.obj \
577 $(OBJDIR
)\window.obj \
578 $(OBJDIR
)\pathdef.obj
580 !if
("$(OLE)"=="yes")
587 $(OBJDIR
)\if_perl.obj
592 $(OBJDIR
)\if_python.obj
597 $(OBJDIR
)\if_ruby.obj
605 !if
("$(CSCOPE)"=="yes")
607 $(OBJDIR
)\if_cscope.obj
610 !if
("$(NETBEANS)"=="yes")
612 $(OBJDIR
)\netbeans.obj
617 $(OBJDIR
)\xpm_w32.obj
620 !if
("$(VIMDLL)"=="yes")
621 vimdllobj
= $(vimobj
)
622 !if
("$(DEBUG)"=="yes")
623 DLLTARGET
= vim32d.dll
625 DLLTARGET
= vim32.dll
631 !if
("$(GUI)"=="yes")
635 $(OBJDIR
)\gui_beval.obj \
636 $(OBJDIR
)\gui_w32.obj
639 !if
($(OSTYPE
)==WIN32
)
641 $(OBJDIR
)\os_win32.obj
$(OBJDIR
)\os_mswin.obj
642 !elif
($(OSTYPE
)==DOS16
)
644 $(OBJDIR
)\os_msdos.obj
646 # Blab what we are going to do:
647 MSG
= Compiling
$(OSTYPE
) $(TARGET
) $(OLETARGET
), with
:
648 !if
("$(GUI)"=="yes")
651 !if
("$(OLE)"=="yes")
654 !if
("$(USEDLL)"=="yes")
657 !if
("$(VIMDLL)"=="yes")
660 !if
("$(FASTCALL)"=="yes")
661 MSG
= $(MSG
) FASTCALL
663 !if
("$(MBYTE)"=="yes")
666 !if
("$(IME)"=="yes")
668 ! if
"$(DYNAMIC_IME)" == "yes"
669 MSG
= $(MSG
)(dynamic
)
672 !if
("$(GETTEXT)"=="yes")
675 !if
("$(ICONV)"=="yes")
678 !if
("$(DEBUG)"=="yes")
681 !if
("$(CODEGUARD)"=="yes")
682 MSG
= $(MSG
) CODEGUARD
684 !if
("$(CSCOPE)"=="yes")
687 !if
("$(NETBEANS)"=="yes")
688 MSG
= $(MSG
) NETBEANS
695 ! if
"$(DYNAMIC_PERL)" == "yes"
696 MSG
= $(MSG
)(dynamic
)
701 ! if
"$(DYNAMIC_PYTHON)" == "yes"
702 MSG
= $(MSG
)(dynamic
)
707 ! if
"$(DYNAMIC_RUBY)" == "yes"
708 MSG
= $(MSG
)(dynamic
)
713 ! if
"$(DYNAMIC_TCL)" == "yes"
714 MSG
= $(MSG
)(dynamic
)
717 MSG
= $(MSG
) cpu
=$(CPUARG
)
718 MSG
= $(MSG
) Align
=$(ALIGNARG
)
722 !if
($(OSTYPE
)==DOS16
)
725 !if
("$(VIMDLL)"=="yes")
726 TARGETS
= $(DLLTARGET
)
728 TARGETS
= $(TARGETS
) $(TARGET
)
732 all: vim vimrun.exe
install.exe xxd uninstal.exe GvimExt
/gvimext.dll
734 vim
: $(OSTYPE
) $(OBJDIR
) $(OBJDIR
)\bcc.cfg
$(TARGETS
)
735 @if exist
$(OBJDIR
)\version.obj del
$(OBJDIR
)\version.obj
736 @if exist auto\pathdef.c del auto\pathdef.c
746 $(MAKE
) /f Make_bc5.mak BOR
="$(BOR)" BCC
="$(CC)"
749 GvimExt
/gvimext.dll
: GvimExt
/gvimext.
cpp GvimExt
/gvimext.rc GvimExt
/gvimext.h
751 $(MAKE
) /f Make_bc5.mak USEDLL
=$(USEDLL
) BOR
=$(BOR
)
754 install.exe
: dosinst.c
$(OBJDIR
)\bcc.cfg
755 !if
($(OSTYPE
)==WIN32
)
756 $(CC
) $(CCARG
) -WC
-DWIN32
-einstall dosinst.c
758 $(CC
) $(CCARG
) -WC
-einstall dosinst.c
761 uninstal.exe
: uninstal.c
$(OBJDIR
)\bcc.cfg
762 !if
($(OSTYPE
)==WIN32
)
763 $(CC
) $(CCARG
) -WC
-DWIN32
-O2
-euninstal uninstal.c
765 $(CC
) $(CCARG
) -WC
-O2
-euninstal uninstal.c
769 !if
"$(OS)" == "Windows_NT"
770 # For Windows NT/2000, doesn't work on Windows 95/98...
771 # $(COMSPEC) needed to ensure rmdir.exe is not run
772 -@
$(COMSPEC
) /C rmdir
/Q
/S
$(OBJDIR
)
774 # For Windows 95/98, doesn't work on Windows NT/2000...
775 -@deltree
/y
$(OBJDIR
)
805 $(MAKE
) /f Make_bc5.mak BOR
="$(BOR)" clean
808 $(MAKE
) /f Make_bc5.mak BOR
="$(BOR)" clean
811 $(DLLTARGET
): $(OBJDIR
) $(vimdllobj
)
817 !if
("$(CODEGUARD)"=="yes")
820 # $(OSTYPE)==WIN32 causes os_mswin.c compilation. FEAT_SHORTCUT in it needs OLE
821 !if
("$(OLE)"=="yes" ||
$(OSTYPE
)==WIN32
)
824 !if
($(OSTYPE
)==WIN32
)
827 $(PERL_LIB_FLAG
)perl.lib
+
830 $(PYTHON_LIB_FLAG
)python.lib
+
833 $(RUBY_LIB_FLAG
)ruby.lib
+
836 $(TCL_LIB_FLAG
)tcl.lib
+
841 !if
("$(USEDLL)"=="yes")
852 !if
("$(VIMDLL)"=="yes")
853 $(TARGET
): $(OBJDIR
) $(DLLTARGET
) $(vimmain
) $(OBJDIR
)\
$(RESFILE
)
855 $(TARGET
): $(OBJDIR
) $(vimobj
) $(OBJDIR
)\
$(RESFILE
)
860 !if
("$(VIMDLL)"=="yes")
866 !if
($(OSTYPE
)==WIN32
)
867 !if
("$(CODEGUARD)"=="yes")
870 # $(OSTYPE)==WIN32 causes os_mswin.c compilation. FEAT_SHORTCUT in it needs OLE
871 !if
("$(OLE)"=="yes" ||
$(OSTYPE
)==WIN32
)
876 $(PERL_LIB_FLAG
)perl.lib
+
879 $(PYTHON_LIB_FLAG
)python.lib
+
882 $(RUBY_LIB_FLAG
)ruby.lib
+
885 $(TCL_LIB_FLAG
)tcl.lib
+
890 !if
("$(USEDLL)"=="yes")
904 $(MAKE
) /NOLOGO
-f Make_dos.mak win32
907 $(OBJDIR
)\ex_docmd.obj
: ex_docmd.c ex_cmds.h
909 $(OBJDIR
)\ex_eval.obj
: ex_eval.c ex_cmds.h
911 $(OBJDIR
)\if_ole.obj
: if_ole.
cpp
913 $(OBJDIR
)\if_perl.obj
: if_perl.c perl.lib
914 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@
-pc if_perl.c
916 if_perl.c
: if_perl.xs typemap
917 $(PERL
)\bin\perl.exe
$(PERL
)\lib\ExtUtils\xsubpp
-prototypes
-typemap \
918 $(PERL
)\lib\ExtUtils
\typemap if_perl.xs
> $@
920 $(OBJDIR
)\if_python.obj
: if_python.c python.lib
921 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@
-pc if_python.c
923 $(OBJDIR
)\if_ruby.obj
: if_ruby.c ruby.lib
924 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@
-pc if_ruby.c
926 $(OBJDIR
)\if_tcl.obj
: if_tcl.c tcl.lib
927 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@
-pc if_tcl.c
929 $(OBJDIR
)\xpm_w32.obj
: xpm_w32.c xpm.lib
930 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@
-pc xpm_w32.c
932 $(OBJDIR
)\netbeans.obj
: netbeans.c
$(NBDEBUG_DEP
)
933 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@ netbeans.c
935 $(OBJDIR
)\vim.res
: vim.rc version.h tools.bmp tearoff.bmp \
936 vim.ico vim_error.ico vim_alert.ico vim_info.ico vim_quest.ico
937 $(BRC
) -fo
$(OBJDIR
)\vim.res
-i
$(BOR
)\
include -w32
-r vim.rc @
&&|
941 $(OBJDIR
)\pathdef.obj
: auto\pathdef.c
942 $(CC
) $(CCARG
) $(CC1
) $(CC2
)$@ auto\pathdef.c
945 # Need to escape both quotes and backslashes in $INTERP_DEFINES
946 INTERP_DEFINES_ESC_BKS
=$(INTERP_DEFINES
:\
=\\)
947 INTERP_DEFINES_ESC
=$(INTERP_DEFINES_ESC_BKS
:"=\")
949 # Note: the silly /*"*/ below are there to trick make into accepting
950 # the # character as something other than a comment without messing up
951 # the preprocessor directive.
954 @echo creating auto
/pathdef.c
957 /*"*/#include "vim.h
"/*"*/
959 char_u
*default_vim_dir
= (char_u
*)"$(VIMRCLOC:\=\\)";
960 char_u
*default_vimruntime_dir
= (char_u
*)"$(VIMRUNTIMEDIR:\=\\)";
961 char_u
*all_cflags = (char_u
*)"$(CC:\=\\) $(CFLAGS:\=\\) $(DEFINES) $(MBDEFINES) $(INTERP_DEFINES_ESC) $(OPT) $(EXETYPE) $(CPUARG) $(ALIGNARG) $(DEBUG_FLAG) $(CODEGUARD_FLAG)";
962 char_u
*all_lflags
= (char_u
*)"$(LINK:\=\\) $(LFLAGS:\=\\)";
963 char_u
*compiled_user
= (char_u
*)"$(USERNAME)";
964 char_u
*compiled_sys
= (char_u
*)"$(USERDOMAIN)";
967 perl.lib
: $(PERL
)\lib\CORE\perl
$(PERL_VER
).lib
968 coff2omf
$(PERL
)\lib\CORE\perl
$(PERL_VER
).lib
$@
970 python.lib
: $(PYTHON
)\libs\python
$(PYTHON_VER
).lib
971 coff2omf
$(PYTHON
)\libs\python
$(PYTHON_VER
).lib
$@
973 ruby.lib
: $(RUBY
)\lib\
$(RUBY_INSTALL_NAME
).lib
974 coff2omf
$(RUBY
)\lib\
$(RUBY_INSTALL_NAME
).lib
$@
976 # For some reason, the coff2omf method doesn't work on libXpm.lib, so
977 # we have to manually generate an import library straight from the DLL.
978 xpm.lib
: $(XPM
)\lib\libXpm.lib
979 implib
-a
$@
$(XPM
)\bin\libXpm.dll
982 !if
("$(DYNAMIC_TCL)" == "yes")
985 coff2omf
$(TCL_LIB
) $@
988 !if
("$(DYNAMIC_TCL)" == "yes")
989 tclstub
$(TCL_VER
)-bor.lib
:
990 -@IF NOT EXIST
$@ ECHO You must download tclstub
$(TCL_VER
)-bor.lib separately and\
991 place it in the src directory in order to compile a dynamic TCL-enabled\
992 (g
)vim with the Borland compiler. You can
get the tclstub
$(TCL_VER
)-bor.lib file\
993 at http
://mywebpage.netscape.com
/sharppeople
/vim
/tclstub
$(TCL_VER
)-bor.lib
998 !if
("$(USEDLL)"=="yes")
999 $(CC
) -WC
-O1
-I
$(INCLUDE
) -L
$(LIB
) -D_RTLDLL vimrun.c cw32mti.lib
1001 $(CC
) -WC
-O1
-I
$(INCLUDE
) -L
$(LIB
) vimrun.c
1004 # The dependency on $(OBJDIR) is to have bcc.cfg generated each time.
1005 $(OBJDIR
)\bcc.cfg
: Make_bc5.mak
$(OBJDIR
)
1020 # vi:set sts=4 sw=4: