mirror of
https://github.com/cuberite/libdeflate.git
synced 2025-08-03 09:46:04 -04:00
66 lines
1.3 KiB
Makefile
66 lines
1.3 KiB
Makefile
#
|
|
# Makefile for the Microsoft toolchain
|
|
#
|
|
# Usage:
|
|
# nmake /f Makefile.msc
|
|
#
|
|
|
|
.SUFFIXES: .c .obj .dllobj
|
|
|
|
CC = cl
|
|
LD = link
|
|
AR = lib
|
|
CFLAGS = /MD /O2 -I.
|
|
LDFLAGS =
|
|
|
|
STATIC_LIB = libdeflatestatic.lib
|
|
SHARED_LIB = libdeflate.dll
|
|
IMPORT_LIB = libdeflate.lib
|
|
|
|
STATIC_LIB_OBJ = \
|
|
lib/adler32.obj \
|
|
lib/crc32.obj \
|
|
lib/deflate_compress.obj \
|
|
lib/deflate_decompress.obj \
|
|
lib/gzip_compress.obj \
|
|
lib/gzip_decompress.obj \
|
|
lib/utils.obj \
|
|
lib/x86/cpu_features.obj \
|
|
lib/zlib_compress.obj \
|
|
lib/zlib_decompress.obj
|
|
|
|
SHARED_LIB_OBJ = $(STATIC_LIB_OBJ:.obj=.dllobj)
|
|
|
|
PROG_COMMON_OBJ = programs/prog_util.obj \
|
|
programs/tgetopt.obj \
|
|
$(STATIC_LIB)
|
|
|
|
PROG_CFLAGS = $(CFLAGS) -Iprograms
|
|
|
|
all: $(STATIC_LIB) $(SHARED_LIB) $(IMPORT_LIB) gzip.exe gunzip.exe
|
|
|
|
.c.obj:
|
|
$(CC) -c /Fo$@ $(CFLAGS) $**
|
|
|
|
.c.dllobj:
|
|
$(CC) -c /Fo$@ $(CFLAGS) /DLIBDEFLATE_DLL $**
|
|
|
|
$(STATIC_LIB): $(STATIC_LIB_OBJ)
|
|
$(AR) $(ARFLAGS) -out:$@ $(STATIC_LIB_OBJ)
|
|
|
|
$(SHARED_LIB): $(SHARED_LIB_OBJ)
|
|
$(LD) $(LDFLAGS) -out:$@ -dll -implib:$(IMPORT_LIB) $(SHARED_LIB_OBJ)
|
|
|
|
$(IMPORT_LIB): $(SHARED_LIB)
|
|
|
|
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 lib\x86\*.obj lib\*.dllobj lib\x86\*.dllobj \
|
|
programs\*.obj 2>nul
|