2 |
- |
1 |
# Copyright (C) 1995-2004 artofcode LLC. All rights reserved.
|
|
|
2 |
#
|
|
|
3 |
# This software is provided AS-IS with no warranty, either express or
|
|
|
4 |
# implied.
|
|
|
5 |
#
|
|
|
6 |
# This software is distributed under license and may not be copied,
|
|
|
7 |
# modified or distributed except as expressly authorized under the terms
|
|
|
8 |
# of the license contained in the file LICENSE in this distribution.
|
|
|
9 |
#
|
|
|
10 |
# For more information about licensing, please refer to
|
|
|
11 |
# http://www.ghostscript.com/licensing/. For information on
|
|
|
12 |
# commercial licensing, go to http://www.artifex.com/licensing/ or
|
|
|
13 |
# contact Artifex Software, Inc., 101 Lucas Valley Road #110,
|
|
|
14 |
# San Rafael, CA 94903, U.S.A., +1(415)492-9861.
|
|
|
15 |
|
|
|
16 |
# $Id: zlib.mak,v 1.10 2005/03/08 07:40:45 giles Exp $
|
|
|
17 |
# makefile for zlib library code.
|
|
|
18 |
# Users of this makefile must define the following:
|
|
|
19 |
# GSSRCDIR - the GS library source directory
|
|
|
20 |
# ZSRCDIR - the source directory
|
|
|
21 |
# ZGENDIR - the generated intermediate file directory
|
|
|
22 |
# ZOBJDIR - the object directory
|
|
|
23 |
# SHARE_ZLIB - 0 to compile zlib, 1 to share
|
|
|
24 |
# ZLIB_NAME - if SHARE_ZLIB=1, the name of the shared library
|
|
|
25 |
|
|
|
26 |
# This partial makefile compiles the zlib library for use in Ghostscript.
|
|
|
27 |
# You can get the source code for this library from:
|
|
|
28 |
# http://www.gzip.org/zlib/
|
|
|
29 |
# http://www.libpng.org/pub/png/src/
|
|
|
30 |
# zlib-#.#.#.tar.gz or zlib###.zip
|
|
|
31 |
# Please see Ghostscript's `Make.htm' file for instructions about how to
|
|
|
32 |
# unpack these archives.
|
|
|
33 |
#
|
|
|
34 |
# When each version of Ghostscript is released, we copy the associated
|
|
|
35 |
# version of the zlib library to
|
|
|
36 |
# ftp://ftp.cs.wisc.edu/ghost/3rdparty/
|
|
|
37 |
# for more convenient access.
|
|
|
38 |
#
|
|
|
39 |
# This makefile is known to work with zlib source version 1.2.1.
|
|
|
40 |
# It will only work with earlier versions (1.1.4) when SHARE_ZLIB=1.
|
|
|
41 |
# Note that there are obscure bugs in zlib versions before 1.1.3 that
|
|
|
42 |
# may cause the FlateDecode filter to produce an occasional ioerror
|
|
|
43 |
# and there is a serious security problem with 1.1.3: we strongly
|
|
|
44 |
# recommend using version 1.1.4 or later.
|
|
|
45 |
|
|
|
46 |
ZSRC=$(ZSRCDIR)$(D)
|
|
|
47 |
ZGEN=$(ZGENDIR)$(D)
|
|
|
48 |
ZOBJ=$(ZOBJDIR)$(D)
|
|
|
49 |
ZO_=$(O_)$(ZOBJ)
|
|
|
50 |
|
|
|
51 |
# We need D_, _D_, and _D because the OpenVMS compiler uses different
|
|
|
52 |
# syntax from other compilers.
|
|
|
53 |
# ZI_ and ZF_ are defined in gs.mak.
|
|
|
54 |
ZCCFLAGS=$(I_)$(ZI_)$(_I) $(ZF_) $(D_)verbose$(_D_)-1$(_D)
|
|
|
55 |
ZCC=$(CC_) $(ZCCFLAGS)
|
|
|
56 |
|
|
|
57 |
# Define the name of this makefile.
|
|
|
58 |
ZLIB_MAK=$(GLSRC)zlib.mak
|
|
|
59 |
|
|
|
60 |
z.clean : z.config-clean z.clean-not-config-clean
|
|
|
61 |
|
|
|
62 |
### WRONG. MUST DELETE OBJ AND GEN FILES SELECTIVELY.
|
|
|
63 |
z.clean-not-config-clean :
|
|
|
64 |
$(RM_) $(ZOBJ)*.$(OBJ)
|
|
|
65 |
|
|
|
66 |
z.config-clean :
|
|
|
67 |
$(RMN_) $(ZGEN)zlib*.dev $(ZGEN)crc32*.dev
|
|
|
68 |
|
|
|
69 |
ZDEP=$(AK)
|
|
|
70 |
|
|
|
71 |
# Code common to compression and decompression.
|
|
|
72 |
|
|
|
73 |
zlibc_=$(ZOBJ)zutil.$(OBJ)
|
|
|
74 |
$(ZGEN)zlibc.dev : $(ZLIB_MAK) $(ECHOGS_XE) $(zlibc_)
|
|
|
75 |
$(SETMOD) $(ZGEN)zlibc $(zlibc_)
|
|
|
76 |
|
|
|
77 |
$(ZOBJ)zutil.$(OBJ) : $(ZSRC)zutil.c $(ZDEP)
|
|
|
78 |
$(ZCC) $(ZO_)zutil.$(OBJ) $(C_) $(ZSRC)zutil.c
|
|
|
79 |
|
|
|
80 |
# Encoding (compression) code.
|
|
|
81 |
|
|
|
82 |
$(ZGEN)zlibe.dev : $(TOP_MAKEFILES) $(ZGEN)zlibe_$(SHARE_ZLIB).dev
|
|
|
83 |
$(CP_) $(ZGEN)zlibe_$(SHARE_ZLIB).dev $(ZGEN)zlibe.dev
|
|
|
84 |
|
|
|
85 |
$(ZGEN)zlibe_1.dev : $(TOP_MAKEFILES) $(ZLIB_MAK) $(ECHOGS_XE)
|
|
|
86 |
$(SETMOD) $(ZGEN)zlibe_1 -lib $(ZLIB_NAME)
|
|
|
87 |
|
|
|
88 |
zlibe_=$(ZOBJ)adler32.$(OBJ) $(ZOBJ)deflate.$(OBJ) \
|
|
|
89 |
$(ZOBJ)compress.$(OBJ) $(ZOBJ)trees.$(OBJ) $(ZOBJ)crc32.$(OBJ)
|
|
|
90 |
$(ZGEN)zlibe_0.dev : $(ZLIB_MAK) $(ECHOGS_XE) $(ZGEN)zlibc.dev $(zlibe_)
|
|
|
91 |
$(SETMOD) $(ZGEN)zlibe_0 $(zlibe_)
|
|
|
92 |
$(ADDMOD) $(ZGEN)zlibe_0 -include $(ZGEN)zlibc.dev
|
|
|
93 |
|
|
|
94 |
$(ZOBJ)adler32.$(OBJ) : $(ZSRC)adler32.c $(ZDEP)
|
|
|
95 |
$(ZCC) $(ZO_)adler32.$(OBJ) $(C_) $(ZSRC)adler32.c
|
|
|
96 |
|
|
|
97 |
$(ZOBJ)deflate.$(OBJ) : $(ZSRC)deflate.c $(ZDEP)
|
|
|
98 |
$(ZCC) $(ZO_)deflate.$(OBJ) $(C_) $(ZSRC)deflate.c
|
|
|
99 |
|
|
|
100 |
# new file in zlib 1.2.x
|
|
|
101 |
$(ZOBJ)compress.$(OBJ) : $(ZSRC)compress.c $(ZDEP)
|
|
|
102 |
$(ZCC) $(ZO_)compress.$(OBJ) $(C_) $(ZSRC)compress.c
|
|
|
103 |
|
|
|
104 |
$(ZOBJ)trees.$(OBJ) : $(ZSRC)trees.c $(ZDEP)
|
|
|
105 |
$(ZCC) $(ZO_)trees.$(OBJ) $(C_) $(ZSRC)trees.c
|
|
|
106 |
|
|
|
107 |
# The zlib filters per se don't need crc32, but libpng versions starting
|
|
|
108 |
# with 0.90 do.
|
|
|
109 |
|
|
|
110 |
$(ZGEN)crc32.dev : $(TOP_MAKEFILES) $(ZGEN)crc32_$(SHARE_ZLIB).dev
|
|
|
111 |
$(CP_) $(ZGEN)crc32_$(SHARE_ZLIB).dev $(ZGEN)crc32.dev
|
|
|
112 |
|
|
|
113 |
$(ZGEN)crc32_1.dev : $(TOP_MAKEFILES) $(ZLIB_MAK) $(ECHOGS_XE)
|
|
|
114 |
$(SETMOD) $(ZGEN)crc32_1 -lib $(ZLIB_NAME)
|
|
|
115 |
|
|
|
116 |
$(ZGEN)crc32_0.dev : $(ZLIB_MAK) $(ECHOGS_XE) $(ZOBJ)crc32.$(OBJ)
|
|
|
117 |
$(SETMOD) $(ZGEN)crc32_0 $(ZOBJ)crc32.$(OBJ)
|
|
|
118 |
|
|
|
119 |
# We have to compile crc32 without warnings, because it defines 32-bit
|
|
|
120 |
# constants that produces gcc warnings with -Wtraditional.
|
|
|
121 |
$(ZOBJ)crc32.$(OBJ) : $(ZSRC)crc32.c $(ZDEP)
|
|
|
122 |
$(CC_NO_WARN) $(ZCCFLAGS) $(ZO_)crc32.$(OBJ) $(C_) $(ZSRC)crc32.c
|
|
|
123 |
|
|
|
124 |
# Decoding (decompression) code.
|
|
|
125 |
|
|
|
126 |
$(ZGEN)zlibd.dev : $(TOP_MAKEFILES) $(ZGEN)zlibd_$(SHARE_ZLIB).dev
|
|
|
127 |
$(CP_) $(ZGEN)zlibd_$(SHARE_ZLIB).dev $(ZGEN)zlibd.dev
|
|
|
128 |
|
|
|
129 |
$(ZGEN)zlibd_1.dev : $(TOP_MAKEFILES) $(ZLIB_MAK) $(ECHOGS_XE)
|
|
|
130 |
$(SETMOD) $(ZGEN)zlibd_1 -lib $(ZLIB_NAME)
|
|
|
131 |
|
|
|
132 |
# zlibd[12]_ list the decompression source files for zlib 1.4.x
|
|
|
133 |
zlibd1_=$(ZOBJ)infblock.$(OBJ) $(ZOBJ)infcodes.$(OBJ) $(ZOBJ)inffast.$(OBJ)
|
|
|
134 |
zlibd2_=$(ZOBJ)inflate.$(OBJ) $(ZOBJ)inftrees.$(OBJ) $(ZOBJ)infutil.$(OBJ) $(ZOBJ)crc32.$(OBJ)
|
|
|
135 |
|
|
|
136 |
# shorter list of files for zlib 1.2.x
|
|
|
137 |
zlibd_=$(ZOBJ)inffast.$(OBJ) $(ZOBJ)inflate.$(OBJ) $(ZOBJ)inftrees.$(OBJ) $(ZOBJ)uncompr.$(OBJ)
|
|
|
138 |
|
|
|
139 |
|
|
|
140 |
$(ZGEN)zlibd_0.dev : $(ZLIB_MAK) $(ECHOGS_XE) $(ZGEN)zlibc.dev $(zlibd_)
|
|
|
141 |
$(SETMOD) $(ZGEN)zlibd_0 $(zlibd_)
|
|
|
142 |
$(ADDMOD) $(ZGEN)zlibd_0 -include $(ZGEN)zlibc.dev
|
|
|
143 |
|
|
|
144 |
$(ZOBJ)infblock.$(OBJ) : $(ZSRC)infblock.c $(ZDEP)
|
|
|
145 |
$(ZCC) $(ZO_)infblock.$(OBJ) $(C_) $(ZSRC)infblock.c
|
|
|
146 |
|
|
|
147 |
$(ZOBJ)infcodes.$(OBJ) : $(ZSRC)infcodes.c $(ZDEP)
|
|
|
148 |
$(ZCC) $(ZO_)infcodes.$(OBJ) $(C_) $(ZSRC)infcodes.c
|
|
|
149 |
|
|
|
150 |
$(ZOBJ)inffast.$(OBJ) : $(ZSRC)inffast.c $(ZDEP)
|
|
|
151 |
$(ZCC) $(ZO_)inffast.$(OBJ) $(C_) $(ZSRC)inffast.c
|
|
|
152 |
|
|
|
153 |
$(ZOBJ)inflate.$(OBJ) : $(ZSRC)inflate.c $(ZDEP)
|
|
|
154 |
$(ZCC) $(ZO_)inflate.$(OBJ) $(C_) $(ZSRC)inflate.c
|
|
|
155 |
|
|
|
156 |
$(ZOBJ)inftrees.$(OBJ) : $(ZSRC)inftrees.c $(ZDEP)
|
|
|
157 |
$(ZCC) $(ZO_)inftrees.$(OBJ) $(C_) $(ZSRC)inftrees.c
|
|
|
158 |
|
|
|
159 |
$(ZOBJ)infutil.$(OBJ) : $(ZSRC)infutil.c $(ZDEP)
|
|
|
160 |
$(ZCC) $(ZO_)infutil.$(OBJ) $(C_) $(ZSRC)infutil.c
|
|
|
161 |
|
|
|
162 |
# new file in zlib 1.2.x
|
|
|
163 |
$(ZOBJ)uncompr.$(OBJ) : $(ZSRC)uncompr.c $(ZDEP)
|
|
|
164 |
$(ZCC) $(ZO_)uncompr.$(OBJ) $(C_) $(ZSRC)uncompr.c
|
|
|
165 |
|