|
1
|
# Makefile for zlib. Modified for djgpp v2.0 by F. J. Donahoe, 3/15/96. |
|
2
|
# Copyright (C) 1995-1998 Jean-loup Gailly. |
|
3
|
# For conditions of distribution and use, see copyright notice in zlib.h |
|
4
|
|
|
5
|
# To compile, or to compile and test, type: |
|
6
|
# |
|
7
|
# make -fmakefile.dj2; make test -fmakefile.dj2 |
|
8
|
# |
|
9
|
# To install libz.a, zconf.h and zlib.h in the djgpp directories, type: |
|
10
|
# |
|
11
|
# make install -fmakefile.dj2 |
|
12
|
# |
|
13
|
# after first defining LIBRARY_PATH and INCLUDE_PATH in djgpp.env as |
|
14
|
# in the sample below if the pattern of the DJGPP distribution is to |
|
15
|
# be followed. Remember that, while <sp>'es around <=> are ignored in |
|
16
|
# makefiles, they are *not* in batch files or in djgpp.env. |
|
17
|
# - - - - - |
|
18
|
# [make] |
|
19
|
# INCLUDE_PATH=%\>;INCLUDE_PATH%%\DJDIR%\include |
|
20
|
# LIBRARY_PATH=%\>;LIBRARY_PATH%%\DJDIR%\lib |
|
21
|
# BUTT=-m486 |
|
22
|
# - - - - - |
|
23
|
# Alternately, these variables may be defined below, overriding the values |
|
24
|
# in djgpp.env, as |
|
25
|
# INCLUDE_PATH=c:\usr\include |
|
26
|
# LIBRARY_PATH=c:\usr\lib |
|
27
|
|
|
28
|
CC=gcc |
|
29
|
|
|
30
|
#CFLAGS=-MMD -O |
|
31
|
#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 |
|
32
|
#CFLAGS=-MMD -g -DZLIB_DEBUG |
|
33
|
CFLAGS=-MMD -O3 $(BUTT) -Wall -Wwrite-strings -Wpointer-arith \ |
|
34
|
-Wstrict-prototypes -Wmissing-prototypes |
|
35
|
|
|
36
|
# If cp.exe is available, replace "copy /Y" with "cp -fp" . |
|
37
|
CP=copy /Y |
|
38
|
# If gnu install.exe is available, replace $(CP) with ginstall. |
|
39
|
INSTALL=$(CP) |
|
40
|
# The default value of RM is "rm -f." If "rm.exe" is found, comment out: |
|
41
|
RM=del |
|
42
|
LDLIBS=-L. -lz |
|
43
|
LD=$(CC) -s -o |
|
44
|
LDSHARED=$(CC) |
|
45
|
|
|
46
|
INCL=zlib.h zconf.h |
|
47
|
LIBS=libz.a |
|
48
|
|
|
49
|
AR=ar rcs |
|
50
|
|
|
51
|
prefix=/usr/local |
|
52
|
exec_prefix = $(prefix) |
|
53
|
|
|
54
|
OBJS = adler32.o compress.o crc32.o gzclose.o gzlib.o gzread.o gzwrite.o \ |
|
55
|
uncompr.o deflate.o trees.o zutil.o inflate.o infback.o inftrees.o inffast.o |
|
56
|
|
|
57
|
OBJA = |
|
58
|
# to use the asm code: make OBJA=match.o |
|
59
|
|
|
60
|
TEST_OBJS = example.o minigzip.o |
|
61
|
|
|
62
|
all: example.exe minigzip.exe |
|
63
|
|
|
64
|
check: test |
|
65
|
test: all |
|
66
|
./example |
|
67
|
echo hello world | .\minigzip | .\minigzip -d |
|
68
|
|
|
69
|
%.o : %.c |
|
70
|
$(CC) $(CFLAGS) -c $< -o $@ |
|
71
|
|
|
72
|
libz.a: $(OBJS) $(OBJA) |
|
73
|
$(AR) $@ $(OBJS) $(OBJA) |
|
74
|
|
|
75
|
%.exe : %.o $(LIBS) |
|
76
|
$(LD) $@ $< $(LDLIBS) |
|
77
|
|
|
78
|
# INCLUDE_PATH and LIBRARY_PATH were set for [make] in djgpp.env . |
|
79
|
|
|
80
|
.PHONY : uninstall clean |
|
81
|
|
|
82
|
install: $(INCL) $(LIBS) |
|
83
|
-@if not exist $(INCLUDE_PATH)\nul mkdir $(INCLUDE_PATH) |
|
84
|
-@if not exist $(LIBRARY_PATH)\nul mkdir $(LIBRARY_PATH) |
|
85
|
$(INSTALL) zlib.h $(INCLUDE_PATH) |
|
86
|
$(INSTALL) zconf.h $(INCLUDE_PATH) |
|
87
|
$(INSTALL) libz.a $(LIBRARY_PATH) |
|
88
|
|
|
89
|
uninstall: |
|
90
|
$(RM) $(INCLUDE_PATH)\zlib.h |
|
91
|
$(RM) $(INCLUDE_PATH)\zconf.h |
|
92
|
$(RM) $(LIBRARY_PATH)\libz.a |
|
93
|
|
|
94
|
clean: |
|
95
|
$(RM) *.d |
|
96
|
$(RM) *.o |
|
97
|
$(RM) *.exe |
|
98
|
$(RM) libz.a |
|
99
|
$(RM) foo.gz |
|
100
|
|
|
101
|
DEPS := $(wildcard *.d) |
|
102
|
ifneq ($(DEPS),) |
|
103
|
include $(DEPS) |
|
104
|
endif |
|
105
|
|