libdeflate/Makefile.msc
Eric Biggers f2c3a5b4e9 Various reorganization and cleanups
* Bring in common headers and program code from xpack project
* Move program code to programs/
* Move library code to lib/
* GNU89 and MSVC2010 compatibility
* Other changes
2016-05-21 15:38:15 -05:00

57 lines
1.1 KiB
Makefile

#
# Makefile for the Microsoft toolchain
#
# Usage:
# nmake /f Makefile.msc
#
CC = cl
LD = link
AR = lib
CFLAGS = /MD /O2 -I. -Icommon
LDFLAGS =
STATICLIB = libdeflatestatic.lib
SHAREDLIB = libdeflate.dll
IMPLIB = libdeflate.lib
LIB_OBJ = lib/aligned_malloc.obj \
lib/adler32.obj \
lib/crc32.obj \
lib/deflate_compress.obj \
lib/deflate_decompress.obj \
lib/gzip_compress.obj \
lib/gzip_decompress.obj \
lib/x86_cpu_features.obj \
lib/zlib_compress.obj \
lib/zlib_decompress.obj
PROG_COMMON_OBJ = programs/prog_util.obj \
programs/tgetopt.obj \
$(STATICLIB)
PROG_CFLAGS = $(CFLAGS) -Iprograms
all: $(STATICLIB) $(SHAREDLIB) $(IMPLIB) gzip.exe gunzip.exe
.c.obj:
$(CC) -c /Fo$@ $(CFLAGS) $**
$(STATICLIB): $(LIB_OBJ)
$(AR) $(ARFLAGS) -out:$@ $(LIB_OBJ)
$(SHAREDLIB): $(LIB_OBJ)
$(LD) $(LDFLAGS) -out:$@ -dll -implib:$(IMPLIB) $(LIB_OBJ)
$(IMPLIB): $(SHAREDLIB)
gzip.exe:programs/gzip.obj $(PROG_COMMON_OBJ)
$(LD) $(LDFLAGS) -out:$@ $**
gunzip.exe:gzip.exe
copy $** $@
clean:
-del *.dll *.exe *.exp libdeflate.lib libdeflatestatic.lib gzip.lib \
lib\*.obj programs\*.obj 2>nul