summaryrefslogtreecommitdiff
path: root/Makefile.win
blob: ea95ba7bf4c1ffce07c50bf913f8d8c169aa5096 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
CFLAGS = /EHsc /DWIN32

TARGETDIR = bin
TARGETNAME = libbinaryninjaapi.lib
TARGET = .\$(TARGETDIR)\$(TARGETNAME)

OBJS = architecture.obj backgroundtask.obj basicblock.obj binaryninjaapi.obj binaryreader.obj binaryview.obj binaryviewtype.obj binarywriter.obj callingconvention.obj databuffer.obj demangle.obj fileaccessor.obj filemetadata.obj function.obj functiongraph.obj functiongraphblock.obj functionrecognizer.obj interaction.obj log.obj lowlevelil.obj mainthread.obj platform.obj plugin.obj scriptingprovider.obj tempfile.obj transform.obj type.obj update.obj jsoncpp.obj

$(TARGET): $(OBJS)
	if not exist $(TARGETDIR) mkdir $(TARGETDIR)
	lib $(OBJS) /OUT:$(TARGET)

jsoncpp.obj: json\jsoncpp.cpp
	cl $(CFLAGS) /I. /c json\jsoncpp.cpp

# nmake "inference rules" are gnu make "pattern rules"
.cpp.obj:
	cl $(CFLAGS) /c $<

clean:
	if exist *.obj del *.obj
	if exist $(TARGETDIR) del /Q /S $(TARGETDIR)