# # C source for GNU CHESS # # Revision: 1990-09-30 # # Modified by Daryl Baker for use in MS WINDOWS environment # # This file is part of CHESS. # # CHESS is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY. No author or distributor accepts responsibility to anyone for # the consequences of using it or for whether it serves any particular # purpose or works at all, unless he says so in writing. Refer to the CHESS # General Public License for full details. # # Everyone is granted permission to copy, modify and redistribute CHESS, but # only under the conditions described in the CHESS General Public License. # A copy of this license is supposed to have been given to you along with # CHESS so you can know your rights and responsibilities. It should be in a # file named COPYING. Among other things, the copyright notice and this # notice must be preserved on all copies. # # PROJ = chess PROJFILE = chess.mak CFLAGS_G = /AM /W4 /G2sw /Zp /BATCH /nologo LINKER = link LRF = echo > NUL RC = rc IMPLIB = implib LFLAGS_G = /BATCH /nologo /align:16 /map LFLAGS_R = /NOF /NOP MAPFILE_R = chess.map CC = cl CFLAGS_D = /Od /Zi /Gi$(PROJ).mdt CFLAGS_R = /Osge LLIBS_R = /NOD:MLIBCE MLIBCEW LLIBS_G = LIBW.LIB ASM = masm AFLAGS_G = /Mx /T DEF_FILE = CHESS.DEF OBJS = CHESS.obj INIT.obj BOARD.obj ABOUT.obj PIECE.obj \ HITTEST.obj COLOR.obj TIMECNT.obj SEARCH.obj INITIALI.obj \ EVAL.obj GLOBALS.obj DSP.obj MSWDSP.obj BOOK.obj CREATE.obj \ SAVEOPEN.obj NUMDLG.obj INITMENU.obj REVIEW.obj STATS.obj \ TEST.obj PROMOTE.obj RT_OBJS = VERSION.obj RESS = chess.res BMPS = king.bmp kingm.bmp kingo.bmp pawn.bmp pawno.bmp pawnm.bmp \ rook.bmp rooko.bmp rookm.bmp knight.bmp knightm.bmp knighto.bmp \ bishop.bmp bishopm.bmp bishopo.bmp queen.bmp queenm.bmp queeno.bmp all: $(PROJ).exe .SILIENT: .SUFFIXES: .rc .res .c .obj CHESS.RES : chess.rc $(BMPS) color.dlg chess.ico timecnt.dlg saveopen.dlg \ getnum.dlg review.dlg about.dlg stats.dlg test.dlg promote.dlg ABOUT.obj : ABOUT.C BOARD.obj : BOARD.C defs.h BOOK.obj : BOOK.C gnuchess.h defs.h chess.h CHESS.obj : CHESS.C gnuchess.h defs.h chess.h saveopen.h color.h COLOR.obj : COLOR.C chess.h color.h CREATE.obj : CREATE.C defs.h chess.h DSP.obj : DSP.C gnuchess.h defs.h chess.h EVAL.obj : EVAL.C gnuchess.h defs.h GLOBALS.obj : GLOBALS.C gnuchess.h HITTEST.obj : HITTEST.C defs.h INIT.obj : INIT.C INITIALI.obj : INITIALI.C gnuchess.h defs.h INITMENU.obj : INITMENU.C gnuchess.h chess.h MSWDSP.obj : MSWDSP.C gnuchess.h chess.h defs.h stats.h NUMDLG.obj : NUMDLG.C chess.h PIECE.obj : PIECE.C chess.h defs.h PROMOTE.obj : PROMOTE.C chess.h REVIEW.obj : REVIEW.C gnuchess.h chess.h defs.h SAVEOPEN.obj : SAVEOPEN.C saveopen.h SEARCH.obj : SEARCH.C gnuchess.h defs.h STATS.obj : STATS.C gnuchess.h stats.h TEST.obj : TEST.C gnuchess.h chess.h defs.h TIMECNT.obj : TIMECNT.C timecnt.h chess.h # # Code to generate new time stamp when any module updated # #makever.exe: makever.c # cl /nologo makever.c VERSION.obj: VERSION.c #VERSION.c: $(OBJS) $(RESS) $(BMPS) makever.exe # makever >version.c chess101.zip: distexe: chess.exe readme.txt gnuchess.boo copying -del chessexe.zip pkzip -a chess101 readme.txt chess.exe gnuchess.boo copying distsrc: chess.exe chess101.zip readme.txt chess.mak -del winchess.zip pkzip -a winchess readme.txt chess.exe *.boo *.h *.c *.bmp *.def *.rc *.dlg *.mak copying clean: -del *.obj -del *.bak -del *.res -del *.err $(PROJ).exe : $(DEF_FILE) $(OBJS) $(RT_OBJS) $(RESS) $(LRF) @<<$(PROJ).lrf $(LFLAGS_G) $(LFLAGS_R) $(RT_OBJS: = +^ ) $(OBJS: = +^ ) $@ $(MAPFILE_R) $(LLIBS_G: = +^ ) + $(LLIBS_R: = +^ ) + $(LIBS: = +^ ) $(DEF_FILE) ; << $(LINKER) @$(PROJ).lrf $(RC) $(RESS) $@ .c.obj : $(CC) /c $(CFLAGS_G) $(CFLAGS_R) /Fo$@ $< .rc.res : $(RC) /r $<