]> 4ch.mooo.com Git - 16.git/blob - src/lib/doslib/mak/comw3086.mak
added a bunch of things~ and midi stuff~
[16.git] / src / lib / doslib / mak / comw3086.mak
1 # do not run directly, use make.sh
2
3 CFLAGS_1 =
4 !ifndef DEBUG
5 DEBUG = -d0
6 DSUFFIX =
7 !else
8 DSUFFIX = d
9 !endif
10
11 !ifndef CPULEV0
12 CPULEV0 = 0
13 !endif
14 !ifndef CPULEV2
15 CPULEV2 = 2
16 !endif
17 !ifndef CPULEV3
18 CPULEV3 = 3
19 !endif
20 !ifndef CPULEV4
21 CPULEV4 = 4
22 !endif
23 !ifndef CPULEV5
24 CPULEV5 = 5
25 !endif
26 !ifndef CPULEV6
27 CPULEV6 = 6
28 !endif
29 !ifndef TARGET86
30 TARGET86 = 86
31 !endif
32
33 !ifeq TARGET86 86
34 TARGET86_1DIGIT=0
35 !endif
36 !ifeq TARGET86 186
37 TARGET86_1DIGIT=1
38 !endif
39 !ifeq TARGET86 286
40 TARGET86_1DIGIT=2
41 !endif
42 !ifeq TARGET86 386
43 TARGET86_1DIGIT=3
44 !endif
45 !ifeq TARGET86 486
46 TARGET86_1DIGIT=4
47 !endif
48 !ifeq TARGET86 586
49 TARGET86_1DIGIT=5
50 !endif
51 !ifeq TARGET86 686
52 TARGET86_1DIGIT=6
53 !endif
54
55 # why is this even necessary? why does dumbshit Watcom insist on including the WINNT headers for Windows 3.1 builds?
56 WIN_INCLUDE=-i="$(%WATCOM)/h/win"
57
58 # NOTE TO SELF: If you compile using naive flags, your code will work under Windows 3.1, but will crash horribly under Windows 3.0.
59 #               Wanna know why? Because apparently Windows 3.0 doesn't maintain SS == DS, which Watcom assumes. So you always need
60 #               to specify the -zu and -zw switches. Even for Windows 3.1
61
62 TARGET_MSDOS = 16
63 TARGET_WINDOWS = 30
64 SUBDIR   = win30$(TARGET86_1DIGIT)$(MMODE)$(DSUFFIX)
65 RC       = wrc
66 CC       = wcc
67 LINKER   = wcl
68 WLINK_SYSTEM = windows
69 WLINK_CON_SYSTEM = windows
70 WLINK_DLL_SYSTEM = windows_dll
71 RCFLAGS  = -q -r -30 -bt=windows $(WIN_INCLUDE)
72 CFLAGS   = -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -$(CPULEV0) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bg
73 CFLAGS386= -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -$(CPULEV3) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bg
74 CFLAGS386_TO_586= -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -fp$(CPULEV5) -$(CPULEV5) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bg
75 CFLAGS386_TO_686= -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -fp$(CPULEV6) -$(CPULEV6) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bg
76 AFLAGS   = -e=2 -zq -zw -zu -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -wx -$(CPULEV0) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bg
77 NASMFLAGS= -DTARGET_MSDOS=16 -DTARGET_WINDOWS=$(TARGET_WINDOWS) -DMSDOS=1 -DTARGET86=$(TARGET86) -DMMODE=$(MMODE)
78
79 # NTS: Win16 apps do not have a console mode
80 RCFLAGS_CON = $(RCFLAGS)
81 CFLAGS_CON = $(CFLAGS)
82 CFLAGS386_CON = $(CFLAGS386)
83 # a 586 version of the build flags, so some OBJ files can target Pentium or higher instructions
84 CFLAGS386_TO_586_CON = $(CFLAGS386_TO_586)
85 # a 686 version of the build flags, so some OBJ files can target Pentium or higher instructions
86 CFLAGS386_TO_686_CON = $(CFLAGS386_TO_686)
87 AFLAGS_CON = $(AFLAGS)
88 NASMFLAGS_CON = $(NASMFLAGS)
89
90 RCFLAGS_DLL = -q -r -30 -bt=windows $(WIN_INCLUDE)
91 CFLAGS_DLL = -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -$(CPULEV0) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bd
92 CFLAGS386_DLL = -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -$(CPULEV3) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bd
93 CFLAGS386_TO_586_DLL = -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -fp$(CPULEV5) -$(CPULEV5) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bd
94 CFLAGS386_TO_686_DLL = -e=2 -zq -zu -zw -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -oilrtfm -wx -fp$(CPULEV6) -$(CPULEV6) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bd
95 AFLAGS_DLL = -e=2 -zq -zw -zu -m$(MMODE) $(DEBUG) $(CFLAGS_1) -bt=windows -wx -$(CPULEV0) -dTARGET_MSDOS=16 -dTARGET_WINDOWS=$(TARGET_WINDOWS) -dMSDOS=1 -dTARGET86=$(TARGET86) -DMMODE=$(MMODE) -q $(WIN_INCLUDE) -D_WINDOWS_16_ -bd
96 NASMFLAGS_DLL = -DTARGET_MSDOS=16 -DTARGET_WINDOWS=$(TARGET_WINDOWS) -DMSDOS=1 -DTARGET86=$(TARGET86) -DMMODE=$(MMODE)
97
98 # macro to patch the EXE to the proper version
99 WIN_NE_SETVER_BUILD = ../../tool/chgnever.pl 3.0
100
101 !include "$(REL)$(HPS)mak$(HPS)bcommon.mak"
102 !include "common.mak"
103 !include "$(REL)$(HPS)mak$(HPS)dcommon.mak"
104