bzip2/makefile.msc

83 lines
2.3 KiB
Plaintext

# Makefile for Microsoft Visual Studio 2013 and later.
# 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 -DBZ_LCCWIN32 -MD -Ox -D_FILE_OFFSET_BITS=64 -nologo
RC=rc
OBJS= blocksort.obj \
huffman.obj \
crctable.obj \
randtable.obj \
compress.obj \
decompress.obj \
bzlib.obj
all: dll lib bzip2 test
bzip2: dll bzip2.res bzip2recover.res
$(CC) $(CFLAGS) /Febzip2 bzip2.c bz2-1.lib setargv.obj bzip2.res
$(CC) $(CFLAGS) /Febzip2recover bzip2recover.c bzip2recover.res
dll: $(OBJS) libbz2.def bz2-1.res
link /dll /implib:bz2-1.lib /out:bz2-1.dll /def:libbz2.def $(OBJS) bz2-1.res
lib: $(OBJS)
lib /out:bz2-static.lib $(OBJS)
bzip2.res:
$(RC) /fobzip2.res /d BZIP2 version.rc
bzip2recover.res:
$(RC) /fobzip2recover.res /d BZIP2RECOVER version.rc
bz2-1.res:
$(RC) /fobz2-1.res /d BZ21DLL version.rc
test: bzip2
type tests\words1
.\\bzip2 -1 < tests\sample1.ref > tests\sample1.rb2
.\\bzip2 -2 < tests\sample2.ref > tests\sample2.rb2
.\\bzip2 -3 < tests\sample3.ref > tests\sample3.rb2
.\\bzip2 -d < tests\sample1.bz2 > tests\sample1.tst
.\\bzip2 -d < tests\sample2.bz2 > tests\sample2.tst
.\\bzip2 -ds < tests\sample3.bz2 > tests\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 tests\sample1.bz2 tests\sample1.rb2
fc tests\sample2.bz2 tests\sample2.rb2
fc tests\sample3.bz2 tests\sample3.rb2
fc tests\sample1.tst tests\sample1.ref
fc tests\sample2.tst tests\sample2.ref
fc tests\sample3.tst tests\sample3.ref
clean:
del *.obj
del bz2-1.dll
del bz2-1.exp
del bz2-1.lib
del bz2-1.res
del bz2-static.lib
del bzip2.exe
del bzip2.res
del bzip2recover.exe
del bzip2recover.res
del tests\sample1.rb2
del tests\sample2.rb2
del tests\sample3.rb2
del tests\sample1.tst
del tests\sample2.tst
del tests\sample3.tst
.c.obj:
$(CC) $(CFLAGS) -c $*.c /Fe$*.obj