Rev 6727 | Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
6725 | siemargl | 1 | # Makefile for UnZip, fUnZip and UnZipSFX for native Win32-Intel ports of gcc. |
2 | # Currently supported implementations: Cygnus/Win32 and MinGW32. |
||
3 | # |
||
4 | # First version: Cosmin Truta, Dec 1997. |
||
5 | # Last revision: Christian Spieler, 09-Aug-2008. |
||
6 | # |
||
7 | # To use, do "make -f win32/makefile.gcc". |
||
8 | |||
9 | # configuration switches supported: |
||
10 | # NOASM=1 disable assembler crc32 code, the generic C source code |
||
11 | # is used instead. |
||
12 | # NOCRC_OPT=1 disable "unfolding CRC tables" optimization. |
||
13 | # OPT_P6=1 add "modern gcc" tuning option for PentiumPro family CPU. |
||
14 | # USEBZ2=1 activate integrated compilation of bzip2 compression support, |
||
15 | # this requires the bzip2 sources present in the bzip2 subfolder. |
||
16 | # USEZLIB=1 replace internal deflate code by externally provided zlib. |
||
17 | # USE_POSIX=1 build posix-style binaries targeted for the CygWin unix |
||
18 | # emulation environment. |
||
19 | SDK_DIR:= $(abspath ../../../contrib/sdk) |
||
20 | NOASM=1 |
||
21 | CC_CPU_OPT=-march=pentium |
||
22 | |||
23 | ### Optional section |
||
24 | |||
25 | # The following options allow to override the default assembler code usage |
||
26 | ifdef NOASM |
||
27 | APPLY_ASMCRC=0 |
||
28 | endif |
||
29 | ifdef USEASM |
||
30 | APPLY_ASMCRC=1 |
||
31 | endif |
||
32 | |||
33 | # The external zlib library supplies its own crc32 implementation... |
||
34 | ifdef USEZLIB |
||
35 | APPLY_ASMCRC=0 |
||
36 | endif |
||
37 | |||
38 | # default is ASM CRC code (from .S source) for now... |
||
39 | ifndef APPLY_ASMCRC |
||
40 | APPLY_ASMCRC=1 |
||
41 | endif |
||
42 | |||
43 | # optional inclusion of bzip2 decompression |
||
44 | IZ_BZIP2 = bzip2 |
||
45 | ifdef USEBZ2 |
||
46 | INC_BZ2LIB = -I$(IZ_BZIP2) |
||
47 | LOCFLAGS = $(INC_BZ2LIB) -DUSE_BZIP2 |
||
48 | LD_BZ2LIB = -L$(IZ_BZIP2) -lbz2 |
||
49 | LIBBZIP2 = $(IZ_BZIP2)/libbz2.a |
||
50 | else |
||
51 | INC_BZ2LIB = |
||
52 | LOCFLAGS = |
||
53 | LD_BZ2LIB = |
||
54 | LIBBZIP2 = |
||
55 | endif |
||
56 | LIBBZIP2X = $(LIBBZIP2) |
||
57 | |||
58 | ifndef USEZLIB |
||
59 | |||
60 | # Apply the "CRC unfolding tables" optimization unless explicitly disabled. |
||
61 | # (This optimization might have negative effects on old CPU designs with a |
||
62 | # small first-level data cache.) |
||
63 | ifndef NOCRC_OPT |
||
64 | LOCFLAGS += -DIZ_CRCOPTIM_UNFOLDTBL |
||
65 | endif |
||
66 | |||
67 | # Optional nonstandard preprocessor flags (as -DUSE_ZLIB or -DUSE_SMITH_CODE) |
||
68 | # should be added to the environment via "set LOCAL_UNZIP=-DFOO" or added |
||
69 | # to the declaration of LOCFLAGS here: |
||
70 | ifneq ($(APPLY_ASMCRC),0) |
||
71 | LOCFLAGS += -DASM_CRC |
||
72 | endif |
||
73 | |||
74 | else # ifndef USEZLIB |
||
75 | |||
76 | LOCFLAGS += -DUSE_ZLIB |
||
77 | |||
78 | endif # ifndef USEZLIB ... else ... |
||
79 | |||
80 | # Finally, append additional externally supplied options. |
||
81 | LOCFLAGS += $(LOCAL_UNZIP) |
||
82 | |||
83 | # Some gcc distributions for Win32 (e.g. CygWin) try to emulate a POSIX- |
||
84 | # compatible (Unix-style) environment. This Makefile defaults to a |
||
85 | # "native Win32" build. To build POSIX-mode binaries, it is recommended |
||
86 | # to use the Makefile of the Unix port. However, by defining the variable |
||
87 | # "USE_POSIX", building binaries for the POSIX environment can be enabled |
||
88 | # here as well. |
||
89 | ifdef 0 |
||
90 | ifdef USE_POSIX |
||
91 | CC_ENVIR_OPT = -DUNIX -DFORCE_UNIX_OVER_WIN32 |
||
92 | else |
||
93 | CC_ENVIR_OPT = -DWIN32 -DFORCE_WIN32_OVER_UNIX |
||
94 | endif |
||
95 | endif |
||
96 | ### kolibri specific |
||
97 | INCLUDES= -I $(SDK_DIR)/sources/newlib/libc/include |
||
98 | LIBPATH = -L $(SDK_DIR)/lib -L /home/autobuild/tools/win32/mingw32/lib |
||
99 | |||
100 | CC_ENVIR_OPT = -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32 -DKOS32 \ |
||
101 | $(INCLUDES) |
||
102 | |||
103 | ### Compiler-specific section |
||
104 | |||
105 | # ------------ GNU C ------------ |
||
106 | CC = kos32-gcc |
||
107 | |||
108 | #AS = as |
||
109 | AS = $(CC) |
||
110 | |||
111 | LD = kos32-ld |
||
112 | ###LD = $(CC) |
||
113 | |||
114 | AR = ar |
||
115 | |||
116 | ###RC = windres |
||
117 | |||
118 | # Quiet |
||
119 | CC_QUIET_OPT = |
||
120 | AS_QUIET_OPT = $(CC_QUIET_OPT) |
||
121 | LD_QUIET_OPT = $(CC_QUIET_OPT) |
||
122 | |||
123 | # Warnings |
||
124 | CC_WARN_OPT = -Wall |
||
125 | AS_WARN_OPT = $(CC_WARN_OPT) |
||
126 | LD_WARN_OPT = |
||
127 | |||
128 | # Debug version |
||
129 | CC_DEBUG_OPT = -g |
||
130 | AS_DEBUG_OPT = $(CC_DEBUG_OPT) |
||
131 | LD_DEBUG_OPT = $(CC_DEBUG_OPT) |
||
132 | |||
133 | # Release version |
||
134 | CC_RELEASE_OPT = |
||
135 | AS_RELEASE_OPT = |
||
136 | LD_RELEASE_OPT = -s |
||
137 | |||
138 | # Prefered target CPU (instruction scheduling optimized for...) |
||
139 | ifndef CC_CPU_OPT |
||
140 | CC_CPU_OPT = -mcpu=pentiumpro |
||
141 | endif |
||
142 | |||
143 | # Smallest code (-Os is new since EGC 1.1, use -O1 for 2.8.1 and earlier) |
||
144 | CC_SIZE_OPT = -Os $(CC_CPU_OPT) |
||
145 | |||
146 | # Fastest code |
||
147 | CC_SPEED_OPT = -O2 $(CC_CPU_OPT) |
||
148 | |||
149 | # Output object file name |
||
150 | CC_OUT_OPT = -o |
||
151 | |||
152 | # Other specific options |
||
153 | CC_SPECIFIC_OPT = -c $(CC_ENVIR_OPT) |
||
154 | AS_SPECIFIC_OPT = -c |
||
155 | LD_SPECIFIC_OPT = -o $@ -static -S -nostdlib -T $(SDK_DIR)/lib/app-dynamic.lds \ |
||
156 | --image-base 0 $(LIBPATH) |
||
157 | |||
158 | # Libraries for the debug & release version |
||
159 | # (GCC 2.95 and newer does not require the system library specifications) |
||
160 | ifdef USEZLIB |
||
161 | LD_RELEASE_LIBS = -lz -lgcc -ldll -lc.dll |
||
162 | else |
||
163 | LD_RELEASE_LIBS = -lgcc -ldll -lc.dll |
||
164 | endif |
||
165 | LD_DEBUG_LIBS = $(LD_RELEASE_LIBS) |
||
166 | |||
167 | |||
168 | ### System-specific section |
||
169 | |||
170 | # Suffixes |
||
171 | OBJ = .o |
||
172 | EXE = .exe |
||
173 | |||
174 | .SUFFIXES: .c .S $(OBJ) $(EXE) |
||
175 | .PHONY: FORCE |
||
176 | |||
177 | # Commands |
||
178 | RM = del /q |
||
179 | |||
180 | |||
181 | ### General section |
||
182 | |||
183 | CFLAGS = $(CC_SPECIFIC_OPT) $(CC_QUIET_OPT) $(CC_WARN_OPT) $(LOCFLAGS) \ |
||
184 | $(CC_OUT_OPT) $@ |
||
185 | ASFLAGS = $(AS_SPECIFIC_OPT) $(AS_QUIET_OPT) $(AS_WARN_OPT) $(LOCFLAGS) |
||
186 | LDFLAGS = $(LD_SPECIFIC_OPT) $(LD_QUIET_OPT) $(LD_WARN_OPT) |
||
187 | |||
188 | # To build with debug info, use 'make DEBUG=1'. |
||
189 | ifdef DEBUG |
||
190 | CVER = $(CC_DEBUG_OPT) |
||
191 | ASVER = $(AS_DEBUG_OPT) |
||
192 | LDVER = $(LD_DEBUG_OPT) |
||
193 | GENFLAGS = |
||
194 | FFLAGS = -DFUNZIP |
||
195 | SFXFLAGS = -DSFX |
||
196 | GENDLLFL = -DDLL -DWINDLL |
||
197 | GENGUILB = -DSFX -DDLL -DWINDLL -DUNZIPLIB |
||
198 | GENGUISX = -DSFX |
||
199 | GENLIBFL = -DDLL -DWINDLL -DUNZIPLIB |
||
200 | LDLIBS = $(LD_DEBUG_LIBS) |
||
201 | else |
||
202 | CVER = $(CC_RELEASE_OPT) |
||
203 | ASVER = $(AS_RELEASE_OPT) |
||
204 | LDVER = $(LD_RELEASE_OPT) |
||
205 | GENFLAGS = $(CC_SPEED_OPT) |
||
206 | FFLAGS = $(CC_SPEED_OPT) -DFUNZIP |
||
207 | SFXFLAGS = $(CC_SIZE_OPT) -DSFX |
||
208 | GENDLLFL = $(CC_SPEED_OPT) -DDLL -DWINDLL |
||
209 | GENGUILB = $(CC_SIZE_OPT) -DSFX -DDLL -DWINDLL -DUNZIPLIB |
||
210 | GENGUISX = $(CC_SIZE_OPT) -DSFX |
||
211 | GENLIBFL = $(CC_SPEED_OPT) -DDLL -DWINDLL -DUNZIPLIB |
||
212 | LDLIBS = $(LD_RELEASE_LIBS) |
||
213 | endif |
||
214 | GUILDFLAG=-mwindows |
||
215 | |||
216 | # Object files |
||
217 | ifneq ($(APPLY_ASMCRC),0) |
||
218 | OBJA = crc_i386$(OBJ) |
||
219 | else |
||
220 | OBJA = |
||
221 | endif |
||
222 | OBJU1 = unzip$(OBJ) crc32$(OBJ) crypt$(OBJ) envargs$(OBJ) |
||
223 | OBJU2 = explode$(OBJ) extract$(OBJ) fileio$(OBJ) globals$(OBJ) inflate$(OBJ) |
||
224 | OBJU3 = list$(OBJ) match$(OBJ) process$(OBJ) ttyio$(OBJ) ubz2err$(OBJ) |
||
225 | OBJU4 = unreduce$(OBJ) unshrink$(OBJ) zipinfo$(OBJ) |
||
226 | OBJUS= kos32$(OBJ) dirent$(OBJ) |
||
227 | ###OBJUS = win32$(OBJ) win32i64$(OBJ) nt$(OBJ) winapprc$(OBJ) |
||
228 | OBJU = $(OBJU1) $(OBJU2) $(OBJU3) $(OBJU4) $(OBJA) $(OBJUS) |
||
229 | OBJX1 = unzipsfx$(OBJ) crc32x$(OBJ) cryptx$(OBJ) extractx$(OBJ) |
||
230 | OBJX2 = fileiox$(OBJ) globalsx$(OBJ) inflatex$(OBJ) matchx$(OBJ) processx$(OBJ) |
||
231 | OBJX3 = ttyiox$(OBJ) ubz2errx$(OBJ) |
||
232 | ###OBJXS = win32x$(OBJ) win32i64x$(OBJ) ntx$(OBJ) |
||
233 | OBJX = $(OBJX1) $(OBJX2) $(OBJX3) $(OBJA) $(OBJXS) |
||
234 | OBJF1 = funzip$(OBJ) crc32$(OBJ) cryptf$(OBJ) globalsf$(OBJ) inflatef$(OBJ) |
||
235 | OBJF2 = ttyiof$(OBJ) |
||
236 | ###OBJFS = win32f$(OBJ) win32i64f$(OBJ) |
||
237 | OBJF = $(OBJF1) $(OBJF2) $(OBJA) $(OBJFS) |
||
238 | OBJDLL = windll$(OBJ) windllrc$(OBJ) api$(OBJ) |
||
239 | OBJD1 = crc32l$(OBJ) cryptl$(OBJ) |
||
240 | OBJD2 = explodel$(OBJ) extractl$(OBJ) fileiol$(OBJ) globalsl$(OBJ) |
||
241 | OBJD3 = inflatel$(OBJ) listl$(OBJ) matchl$(OBJ) processl$(OBJ) ubz2errl$(OBJ) |
||
242 | OBJD4 = unreducl$(OBJ) unshrnkl$(OBJ) zipinfol$(OBJ) |
||
243 | ###OBJDS = win32l$(OBJ) win32i64l$(OBJ) ntl$(OBJ) |
||
244 | OBJD = $(OBJDLL) $(OBJD1) $(OBJD2) $(OBJD3) $(OBJD4) $(OBJA) $(OBJDS) |
||
245 | OBLX1 = apig$(OBJ) crc32g$(OBJ) cryptg$(OBJ) |
||
246 | OBLX2 = extractg$(OBJ) fileiog$(OBJ) globalsg$(OBJ) inflateg$(OBJ) |
||
247 | OBLX3 = matchg$(OBJ) processg$(OBJ) ubz2errg$(OBJ) |
||
248 | ###OBLXS = win32g$(OBJ) win32i64g$(OBJ) ntg$(OBJ) windllg$(OBJ) |
||
249 | OBLX = $(OBLX1) $(OBLX2) $(OBLX3) $(OBJA) $(OBLXS) |
||
250 | OBGX = sfxwiz$(OBJ) sfxwizrc$(OBJ) |
||
251 | OBJLIB = windllb$(OBJ) apib$(OBJ) |
||
252 | OBJB1 = crc32b$(OBJ) cryptb$(OBJ) |
||
253 | OBJB2 = explodeb$(OBJ) extractb$(OBJ) fileiob$(OBJ) globalsb$(OBJ) |
||
254 | OBJB3 = inflateb$(OBJ) listb$(OBJ) matchb$(OBJ) processb$(OBJ) ubz2errb$(OBJ) |
||
255 | OBJB4 = unreducb$(OBJ) unshrnkb$(OBJ) zipinfob$(OBJ) |
||
256 | ###OBJBS = win32b$(OBJ) win32i64b$(OBJ) ntb$(OBJ) |
||
257 | OBJB = $(OBJLIB) $(OBJB1) $(OBJB2) $(OBJB3) $(OBJB4) $(OBJA) $(OBJBS) |
||
258 | |||
259 | UNZIP_H = unzip.h unzpriv.h globals.h |
||
260 | ###win32/w32cfg.h |
||
261 | ###WINDLL_H = windll/windll.h windll/structs.h windll/decs.h |
||
262 | ###DLLDEF = windll/windllgcc.def |
||
263 | ###WINDLL_IMP_H = windll/decs.h windll/structs.h |
||
264 | |||
265 | |||
266 | # Default target is all the executables |
||
267 | ###unzips: unzip$(EXE) funzip$(EXE) unzipsfx$(EXE) |
||
268 | ###dll: unzip32.dll |
||
269 | ###dllsample: uzexampl$(EXE) |
||
270 | ###guisfx: SFXWiz32$(EXE) |
||
271 | #lib: libunzip32.a |
||
272 | ###all: unzips dll dllsample guisfx lib |
||
273 | all: unzip$(EXE) |
||
274 | |||
275 | unzip$(EXE): $(OBJU) $(LIBBZIP2) |
||
276 | $(LD) $(LDFLAGS) $(LDVER) $(OBJU) $(LD_BZ2LIB) $(LDLIBS) |
||
277 | kos32-objcopy $@ -O binary |
||
278 | |||
279 | unzipsfx$(EXE): $(OBJX) $(LIBBZIP2X) |
||
280 | $(LD) $(LDFLAGS) $(LDVER) $(OBJX) $(LDLIBS) |
||
281 | |||
282 | funzip$(EXE): $(OBJF) |
||
283 | $(LD) $(LDFLAGS) $(LDVER) $(OBJF) $(LDLIBS) |
||
284 | |||
285 | unzip32.dll: $(DLLDEF) $(OBJD) $(LIBBZIP2) |
||
286 | dllwrap --driver-name $(CC) --def $(DLLDEF) $(LDFLAGS) $(LDVER) $(OBJD) $(LD_BZ2LIB) $(LDLIBS) |
||
287 | |||
288 | libunzsfx32.a: $(OBLX) |
||
289 | $(AR) -rus $@ $(OBLX) |
||
290 | |||
291 | SFXWiz32$(EXE): $(OBGX) libunzsfx32.a $(LIBBZIP2X) |
||
292 | $(LD) $(GUILDFLAG) $(LDFLAGS) $(LDVER) $(OBGX) -L. -lunzsfx32 $(LDLIBS) |
||
293 | |||
294 | uzexampl$(EXE): uzexampl$(OBJ) |
||
295 | $(CC) $(LDFLAGS) $(LDVER) uzexampl$(OBJ) -lversion $(LDLIBS) |
||
296 | |||
297 | libunzip32.a: $(OBJB) |
||
298 | $(AR) -rus $@ $(OBJB) |
||
299 | |||
300 | |||
301 | # create/update the library for the optional bzip2 support: |
||
302 | $(IZ_BZIP2)/libbz2.a: FORCE |
||
303 | $(subst /,\,$(MAKE)) -C $(IZ_BZIP2) -f Makebz2.iz CC="$(CC)" RM="$(RM)" |
||
304 | FORCE: |
||
305 | |||
306 | # How to compile sources |
||
307 | .c$(OBJ): |
||
308 | $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) $< |
||
309 | .S$(OBJ): |
||
310 | $(AS) $(ASFLAGS) $(ASVER) $(GENFLAGS) $< |
||
311 | |||
312 | # Dependencies |
||
313 | crc32$(OBJ): crc32.c $(UNZIP_H) zip.h crc32.h |
||
314 | crypt$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h |
||
315 | envargs$(OBJ): envargs.c $(UNZIP_H) |
||
316 | explode$(OBJ): explode.c $(UNZIP_H) |
||
317 | extract$(OBJ): extract.c $(UNZIP_H) crc32.h crypt.h |
||
318 | fileio$(OBJ): fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h |
||
319 | funzip$(OBJ): funzip.c $(UNZIP_H) crc32.h crypt.h ttyio.h |
||
320 | globals$(OBJ): globals.c $(UNZIP_H) |
||
321 | inflate$(OBJ): inflate.c inflate.h $(UNZIP_H) |
||
322 | list$(OBJ): list.c $(UNZIP_H) |
||
323 | match$(OBJ): match.c $(UNZIP_H) |
||
324 | process$(OBJ): process.c $(UNZIP_H) crc32.h |
||
325 | ttyio$(OBJ): ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h |
||
326 | ubz2err$(OBJ): ubz2err.c $(UNZIP_H) |
||
327 | unreduce$(OBJ): unreduce.c $(UNZIP_H) |
||
328 | unshrink$(OBJ): unshrink.c $(UNZIP_H) |
||
329 | unzip$(OBJ): unzip.c $(UNZIP_H) crypt.h unzvers.h consts.h |
||
330 | zipinfo$(OBJ): zipinfo.c $(UNZIP_H) |
||
331 | crc_i386$(OBJ): crc_i386.S |
||
332 | |||
333 | |||
334 | kos32$(OBJ): kolibri/kos32.c kolibri/kos32sys1.h |
||
335 | $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) -I. $< |
||
336 | dirent$(OBJ): kolibri/dirent.c kolibri/kos32sys1.h |
||
337 | $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) -I. $< |
||
338 | ###win32$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h |
||
339 | ### $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) -I. $< |
||
340 | |||
341 | ###win32i64$(OBJ): win32/win32i64.c $(UNZIP_H) |
||
342 | ### $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) -I. $< |
||
343 | |||
344 | ###nt$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h |
||
345 | ### $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) -I. $< |
||
346 | |||
347 | ###winapprc$(OBJ): win32/winapp.rc unzvers.h |
||
348 | ### - $(RC) -o $@ $< |
||
349 | |||
350 | # UnZipSFX compilation section |
||
351 | crc32x$(OBJ): crc32.c $(UNZIP_H) zip.h crc32.h |
||
352 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
353 | |||
354 | cryptx$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h |
||
355 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
356 | |||
357 | extractx$(OBJ): extract.c $(UNZIP_H) crc32.h crypt.h |
||
358 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
359 | |||
360 | fileiox$(OBJ): fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h |
||
361 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
362 | |||
363 | globalsx$(OBJ): globals.c $(UNZIP_H) |
||
364 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
365 | |||
366 | inflatex$(OBJ): inflate.c inflate.h $(UNZIP_H) crypt.h |
||
367 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
368 | |||
369 | matchx$(OBJ): match.c $(UNZIP_H) |
||
370 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
371 | |||
372 | processx$(OBJ): process.c $(UNZIP_H) crc32.h |
||
373 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
374 | |||
375 | ttyiox$(OBJ): ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h |
||
376 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
377 | |||
378 | ubz2errx$(OBJ): ubz2err.c $(UNZIP_H) |
||
379 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
380 | |||
381 | unzipsfx$(OBJ): unzip.c $(UNZIP_H) crypt.h unzvers.h consts.h |
||
382 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) $< |
||
383 | |||
384 | win32x$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h |
||
385 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) -I. $< |
||
386 | |||
387 | win32i64x$(OBJ): win32/win32i64.c $(UNZIP_H) |
||
388 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) -I. $< |
||
389 | |||
390 | ntx$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h |
||
391 | $(CC) $(CFLAGS) $(CVER) $(SFXFLAGS) -I. $< |
||
392 | |||
393 | # fUnZip compilation section |
||
394 | cryptf$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h |
||
395 | $(CC) $(CFLAGS) $(CVER) $(FFLAGS) $< |
||
396 | |||
397 | globalsf$(OBJ): globals.c $(UNZIP_H) |
||
398 | $(CC) $(CFLAGS) $(CVER) $(FFLAGS) $< |
||
399 | |||
400 | inflatef$(OBJ): inflate.c inflate.h $(UNZIP_H) crypt.h |
||
401 | $(CC) $(CFLAGS) $(CVER) $(FFLAGS) $< |
||
402 | |||
403 | ttyiof$(OBJ): ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h |
||
404 | $(CC) $(CFLAGS) $(CVER) $(FFLAGS) $< |
||
405 | |||
406 | win32f$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h |
||
407 | $(CC) $(CFLAGS) $(CVER) $(FFLAGS) -I. $< |
||
408 | |||
409 | win32i64f$(OBJ): win32/win32i64.c $(UNZIP_H) |
||
410 | $(CC) $(CFLAGS) $(CVER) $(FFLAGS) -I. $< |
||
411 | |||
412 | # WINDLL sample |
||
413 | uzexampl$(OBJ): windll/uzexampl.c windll/uzexampl.h |
||
414 | $(CC) $(CFLAGS) $(CVER) $(GENFLAGS) -I. $< |
||
415 | |||
416 | # DLL compilation section |
||
417 | api$(OBJ): api.c $(UNZIP_H) $(WINDLL_H) unzvers.h |
||
418 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
419 | |||
420 | crc32l$(OBJ): crc32.c $(UNZIP_H) zip.h crc32.h |
||
421 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
422 | |||
423 | cryptl$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h |
||
424 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
425 | |||
426 | explodel$(OBJ): explode.c $(UNZIP_H) |
||
427 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
428 | |||
429 | extractl$(OBJ): extract.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h |
||
430 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
431 | |||
432 | fileiol$(OBJ): fileio.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h ttyio.h ebcdic.h |
||
433 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
434 | |||
435 | globalsl$(OBJ): globals.c $(UNZIP_H) |
||
436 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
437 | |||
438 | inflatel$(OBJ): inflate.c inflate.h $(UNZIP_H) crypt.h |
||
439 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
440 | |||
441 | listl$(OBJ): list.c $(UNZIP_H) $(WINDLL_H) |
||
442 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
443 | |||
444 | matchl$(OBJ): match.c $(UNZIP_H) |
||
445 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
446 | |||
447 | processl$(OBJ): process.c $(UNZIP_H) $(WINDLL_H) crc32.h |
||
448 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
449 | |||
450 | ubz2errl$(OBJ): ubz2err.c $(UNZIP_H) |
||
451 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
452 | |||
453 | unreducl$(OBJ): unreduce.c $(UNZIP_H) |
||
454 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
455 | |||
456 | unshrnkl$(OBJ): unshrink.c $(UNZIP_H) |
||
457 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
458 | |||
459 | zipinfol$(OBJ): zipinfo.c $(UNZIP_H) |
||
460 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) $< |
||
461 | |||
462 | win32l$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h |
||
463 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) -I. $< |
||
464 | |||
465 | win32i64l$(OBJ): win32/win32i64.c $(UNZIP_H) |
||
466 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) -I. $< |
||
467 | |||
468 | ntl$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h |
||
469 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) -I. $< |
||
470 | |||
471 | windll$(OBJ): windll/windll.c $(UNZIP_H) $(WINDLL_H) crypt.h unzvers.h consts.h |
||
472 | $(CC) $(CFLAGS) $(CVER) $(GENDLLFL) -I. $< |
||
473 | |||
474 | windllrc$(OBJ): windll/windll.rc unzvers.h |
||
475 | - $(RC) -o $@ $< |
||
476 | |||
477 | # SFX Lib compilation section |
||
478 | apig$(OBJ): api.c $(UNZIP_H) $(WINDLL_H) unzvers.h |
||
479 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
480 | |||
481 | crc32g$(OBJ): crc32.c $(UNZIP_H) zip.h crc32.h |
||
482 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
483 | |||
484 | cryptg$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h |
||
485 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
486 | |||
487 | extractg$(OBJ): extract.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h |
||
488 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
489 | |||
490 | fileiog$(OBJ): fileio.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h ttyio.h ebcdic.h |
||
491 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
492 | |||
493 | globalsg$(OBJ): globals.c $(UNZIP_H) |
||
494 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
495 | |||
496 | inflateg$(OBJ): inflate.c inflate.h $(UNZIP_H) |
||
497 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
498 | |||
499 | matchg$(OBJ): match.c $(UNZIP_H) |
||
500 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
501 | |||
502 | processg$(OBJ): process.c $(UNZIP_H) $(WINDLL_H) crc32.h |
||
503 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
504 | |||
505 | ubz2errg$(OBJ): ubz2err.c $(UNZIP_H) |
||
506 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) $< |
||
507 | |||
508 | win32g$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h |
||
509 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) -I. $< |
||
510 | |||
511 | win32i64g$(OBJ): win32/win32i64.c $(UNZIP_H) |
||
512 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) -I. $< |
||
513 | |||
514 | ntg$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h |
||
515 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) -I. $< |
||
516 | |||
517 | windllg$(OBJ): windll/windll.c $(UNZIP_H) $(WINDLL_H) crypt.h unzvers.h consts.h |
||
518 | $(CC) $(CFLAGS) $(CVER) $(GENGUILB) -I. $< |
||
519 | |||
520 | sfxwiz$(OBJ): windll/guisfx/sfxwiz.c windll/guisfx/dialog.h $(WINDLL_IMP_H) |
||
521 | $(CC) $(CFLAGS) $(CVER) $(GENGUISX) -I. $< |
||
522 | |||
523 | sfxwizrc$(OBJ): windll/guisfx/sfxwiz.rc |
||
524 | - $(RC) --include-dir windll/guisfx --define WIN32 -o$@ $< |
||
525 | |||
526 | # Static LIB compilation section |
||
527 | apib$(OBJ): api.c $(UNZIP_H) $(WINDLL_H) unzvers.h |
||
528 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
529 | |||
530 | crc32b$(OBJ): crc32.c $(UNZIP_H) zip.h crc32.h |
||
531 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
532 | |||
533 | cryptb$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h |
||
534 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
535 | |||
536 | explodeb$(OBJ): explode.c $(UNZIP_H) |
||
537 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
538 | |||
539 | extractb$(OBJ): extract.c $(UNZIP_H) crc32.h crypt.h |
||
540 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
541 | |||
542 | fileiob$(OBJ): fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h |
||
543 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
544 | |||
545 | globalsb$(OBJ): globals.c $(UNZIP_H) |
||
546 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
547 | |||
548 | inflateb$(OBJ): inflate.c inflate.h $(UNZIP_H) crypt.h |
||
549 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
550 | |||
551 | listb$(OBJ): list.c $(UNZIP_H) $(WINDLL_H) |
||
552 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
553 | |||
554 | matchb$(OBJ): match.c $(UNZIP_H) |
||
555 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
556 | |||
557 | processb$(OBJ): process.c $(UNZIP_H) crc32.h |
||
558 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
559 | |||
560 | ubz2errb$(OBJ): ubz2err.c $(UNZIP_H) |
||
561 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
562 | |||
563 | unreducb$(OBJ): unreduce.c $(UNZIP_H) |
||
564 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
565 | |||
566 | unshrnkb$(OBJ): unshrink.c $(UNZIP_H) |
||
567 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
568 | |||
569 | zipinfob$(OBJ): zipinfo.c $(UNZIP_H) |
||
570 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) $< |
||
571 | |||
572 | win32b$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h |
||
573 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) -I. $< |
||
574 | |||
575 | win32i64b$(OBJ): win32/win32i64.c $(UNZIP_H) |
||
576 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) -I. $< |
||
577 | |||
578 | ntb$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h |
||
579 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) -I. $< |
||
580 | |||
581 | windllb$(OBJ): windll/windll.c $(UNZIP_H) $(WINDLL_H) crypt.h unzvers.h consts.h |
||
582 | $(CC) $(CFLAGS) $(CVER) $(GENLIBFL) -I. $< |
||
583 | |||
584 | clean: |
||
585 | -$(subst /,\,$(MAKE)) -C $(IZ_BZIP2) -f Makebz2.iz RM="$(RM)" clean |
||
586 | -$(RM) *$(OBJ) |
||
587 | -$(RM) unzip$(EXE) funzip$(EXE) unzipsfx$(EXE) |
||
588 | -$(RM) unzip32.dll uzexampl$(EXE) SFXWiz32$(EXE) |
||
589 | -$(RM) libunzip32.a libunzsfx32.a |