Subversion Repositories pentevo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
716 lvd 1
.SUFFIXES : .dep .cpp
2
 
3
!ifdef X64
4
OUT_DIR=x64
5
LIBPATH=lib64
6
LFLAGS=-subsystem:console,5.02
7
!else
8
OUT_DIR=x32
9
LIBPATH=lib32
10
LFLAGS=-subsystem:console,5.01
11
!endif
12
 
13
LFLAGS=$(LFLAGS) -osversion:5.0 -pdbaltpath:%_PDB%
14
 
15
!ifdef USE_CL
16
!ifndef DEBUG
17
LFLAGS=-LTCG
18
!endif #DEBUG
19
 
20
CXX=cl -c
21
ICL_FLAGS_COMMON=
22
ICL_FLAGS_RELEASE=
23
ICL_IA32=
24
CL_FLAGS_RELEASE=-Ox -GL
25
LINK=link
26
LFLAGS=$(LFLAGS) #-pdbpath:none
27
!else #USE_CL
28
CXX=icl -c
29
ICL_FLAGS_COMMON=-Wcheck -Qms0 -debug:inline-debug-info -Qopt-report-embed- -notraceback
30
ICL_FLAGS_RELEASE=-O3 -Qip -Qipo
31
ICL_IA32=-arch:IA32
32
CL_FLAGS_RELEASE=
33
LINK=xilink
34
LFLAGS=$(LFLAGS) -qipo #-pdbpath:none
35
!endif #USE_CL
36
 
37
#-RTCsu -Qtrapuv
38
 
39
CFLAGS_COMMON=-nologo -W3 -EHa- -GR- -Zi -MP -Oi -Zc:threadSafeInit- $(ICL_FLAGS_COMMON) \
40
         -D_CRT_SECURE_NO_DEPRECATE -DUSE_SND_EXTERNAL_BUFFER -D_PREFIX_ -D_USING_V110_SDK71_
41
 
42
!ifdef VGEMUL
43
CFLAGS_COMMON=$(CFLAGS_COMMON) -DVG_EMUL
44
!endif
45
 
46
!ifdef SSE1
47
CFLAGS_COMMON=$(CFLAGS_COMMON) -QxK
48
!elseifdef SSE2
49
CFLAGS_COMMON=$(CFLAGS_COMMON) -arch:SSE2 -D_M_IX86_FP=2
50
!elseifdef SSE42
51
CFLAGS_COMMON=$(CFLAGS_COMMON) -QxSSE4.2 -D_M_IX86_FP=2
52
!else
53
CFLAGS_COMMON=$(CFLAGS_COMMON) $(ICL_IA32)
54
!endif
55
 
56
!ifdef DEBUG
57
CFLAGS_DEBUG=-Od -MTd -DDEBUG -D_DEBUG
58
!else
59
CFLAGS_RELEASE=-DNDEBUG -MT $(CL_FLAGS_RELEASE) $(ICL_FLAGS_RELEASE)
60
!endif
61
 
62
CXXFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:forScope,wchar_t
63
CFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:wchar_t
64
 
65
LFLAGS=$(LFLAGS) -debug -fixed:no -release -libpath:$(LIBPATH)
66
 
67
RCFLAGS=-D_USING_V110_SDK71_
68
 
69
LIBS=$(LIBS) sndrender/snd.lib z80/z80.lib
70
 
71
SRCS=emul.cpp std.cpp atm.cpp cheat.cpp config.cpp dbgbpx.cpp dbgcmd.cpp dbglabls.cpp \
72
    dbgmem.cpp dbgoth.cpp dbgpaint.cpp dbgreg.cpp dbgrwdlg.cpp dbgtrace.cpp \
73
        debug.cpp draw.cpp drawnomc.cpp draw_384.cpp dx.cpp dxerr.cpp dxovr.cpp \
74
        dxrcopy.cpp dxrend.cpp dxrendch.cpp dxrframe.cpp dxr_4bpp.cpp dxr_512.cpp \
75
        dxr_advm.cpp dxr_atm.cpp dxr_atm0.cpp dxr_atm2.cpp dxr_atm4.cpp dxr_atm6.cpp \
76
        dxr_atm7.cpp \
77
        dxr_atmf.cpp dxr_prof.cpp dxr_rsm.cpp dxr_text.cpp dxr_vd.cpp \
78
        emulkeys.cpp emul_2203.cpp fntsrch.cpp font.cpp font14.cpp font16.cpp \
79
        font8.cpp fontatm2.cpp fontdata.cpp gs.cpp gshlbass.cpp gshle.cpp \
80
        gsz80.cpp gui.cpp hdd.cpp hddio.cpp iehelp.cpp init.cpp \
81
        input.cpp inputpc.cpp io.cpp keydefs.cpp leds.cpp mainloop.cpp \
82
        memory.cpp modem.cpp opendlg.cpp savesnd.cpp sdcard.cpp snapshot.cpp \
83
        snd_bass.cpp sound.cpp sshot_png.cpp tape.cpp util.cpp vars.cpp \
84
        vs1001.cpp wd93cmd.cpp wd93crc.cpp wd93dat.cpp wd93trk.cpp \
85
        wldr_fdi.cpp wldr_isd.cpp wldr_pro.cpp wldr_td0.cpp wldr_trd.cpp wldr_udi.cpp \
86
        z80.cpp z80asm.cpp zc.cpp savevid.cpp
87
 
88
OBJS=$(SRCS:.cpp=.obj)
89
 
90
all: $(OUT_DIR)/emul.exe
91
 
92
dep: mk.dep
93
 
94
mk.dep: $(SRCS)
95
    $(CXX) -QMM $** >mk.dep
96
 
97
.c.obj::
98
    $(CXX) $(CFLAGS) $<
99
 
100
std.obj: std.cpp
101
    $(CXX) $(CXXFLAGS) -Yc"std.h" std.cpp
102
 
103
.cpp.obj::
104
    $(CXX) $(CXXFLAGS) -Yu"std.h" $<
105
 
106
.rc.res:
107
    $(RC) $(RCFLAGS) $<
108
 
109
$(OUT_DIR)/emul.exe: $(OBJS) $(LIBS) settings.res
110
    $(LINK) $(LFLAGS) -out:$@ -pdb:$*.pdb -map:$*.map $** $(LIBS)
111
 
112
clean:
113
    -del *.obj *.res *.map *.pdb *.pch *.pchi
114
 
115
!if exist(mk.dep)
116
!include mk.dep
117
!endif