command line and JSON-RPC first draft, requires Boost 1.35 or higher for boost::asio,
[novacoin.git] / makefile.vc
1 # Copyright (c) 2009-2010 Satoshi Nakamoto\r
2 # Distributed under the MIT/X11 software license, see the accompanying\r
3 # file license.txt or http://www.opensource.org/licenses/mit-license.php.\r
4 \r
5 \r
6 !IF "$(BUILD)" != "debug" && "$(BUILD)" != "release"\r
7 BUILD=debug\r
8 !ENDIF\r
9 !IF "$(BUILD)" == "debug"\r
10 D=d\r
11 DEBUGFLAGS=/Zi /Od /D__WXDEBUG__\r
12 !ENDIF\r
13 \r
14 \r
15 \r
16 INCLUDEPATHS=/I"/boost" /I"/db/build_windows" /I"/openssl/include" /I"/wxwidgets/lib/vc_lib/mswd" /I"/wxwidgets/include"\r
17 LIBPATHS=/LIBPATH:"/boost/stage/lib" /LIBPATH:"/db/build_windows/$(BUILD)" /LIBPATH:"/openssl/out" /LIBPATH:"/wxwidgets/lib/vc_lib"\r
18 LIBS= \\r
19     libboost_system-vc80-mt-gd.lib libboost_filesystem-vc80-mt-gd.lib \\r
20     libdb47s$(D).lib \\r
21     libeay32.lib \\r
22     wxmsw28$(D)_richtext.lib wxmsw28$(D)_html.lib wxmsw28$(D)_core.lib wxmsw28$(D)_adv.lib wxbase28$(D).lib wxtiff$(D).lib wxjpeg$(D).lib wxpng$(D).lib wxzlib$(D).lib wxregex$(D).lib wxexpat$(D).lib \\r
23     kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib ws2_32.lib shlwapi.lib\r
24 WXDEFS=/DWIN32 /D__WXMSW__ /D_WINDOWS /DNOPCH\r
25 CFLAGS=/c /nologo /Ob0 /MD$(D) /EHsc /GR /Zm300 /YX /Fpobj/headers.pch $(DEBUGFLAGS) $(WXDEFS) $(INCLUDEPATHS)\r
26 HEADERS=headers.h strlcpy.h serialize.h uint256.h util.h key.h bignum.h base58.h script.h db.h net.h irc.h main.h market.h rpc.h uibase.h ui.h\r
27 \r
28 \r
29 \r
30 all: bitcoin.exe\r
31 \r
32 \r
33 obj\util.obj: util.cpp        $(HEADERS)\r
34     cl $(CFLAGS) /Fo$@ %s\r
35 \r
36 obj\script.obj: script.cpp    $(HEADERS)\r
37     cl $(CFLAGS) /Fo$@ %s\r
38 \r
39 obj\db.obj: db.cpp            $(HEADERS)\r
40     cl $(CFLAGS) /Fo$@ %s\r
41 \r
42 obj\net.obj: net.cpp          $(HEADERS)\r
43     cl $(CFLAGS) /Fo$@ %s\r
44 \r
45 obj\main.obj: main.cpp        $(HEADERS) sha.h\r
46     cl $(CFLAGS) /Fo$@ %s\r
47 \r
48 obj\market.obj: market.cpp    $(HEADERS)\r
49     cl $(CFLAGS) /Fo$@ %s\r
50 \r
51 obj\ui.obj: ui.cpp            $(HEADERS)\r
52     cl $(CFLAGS) /Fo$@ %s\r
53 \r
54 obj\uibase.obj: uibase.cpp    uibase.h\r
55     cl $(CFLAGS) /Fo$@ %s\r
56 \r
57 obj\sha.obj: sha.cpp          sha.h\r
58     cl $(CFLAGS) /O2 /Fo$@ %s\r
59 \r
60 obj\irc.obj:  irc.cpp         $(HEADERS)\r
61     cl $(CFLAGS) /Fo$@ %s\r
62 \r
63 obj\rpc.obj:  rpc.cpp         $(HEADERS)\r
64     cl $(CFLAGS) /Fo$@ %s\r
65 \r
66 obj\ui.res: ui.rc  rc/bitcoin.ico rc/check.ico rc/send16.bmp rc/send16mask.bmp rc/send16masknoshadow.bmp rc/send20.bmp rc/send20mask.bmp rc/addressbook16.bmp rc/addressbook16mask.bmp rc/addressbook20.bmp rc/addressbook20mask.bmp\r
67     rc $(INCLUDEPATHS) $(WXDEFS) /Fo$@ %s\r
68 \r
69 \r
70 \r
71 OBJS=obj\util.obj obj\script.obj obj\db.obj obj\net.obj obj\main.obj obj\market.obj \\r
72     obj\ui.obj obj\uibase.obj obj\sha.obj obj\irc.obj obj\rpc.obj \\r
73     obj\ui.res\r
74 \r
75 bitcoin.exe: $(OBJS)\r
76     -kill /f bitcoin.exe & sleep 1\r
77     link /nologo /DEBUG /SUBSYSTEM:WINDOWS /OUT:$@ $(LIBPATHS) $** $(LIBS)\r
78 \r
79 clean:\r
80     -del /Q obj\*\r
81     -del *.ilk\r
82     -del *.pdb\r