8 # /DNDEBUG (DEBUG) builds release (debug) version of Bonanza.
9 # /DMINIMUM disables some auxiliary functions that are not necessary to
10 # play a game, e.g., book composition and optimization of
11 # evaluation function.
12 # /DTLP enables thread-level parallel search.
13 # /DMPV enables multi-PV search.
14 # /DCSA_LAN enables bonanza to talk CSA Shogi TCP/IP protcol.
15 # /DMNJ_LAN enables a client-mode of distributed computing.
16 # /DDEKUNOBOU enables dekunobou interface (avairable only for Windows).
17 # /DCSASHOGI builds an engine for CSA Shogi (avairable only for
19 # /DNO_LOGGING suppresses dumping log files.
21 FLAG = /DNDEBUG /DMINIMUM /DTLP /DMPV /DCSASHOGI /DNO_LOGGING
23 OBJS = data.obj main.obj io.obj proce.obj ini.obj utility.obj attack.obj\
24 gencap.obj gennocap.obj gendrop.obj genevasn.obj mate3.obj genchk.obj\
25 movgenex.obj makemove.obj unmake.obj time.obj csa.obj valid.obj\
26 next.obj search.obj searchr.obj book.obj iterate.obj quiesrch.obj\
27 swap.obj evaluate.obj root.obj hash.obj mate1ply.obj bitop.obj\
28 rand.obj learn1.obj learn2.obj evaldiff.obj problem.obj ponder.obj\
29 thread.obj dek.obj sckt.obj debug.obj phash.obj
32 $(MAKE) -f Makefile.vs bonanza.exe CC="cl" LD="link"\
33 CFLAGS="$(FLAG) /MT /W4 /nologo /O2 /Ob2 /Gr /GS- /GL"\
34 LDFLAGS="/NOLOGO /out:bonanza.exe /LTCG"
37 $(MAKE) -f Makefile.vs bonanza.exe CC="icl" LD="icl"\
38 CFLAGS="/nologo $(FLAG) /Wall /O2 /Qipo /Gr"\
39 LDFLAGS="/nologo /Febonanza.exe"
41 bonanza.exe : $(OBJS) bonanza.res
42 $(LD) $(LDFLAGS) $(OBJS) bonanza.res User32.lib Ws2_32.lib
44 $(OBJS) : shogi.h param.h
46 bonanza.res : bonanza.rc bonanza.ico
47 rc /fobonanza.res bonanza.rc
50 $(CC) $(CFLAGS) /c $*.c