summaryrefslogtreecommitdiff
path: root/src/Make_w16.mak
diff options
context:
space:
mode:
Diffstat (limited to 'src/Make_w16.mak')
-rw-r--r--src/Make_w16.mak196
1 files changed, 196 insertions, 0 deletions
diff --git a/src/Make_w16.mak b/src/Make_w16.mak
new file mode 100644
index 000000000..cd425c9c2
--- /dev/null
+++ b/src/Make_w16.mak
@@ -0,0 +1,196 @@
+#
+# Borland C++ 5.0[12] makefile for vim, 16-bit windows gui version
+# By Vince Negri
+# *************************************************************
+# * WARNING!
+# * This was originally produced by the IDE, but has since been
+# * modifed to make it work properly. Adjust with care!
+# * In particular, leave LinkerLocalOptsAtW16_gvim16dexe alone
+# * unless you are a guru.
+# *************************************************************
+#
+# Look for BOR below and either pass a different value or
+# adjust the path as required. For example
+# make -fMake_w16.mak -DBOR=C:\PF\Borland\BC5.01 -B BccW16.cfg
+# make -fMake_w16.mak
+# Note: $(BOR) is effectively ignored unless BccW16.cfg is rebuilt.
+#
+# Does not compile with Borland C++ 4.51 Walter Briscoe 2003-02-24
+# "out of memory" from compiler if gvim16 wildly wrong. WFB 2003-03-04
+#
+# vim16.def must be a DOS-formatted file. (\r\n line endings.)
+# It is a UNIX-formatted file (\n line endings) in vim-*-extra.tar.gz
+
+.AUTODEPEND
+
+#
+# Borland C++ tools
+#
+IMPLIB = Implib
+BCC = Bcc +BccW16.cfg
+TLINK = TLink
+TLIB = TLib
+BRC = Brc
+TASM = Tasm
+#
+# IDE macros
+#
+
+#
+# Options
+#
+!ifndef BOR
+BOR = D:\BC5
+!endif
+
+# !ifndef INTDIR is lethal considering CLEAN below. WFB 2003-03-13
+INTDIR=w16
+
+# /Twe Make the target a Windows .EXE with explicit functions exportable +
+# /x Map file off
+# /l Include source line numbers in object map files`
+# /c case sensitive link
+# /C Case-sensitive exports and imports (16-bit only)
+# /k Produce "No Stack" warning.
+# /Oa Minimise segment alignment
+# /Oc Minimise Chain fixes
+# /Oi Minimise Iterated data
+# /Or Minimise resource alignment
+# /P -P=x Code pack size
+# /V Windows version for application
+# /L Folder to search for library files
+LinkerLocalOptsAtW16_gvim16dexe =/Twe/x/l/c/C/k/Or/Oc/Oa/Oi/P=65535/V3.10
+
+CompInheritOptsAt_gvim16dexe = \
+ -I$(BOR)\INCLUDE;PROTO;. \
+ -DFEAT_GUI;FEAT_GUI_MSWIN;FEAT_GUI_W16;MSWIN;WIN16;MSWIN16_FASTTEXT \
+ -DFEAT_TOOLBAR;WIN16_3DLOOK
+
+#
+# Dependency List
+#
+Dep_Gvim16 = \
+ gvim16.exe
+
+ObjFiles = \
+ $(INTDIR)\buffer.obj\
+ $(INTDIR)\charset.obj\
+ $(INTDIR)\diff.obj\
+ $(INTDIR)\digraph.obj\
+ $(INTDIR)\edit.obj\
+ $(INTDIR)\eval.obj\
+ $(INTDIR)\ex_cmds.obj\
+ $(INTDIR)\ex_cmds2.obj\
+ $(INTDIR)\ex_docmd.obj\
+ $(INTDIR)\ex_eval.obj\
+ $(INTDIR)\ex_getln.obj\
+ $(INTDIR)\fileio.obj\
+ $(INTDIR)\fold.obj\
+ $(INTDIR)\getchar.obj\
+ $(INTDIR)\gui.obj\
+ $(INTDIR)\gui_w16.obj\
+ $(INTDIR)\main.obj\
+ $(INTDIR)\mark.obj\
+ $(INTDIR)\mbyte.obj\
+ $(INTDIR)\memfile.obj\
+ $(INTDIR)\memline.obj\
+ $(INTDIR)\menu.obj\
+ $(INTDIR)\message.obj\
+ $(INTDIR)\misc1.obj\
+ $(INTDIR)\misc2.obj\
+ $(INTDIR)\move.obj\
+ $(INTDIR)\normal.obj\
+ $(INTDIR)\ops.obj\
+ $(INTDIR)\option.obj\
+ $(INTDIR)\os_win16.obj\
+ $(INTDIR)\os_msdos.obj\
+ $(INTDIR)\os_mswin.obj\
+ $(INTDIR)\quickfix.obj\
+ $(INTDIR)\regexp.obj\
+ $(INTDIR)\screen.obj\
+ $(INTDIR)\search.obj\
+ $(INTDIR)\syntax.obj\
+ $(INTDIR)\tag.obj\
+ $(INTDIR)\term.obj\
+ $(INTDIR)\ui.obj\
+ $(INTDIR)\undo.obj\
+ $(INTDIR)\version.obj\
+ $(INTDIR)\window.obj
+
+Dep_gvim16dexe = \
+ vimtbar.lib\
+ vim16.def\
+ $(INTDIR)\vim16.res\
+ $(ObjFiles)
+
+# Without the following, the implicit rule in BUILTINS.MAK is picked up
+# for a rule for .c.obj rather than the local implicit rule
+.SUFFIXES
+.SUFFIXES .c .obj
+.path.c = .
+
+# -P- Force C++ compilation off
+# -c Compilation only
+# -n Place .OBJ files
+{.}.c{$(INTDIR)}.obj:
+ $(BCC) -P- -c -n$(INTDIR)\ {$< }
+
+Gvim16 : BccW16.cfg $(Dep_Gvim16)
+ echo MakeNode
+
+gvim16.exe : $(Dep_gvim16dexe)
+ $(TLINK) $(LinkerLocalOptsAtW16_gvim16dexe) @&&|
+c0wl.obj $(ObjFiles)
+|,$*,,vimtbar ctl3dv2 import cwl, vim16.def,$(INTDIR)\vim16.res
+
+# Force objects to be built if $(BOR) changes
+$(ObjFiles) : Make_w16.mak BccW16.cfg
+
+$(INTDIR)\vim16.res : vim16.rc
+ $(BRC) -R @&&|
+ $(CompInheritOptsAt_gvim16dexe) -fo$*.res $?
+|
+
+
+# Compiler configuration file
+# There is no rule for $(INTDIR) as make always says it does not exist
+BccW16.cfg :
+ -@if not exist $(INTDIR)\$(NULL) mkdir $(INTDIR)
+ Copy &&|
+-3 ; Generate 80386 protected-mode compatible instructions
+-a ; Byte alignment
+-dc ; Move string literals from data segment to code segment
+-ff ; Fast floating point
+-H ; Generate and use precompiled headers
+-H=$(INTDIR)\gvim16.csm ; gvim16.csm is the precompiled header filename
+-k- ; No standard stack frame
+-ml ; Large memory model
+-OW ; Suppress the inc bp/dec bp on windows far functions
+-O1 ; Generate smallest possible code
+-O2 ; Generate fastest possible code (overrides prior -O1 control)
+-pr ; Fastcall calling convention passing parameters in registers
+-R- ; Exclude browser information in generated .OBJ files
+-v- ; Turn off source debugging
+-vi ; Turn inline function expansion on
+-WE ; Only __far _export functions are exported
+-w ; Display warnings
+-w-par ; Suppress: Parameter 'parameter' is never used
+-w-pch ; Cannot create pre-compiled header: initialized data in header
+-w-sig ; identifier' declared but never used
+-w-ucp ; Mixing pointers to different 'char' types
+-wuse ; 'identifier' declared but never used
+ $(CompInheritOptsAt_gvim16dexe)
+| $@
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+DEL_TREE = rmdir /s /q
+!ELSE
+NULL=nul
+DEL_TREE = deltree /y
+!ENDIF
+
+CLEAN:
+ -@if exist $(INTDIR)\$(NULL) $(DEL_TREE) $(INTDIR)
+ -@if exist BccW16.cfg erase BccW16.cfg
+ -@if exist gvim16.exe erase gvim16.exe