113 lines
2.8 KiB
Makefile
113 lines
2.8 KiB
Makefile
# Makefile for gzip
|
|
# Microsoft C 5.1 or 6.0.
|
|
|
|
# To use, do "make makefile.msc"
|
|
|
|
# WARNING: the small model is not supported. The compact model is used
|
|
# here. If you want to use the large model, add -D__LARGE__ to ASFLAGS
|
|
# Add -DSMALL_MEM or -DMEDIUM_MEM to CFLAGS if you wish to reduce the memory
|
|
# requirements. Add -DNO_ASM to CFLAGS and remove match.obj from OBJI if
|
|
# you do not have masm.
|
|
|
|
# ------------- Microsoft C 5.1 or 6.0 -------------
|
|
MODEL=-AC
|
|
FP=
|
|
CFLAGS=-Ox -nologo $(MODEL)
|
|
BFLAGS=-Oait -Gs -nologo $(MODEL)
|
|
# BFLAGS are the 'bug workaround' flags.
|
|
CC=cl
|
|
LD=link
|
|
LDFLAGS=/e/st:0x1000
|
|
# If you use lzexe as recommended, remove /e from LDFLAGS
|
|
AS=masm
|
|
# For MSC 6.0, use: AS=ml
|
|
ASFLAGS=-ml -t
|
|
# Add -DDYN_ALLOC to ASFLAGS if you have defined it in tailor.h or CFLAGS
|
|
LIB = c:\c51\lib
|
|
|
|
# ------------- Common declarations:
|
|
STRIP=rem
|
|
# If you don't have lzexe, get it (by ftp on wuarchive.wustl.edu
|
|
# in /mirrors/msdos/filutl/lzexe91e.zip). Then define:
|
|
#STRIP=lzexe
|
|
# Or if you've registered PKLITE, then define:
|
|
#STRIP=pklite
|
|
# This makes a big difference in .exe size (and possibly load time)
|
|
|
|
O=.obj
|
|
OBJA=match$(O) $(LIB)\setargv$(O)
|
|
ALLOCA=alloca$(O)
|
|
|
|
# ------------- Used by install rule
|
|
# set BIN to the directory you want to install the executables to
|
|
BIN = c:\bin
|
|
|
|
# variables
|
|
OBJ1 = gzip$(O) zip$(O) deflate$(O) trees$(O) bits$(O) unzip$(O) inflate$(O) \
|
|
util$(O)
|
|
OBJ2 = crypt$(O) lzw$(O) unlzw$(O) unpack$(O) getopt$(O) $(OBJA) $(ALLOCA)
|
|
|
|
gzip.obj: gzip.c gzip.h tailor.h crypt.h revision.h lzw.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
zip.obj: zip.c gzip.h tailor.h crypt.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
deflate.obj: deflate.c gzip.h tailor.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
trees.obj: trees.c gzip.h tailor.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
bits.obj: bits.c gzip.h tailor.h crypt.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
unzip.obj: unzip.c gzip.h tailor.h crypt.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
inflate.obj: inflate.c gzip.h tailor.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
util.obj: util.c gzip.h tailor.h crypt.h
|
|
$(CC) -c $(BFLAGS) $*.c
|
|
|
|
crypt.obj: crypt.c gzip.h tailor.h crypt.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
lzw.obj: lzw.c gzip.h tailor.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
unlzw.obj: unlzw.c gzip.h tailor.h lzw.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
unpack.obj: unpack.c gzip.h tailor.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
tailor.obj: tailor.c gzip.h tailor.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
getopt.obj: getopt.c getopt.h
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
alloca.obj: alloca.c
|
|
$(CC) -c $(CFLAGS) $*.c
|
|
|
|
match.obj: match.asm
|
|
$(AS) $(ASFLAGS) match;
|
|
|
|
# we must cut the command line to fit in the MS/DOS 128 byte limit:
|
|
gzip.exe: $(OBJ1) $(OBJ2)
|
|
echo $(OBJ1)+ > gzip.rsp
|
|
echo $(OBJ2); >> gzip.rsp
|
|
$(LD) $(LDFLAGS) @gzip.rsp
|
|
del gzip.rsp
|
|
$(STRIP) gzip.exe
|
|
|
|
install: gzip.exe
|
|
copy /b gzip.exe $(BIN)
|
|
copy /b gzip.exe $(BIN)\gunzip.exe
|
|
|
|
#clean:
|
|
# del *.obj
|
|
# del *.exe
|