|
|
1.1 root 1: # a `domestic' makefile for MS-DOS Player (for 20150108 build).
2: # 20150108 lpproj
3: #
4:
5: #
6: # gcc (mingw + msys)
7: #
8: D = /
9: O = o
10: A = a
11: #X =
12: X = .exe
13: MKDIR = mkdir -p
14: RM_F = rm -f
15: CP = cp
16: CC = gcc
17: CXX = g++
18: CFLAGS_OO=-o $@
19: CFLAGS_OX=-o $@
20: CFLAGS= -O3 -Wall -fno-omit-frame-pointer -fno-strict-aliasing -D_MBCS -DNDEBUG -D_MT -DSUPPORT_DISASSEMBLER
21: CXXFLAGS = $(CFLAGS)
22: LD = $(CXX)
23: LIBS = -lwinmm -lpsapi
24: LDFLAGS = -mconsole -s -static -static-libgcc
25:
26:
27: #
28: # Visual C++/WinSDK Command Prompt (with nmake)
29: #
30: #D = \
31: #O = obj
32: #A = lib
33: #X = .exe
34: #MKDIR = mkdir
35: #RM_F = del 2>nul /F /Q
36: #CP = copy /Y
37: #CC = cl
38: #CXX = cl
39: #CFLAGS_OO = /Fo$@
40: #CFLAGS_OX = /Fe$@
41: #CFLAGS= /nologo /W4 /O2 /EHsc /D_MT /DWIN32 /D_MBCS /D_CONSOLE /DNDEBUG /DSUPPORT_DISASSEMBLER /errorReport:none
42: #CXXFLAGS = $(CFLAGS)
43: #LIBS = user32.lib winmm.lib psapi.lib
44: #LDFLAGS = /MT
45:
46:
47: #
48: .SUFFIXES:
49: #.SUFFIXES: $(X) .$(A) .$(O) .cpp .c .h
50:
51:
52: CFLAGS_I286 = $(CFLAGS) -I. -DHAS_I286
53: CXXFLAGS_I286 = $(CFLAGS_I286)
54: CFLAGS_I386 = $(CFLAGS) -I. -DHAS_I386
55: CXXFLAGS_I386 = $(CFLAGS_I386)
56: CFLAGS_I486 = $(CFLAGS) -I. -DHAS_I486
57: CXXFLAGS_I486 = $(CFLAGS_I486)
58:
59: #COMPILE = $(CC) $(CFLAGS) $(CFLAGS_EXTRA) $(CFLAGS_OO) $?
60:
61:
62: SRCD_BASE = .$(D)
63: SRCD_EMUCPU = $(SRCD_BASE)mame$(D)emu$(D)cpu$(D)
64: SRCD_I86 = $(SRCD_EMUCPU)i86$(D)
65: SRCD_I386 = $(SRCD_EMUCPU)i386$(D)
66: SRCD_SOFTFLOAT = $(SRCD_BASE)mame$(D)lib$(D)softfloat$(D)
67:
68: OUTD_BASE = ..$(D)binary$(D)
69: #OUTD_BASE = .$(D)
70:
71: #TARGET_I286 = $(OUTD_BASE)i286$(D)msdos$(X)
72: #TARGET_I386 = $(OUTD_BASE)i386$(D)msdos$(X)
73: #TARGET_I486 = $(OUTD_BASE)i486$(D)msdos$(X)
74: TARGET_I286 = $(OUTD_BASE)msdos_i286$(X)
75: TARGET_I386 = $(OUTD_BASE)msdos_i386$(X)
76: TARGET_I486 = $(OUTD_BASE)msdos_i486$(X)
77:
78: SRCS_I86 = \
79: $(SRCD_I86)ea.h \
80: $(SRCD_I86)host.h \
81: $(SRCD_I86)i286.c \
82: $(SRCD_I86)i286.h \
83: $(SRCD_I86)i86.c \
84: $(SRCD_I86)i86.h \
85: $(SRCD_I86)i86priv.h \
86: $(SRCD_I86)i86time.c \
87: $(SRCD_I86)instr186.c \
88: $(SRCD_I86)instr186.h \
89: $(SRCD_I86)instr286.c \
90: $(SRCD_I86)instr286.h \
91: $(SRCD_I86)instr86.c \
92: $(SRCD_I86)instr86.h \
93: $(SRCD_I86)modrm.h \
94: $(SRCD_I86)modrm286.h \
95: $(SRCD_I86)table186.h \
96: $(SRCD_I86)table286.h \
97: $(SRCD_I86)table86.h
98:
99: SRCS_I386DASM = \
100: $(SRCD_I386)i386dasm.c
101:
102: SRCS_I86DASM = $(SRCS_I386DASM)
103:
104: SRCS_I386 = \
105: $(SRCD_I386)cycles.h \
106: $(SRCD_I386)i386.c \
107: $(SRCD_I386)i386.h \
108: $(SRCD_I386)i386op16.c \
109: $(SRCD_I386)i386op32.c \
110: $(SRCD_I386)i386ops.c \
111: $(SRCD_I386)i386ops.h \
112: $(SRCD_I386)i386priv.h \
113: $(SRCD_I386)pentops.c \
114: $(SRCD_I386)x87ops.c \
115: $(SRCD_EMUCPU)vtlb.c \
116: $(SRCD_EMUCPU)vtlb.h
117:
118: SRCS_I486 = \
119: $(SRCS_I386) \
120: $(SRCD_I386)i486ops.c
121:
122: SRCS_PENTIUM = \
123: $(SRCS_I486) \
124: $(SRCD_I386)pentops.c
125:
126: SRCS_SOFTFLOAT = \
127: $(SRCD_SOFTFLOAT)fpu_constant.h \
128: $(SRCD_SOFTFLOAT)fsincos.c \
129: $(SRCD_SOFTFLOAT)fyl2x.c \
130: $(SRCD_SOFTFLOAT)mamesf.h \
131: $(SRCD_SOFTFLOAT)milieu.h \
132: $(SRCD_SOFTFLOAT)softfloat-macros \
133: $(SRCD_SOFTFLOAT)softfloat-specialize \
134: $(SRCD_SOFTFLOAT)softfloat.c \
135: $(SRCD_SOFTFLOAT)softfloat.h
136:
137:
138: all : i286 i386 i486
139:
140: i286: $(TARGET_I286)
141:
142: i386: $(TARGET_I386)
143:
144: i486: $(TARGET_I486)
145:
146: $(TARGET_I286) : $(SRCD_BASE)msdos.cpp $(SRCD_BASE)msdos.h $(SRCS_I86) $(SRCS_I86DASM)
147: $(CXX) $(CXXFLAGS_I286) $(CFLAGS_EXTRA) \
148: $(CFLAGS_OX) \
149: $(SRCD_BASE)msdos.cpp \
150: $(LIBS) $(LIBS_EXTRA) \
151: $(LDFLAGS) $(LDFLAGS_EXTRA)
152:
153: $(TARGET_I386) : $(SRCD_BASE)msdos.cpp $(SRCD_BASE)msdos.h $(SRCS_I386) $(SRCS_I386DASM) $(SRCS_SOFTFLOAT)
154: $(CXX) $(CXXFLAGS_I386) $(CFLAGS_EXTRA) \
155: $(CFLAGS_OX) \
156: $(SRCD_BASE)msdos.cpp \
157: $(LIBS) $(LIBS_EXTRA) \
158: $(LDFLAGS) $(LDFLAGS_EXTRA)
159:
160: $(TARGET_I486) : $(SRCD_BASE)msdos.cpp $(SRCD_BASE)msdos.h $(SRCS_I486) $(SRCS_I386DASM) $(SRCS_SOFTFLOAT)
161: $(CXX) $(CXXFLAGS_I486) $(CFLAGS_EXTRA) \
162: $(CFLAGS_OX) \
163: $(SRCD_BASE)msdos.cpp \
164: $(LIBS) $(LIBS_EXTRA) \
165: $(LDFLAGS) $(LDFLAGS_EXTRA)
166:
167: clean:
168: -$(RM_F) $(TARGET_I286)
169: -$(RM_F) $(TARGET_I386)
170: -$(RM_F) $(TARGET_I486)
171:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.