# Makefile for Microsoft Visual C++ 6.0
# usage: nmake -f makefile.msc
# K.M. Syring (syring@gsf.de)
# Fixed up by JRS for bzip2-0.9.5d release.

CC=cl
CFLAGS= -DWIN32 -MD -Ox -D_FILE_OFFSET_BITS=64 -nologo

OBJS= blocksort.obj  \
      huffman.obj    \
      crctable.obj   \
      randtable.obj  \
      compress.obj   \
      decompress.obj \
      bzlib.obj

all: lib bzip2 test

bzip2: lib
	$(CC) $(CFLAGS) -o bzip2 bzip2.c libbz2.lib setargv.obj
	$(CC) $(CFLAGS) -o bzip2recover bzip2recover.c

lib: $(OBJS)
	lib /out:libbz2.lib $(OBJS)

test: bzip2
	type words1
	.\\bzip2 -1  < sample1.ref > sample1.rb2
	.\\bzip2 -2  < sample2.ref > sample2.rb2
	.\\bzip2 -3  < sample3.ref > sample3.rb2
	.\\bzip2 -d  < sample1.bz2 > sample1.tst
	.\\bzip2 -d  < sample2.bz2 > sample2.tst
	.\\bzip2 -ds < sample3.bz2 > sample3.tst
	@echo All six of the fc's should find no differences.
	@echo If fc finds an error on sample3.bz2, this could be
	@echo because WinZip's 'TAR file smart CR/LF conversion'
	@echo is too clever for its own good.  Disable this option.
	@echo The correct size for sample3.ref is 120,244.  If it
	@echo is 150,251, WinZip has messed it up.
	fc sample1.bz2 sample1.rb2 
	fc sample2.bz2 sample2.rb2
	fc sample3.bz2 sample3.rb2
	fc sample1.tst sample1.ref
	fc sample2.tst sample2.ref
	fc sample3.tst sample3.ref



clean: 
	del *.obj
	del libbz2.lib 
	del bzip2.exe
	del bzip2recover.exe
	del sample1.rb2 
	del sample2.rb2 
	del sample3.rb2
	del sample1.tst 
	del sample2.tst
	del sample3.tst

.c.obj: 
	$(CC) $(CFLAGS) -c $*.c -o $*.obj

