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