~ubuntu-branches/ubuntu/precise/arj/precise-security

« back to all changes in this revision

Viewing changes to makefile

  • Committer: Bazaar Package Importer
  • Author(s): Guillem Jover
  • Date: 2004-06-27 08:07:09 UTC
  • Revision ID: james.westby@ubuntu.com-20040627080709-1gkxm72ex66gkwe4
Tags: upstream-3.10.21
ImportĀ upstreamĀ versionĀ 3.10.21

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#
 
2
# $Id: makefile,v 1.11 2004/06/18 16:19:37 andrew_belov Exp $
 
3
# ----------------------------------------------------------------------------
 
4
# This file  is  intended  for building  ARJ on/for platforms where  the NMAKE
 
5
# syntax is  supported. If you are  using a GCC/EMX build, refer to scripts in
 
6
# the "gnu" directory.
 
7
#
 
8
# It's essential that the following versions of NMAKE are used:
 
9
#
 
10
#             DOS            Microsoft NMAKE v 1.36 or higher
 
11
#             OS/2, WinNT    Microsoft NMAKE/2 v 1.21 or NMAKE/Win32 v 1.40+
 
12
#
 
13
# Parameters:
 
14
#             NP_SFX         disables executable packing
 
15
#             COMMERCIAL     produces commercial package (where available)
 
16
#             DEBUG          includes debug information and extra data
 
17
#
 
18
#             FORCE_MSGRAPH  with Microsoft C for DOS, enables GRAPHICS.LIB
 
19
#             LIBC           in 32-bit OS/2, enables LIBCS.LIB, req. LIBCPATH
 
20
#                            (e.g. LIBC=1 LIBCPATH=E:\OS2TK45\H\LIBC)
 
21
#                            with Visual C++, enables MSVCRT.LIB (/MD)
 
22
#             USE_COLORS     enable colored output
 
23
#
 
24
# IMPORTANT: Due to DOS path size limitations, the subdirectory names must be
 
25
#            as short as possible.
 
26
#
 
27
 
 
28
!ifndef MODE
 
29
MODE = OS232
 
30
!endif
 
31
 
 
32
!ifndef LOCALE
 
33
LOCALE = en
 
34
!endif
 
35
 
 
36
!ifndef RESFILE
 
37
RESFILE = resource\resource.txt
 
38
!endif
 
39
 
 
40
!ifndef C_DEFS
 
41
C_DEFS = $(BASEDIR_T)c_defs.h
 
42
!endif
 
43
 
 
44
!ifndef ASM_DEFS
 
45
ASM_DEFS = $(BASEDIR_T)asm_defs.inc
 
46
!endif
 
47
 
 
48
!ifdef COMMERCIAL
 
49
PACKAGE = c
 
50
!else
 
51
PACKAGE = s
 
52
!endif
 
53
 
 
54
!ifdef DEBUG
 
55
DEBUG_SM = d
 
56
!else
 
57
DEBUG_SM = r
 
58
!endif
 
59
 
 
60
##
 
61
## DOS realmode section
 
62
##
 
63
!if "$(MODE)" == "DOS16"
 
64
OS_ID = DOS
 
65
LZEXE = lzexe.exe
 
66
CRP_OBJS_E = $(BASEDIR)\arjcrypt\det_x86.obj $(BASEDIR)\arjcrypt\gost_asm.obj
 
67
ARJ_OBJS_E = $(BASEDIR)\arj\arj_xms.obj
 
68
!ifndef COMPILER
 
69
COMPILER = MSC7
 
70
!endif
 
71
#
 
72
# Assembly language options are the same - we'll use MASM everywhere
 
73
#
 
74
ASM = ml.exe
 
75
ASMOPT = /I$(BASEDIR) /c /Fo$@ %s
 
76
STD_ASMOPT = /DMODL=MEDIUM /DARJUTIL $(ASMOPT)
 
77
STB_ASMOPT = /DMODL=SMALL /DSFXSTUB $(ASMOPT)
 
78
!if "$(COMPILER)" == "BC40"
 
79
SFV_ASMOPT = /DMODL=MEDIUM /DARJSFX $(ASMOPT)
 
80
!else
 
81
SFV_ASMOPT = /DMODL=SMALL /DARJSFX $(ASMOPT)
 
82
!endif
 
83
SFX_ASMOPT = /DMODL=SMALL /DARJSFX /DNO_FAR $(ASMOPT)
 
84
SFJ_ASMOPT = /DMODL=SMALL /DARJSFXJR /DNO_FAR $(ASMOPT)
 
85
REJ_ASMOPT = /DMODL=SMALL /DREARJ /DNO_FAR $(ASMOPT)
 
86
REG_ASMOPT = /DMODL=SMALL /DREGISTER /DNO_FAR $(ASMOPT)
 
87
ADI_ASMOPT = /DMODL=SMALL /DARJDISP /DNO_FAR $(ASMOPT)
 
88
CRP_ASMOPT = /DMODL=SMALL $(ASMOPT)
 
89
#
 
90
# Borland C compilers section
 
91
#
 
92
!if "$(COMPILER)" == "TC10"
 
93
CC_CODE = $(COMPILER)
 
94
CC = tcc.exe
 
95
COPT = -I$(BASEDIR) -o$@ @settings\$(CC_CODE).sts %s
 
96
LINKER = tlink.exe
 
97
LINKLIB = E:\LANG\TCC10\LIB^\
 
98
LINKOPT =
 
99
!else if "$(COMPILER)" == "BC31"
 
100
CC_CODE = $(COMPILER)
 
101
CC = bcc.exe
 
102
LINKER = tlink.exe
 
103
COPT = -I$(BASEDIR) -o$@ @settings\$(CC_CODE).sts %s
 
104
LINKLIB =
 
105
LINKOPT =
 
106
!else if "$(COMPILER)" == "BC40"
 
107
CC_CODE = $(COMPILER)
 
108
CC = bcc.exe
 
109
LINKER = tlink.exe
 
110
COPT = -I$(BASEDIR) -o$@ @settings\$(CC_CODE).sts %s
 
111
LINKLIB =
 
112
LINKOPT =
 
113
!endif
 
114
!if "$(COMPILER)" == "TC10"||"$(COMPILER)" == "BC31"||"$(COMPILER)" == "BC40"
 
115
# Executables
 
116
ARJ = arj.exe
 
117
ARJSFXV = arjsfxv.exe
 
118
ARJSFX = arjsfx.exe
 
119
ARJSFXJR = arjsfxjr.exe
 
120
ARJCRYPT = arjcrypt.com
 
121
REARJ = rearj.exe
 
122
REGISTER = register.exe
 
123
ARJDISP = arjdisp.exe
 
124
POSTPROC = postproc.exe
 
125
JOIN = join.exe
 
126
MSGBIND = msgbind.exe
 
127
TODAY = today.exe
 
128
MAKE_KEY = make_key.exe
 
129
PACKAGER = packager.exe
 
130
MAKESTUB = makestub.exe
 
131
SFXSTUB = sfxstub.exe
 
132
# C options
 
133
STD_COPT = -mm -DARJUTIL $(COPT)
 
134
ARJ_COPT = -mm -DSFL=4 $(COPT)
 
135
!if "$(COMPILER)" == "BC40"
 
136
SFV_COPT = -mm -DSFL=3 $(COPT)
 
137
REJ_COPT = -mm -DREARJ $(COPT)
 
138
!else
 
139
SFV_COPT = -ms -DSFL=3 $(COPT)
 
140
REJ_COPT = -ms -DREARJ $(COPT)
 
141
!endif
 
142
SFX_COPT = -ms -DSFL=2 $(COPT)
 
143
SFJ_COPT = -ms -DSFL=1 $(COPT)
 
144
REG_COPT = -ms -DREGISTER $(COPT)
 
145
ADI_COPT = -ms -DARJDISP $(COPT)
 
146
FAR_COPT = -zRA -zSA -zTFAR_DATA $(ARJ_COPT)
 
147
FDS_COPT = -zRF -zSF -zTFAR_DATA $(ARJ_COPT)
 
148
NEAR_COPT = -zC_TEXT $(ARJ_COPT)
 
149
CRP_COPT = -mt $(COPT)
 
150
# Linkup objects
 
151
STD_OBJ = $(LINKLIB)c0m
 
152
ARJ_OBJ = $(LINKLIB)c0m
 
153
STB_OBJ =
 
154
!if "$(COMPILER)" == "BC40"
 
155
SFV_OBJ = $(LINKLIB)c0m
 
156
REJ_OBJ = $(LINKLIB)c0m
 
157
!else
 
158
SFV_OBJ = $(LINKLIB)c0s
 
159
REJ_OBJ = $(LINKLIB)c0s
 
160
!endif
 
161
SFX_OBJ = $(LINKLIB)c0s
 
162
SFJ_OBJ = $(LINKLIB)c0s
 
163
REG_OBJ = $(LINKLIB)c0s
 
164
ADI_OBJ = $(LINKLIB)c0s
 
165
CRP_OBJ = /t $(LINKLIB)c0t
 
166
# Supplemental objects
 
167
ARJ_OBJS_S = $(BASEDIR)\arj\fmemcmp.obj
 
168
# Libraries
 
169
STD_LIB = $(LINKLIB)cm
 
170
ARJ_LIB = $(LINKLIB)cm
 
171
STB_LIB =
 
172
!if "$(COMPILER)" == "BC40"
 
173
SFV_LIB = $(LINKLIB)cm
 
174
REJ_LIB = $(LINKLIB)cm
 
175
!else
 
176
SFV_LIB = $(LINKLIB)cs
 
177
REJ_LIB = $(LINKLIB)cs
 
178
!endif
 
179
SFX_LIB = $(LINKLIB)cs
 
180
SFJ_LIB = $(LINKLIB)cs
 
181
REG_LIB = $(LINKLIB)cs
 
182
ADI_LIB = $(LINKLIB)cs
 
183
CRP_LIB = $(LINKLIB)cs
 
184
!endif
 
185
LRF = echo > NUL
 
186
#
 
187
# Microsoft C compilers section
 
188
#
 
189
!if "$(COMPILER)" == "MSC6"
 
190
CC_CODE = $(COMPILER)
 
191
CC = cl.exe
 
192
COPT = /I$(BASEDIR) /Fo$@ %s
 
193
NEARPOPT =
 
194
LINKER = link.exe
 
195
LINKLIB =
 
196
LINKOPT = /NOE
 
197
!else if "$(COMPILER)" == "MSC7"||"$(COMPILER)" == "MSVC10"||"$(COMPILER)" == "MSVC15"
 
198
CC_CODE = $(COMPILER)
 
199
CC = cl.exe
 
200
LINKER = link.exe
 
201
COPT = /I$(BASEDIR) /Fo$@ @settings\$(CC_CODE).sts %s
 
202
NEARPOPT = /Gx
 
203
LINKLIB =
 
204
LINKOPT = /NOE
 
205
!else if "$(COMPILER)" == "QC25"
 
206
CC_CODE = $(COMPILER)
 
207
!if "$(COMPILER)" == "QC25"
 
208
CC = _qcl.exe
 
209
LINKER = qlink.exe
 
210
!else
 
211
CC = cl.exe
 
212
LINKER = link.exe
 
213
!endif
 
214
COPT = /I$(BASEDIR) /I. /Fo$@ /Gs /Zp /c %s
 
215
MSC_OPT = /Olrg
 
216
LINKLIB =
 
217
LINKOPT = /NOE
 
218
!endif
 
219
!if "$(COMPILER)" == "MSC6"||"$(COMPILER)" == "MSC7"||"$(COMPILER)" == "MSVC10"||"$(COMPILER)" == "MSVC15"||"$(COMPILER)" == "QC25"
 
220
# Executables
 
221
ARJ = arj.exe
 
222
ARJSFXV = arjsfxv.exe
 
223
ARJSFX = arjsfx.exe
 
224
ARJSFXJR = arjsfxjr.exe
 
225
ARJCRYPT = arjcrypt.com
 
226
REARJ = rearj.exe
 
227
REGISTER = register.exe
 
228
ARJDISP = arjdisp.exe
 
229
POSTPROC = postproc.exe
 
230
JOIN = join.exe
 
231
MSGBIND = msgbind.exe
 
232
TODAY = today.exe
 
233
MAKE_KEY = make_key.exe
 
234
PACKAGER = packager.exe
 
235
MAKESTUB = makestub.exe
 
236
SFXSTUB = sfxstub.exe
 
237
# C options
 
238
!if "$(COMPILER)" == "QC25"||"$(FORCE_MSGRAPH)" != ""
 
239
MEM_MARGINAL = /AM
 
240
!else
 
241
MEM_MARGINAL = /AS
 
242
!endif
 
243
STD_COPT = $(MSC_OPT) /AM /DARJUTIL $(COPT)
 
244
ARJ_COPT = $(MSC_OPT) /AM /DSFL=4 $(COPT)
 
245
SFV_COPT = $(MSC_OPT) $(MEM_MARGINAL) /DSFL=3 $(COPT)
 
246
SFX_COPT = $(MSC_OPT) /AS /DSFL=2 $(COPT)
 
247
SFJ_COPT = $(MSC_OPT) /AS /DSFL=1 $(COPT)
 
248
REJ_COPT = $(MSC_OPT) $(MEM_MARGINAL) /DREARJ $(COPT)
 
249
REG_COPT = $(MSC_OPT) /AS /DREGISTER $(COPT)
 
250
ADI_COPT = $(MSC_OPT) /AS /DARJDISP $(COPT)
 
251
FAR_COPT = /NDARJ_MSG $(NEARP_OPT) $(ARJ_COPT)
 
252
FDS_COPT = /NDFARD_SEG $(ARJ_COPT)
 
253
NEAR_COPT = /NT_TEXT $(ARJ_COPT)
 
254
CRP_COPT = /Ot /AT $(COPT)
 
255
# Linkup objects
 
256
STD_OBJ = /STACK:8192
 
257
ARJ_OBJ = /STACK:6144 $(LINKLIB)VARSTCK
 
258
STB_OBJ =
 
259
SFV_OBJ = /STACK:8192 $(LINKLIB)VARSTCK
 
260
SFX_OBJ = /STACK:4096 $(LINKLIB)VARSTCK
 
261
SFJ_OBJ = /STACK:2048 $(LINKLIB)VARSTCK
 
262
REJ_OBJ = /STACK:8192 $(LINKLIB)VARSTCK
 
263
REG_OBJ =
 
264
ADI_OBJ =
 
265
CRP_OBJ = /TINY $(LINKLIB)CRTCOM.LIB
 
266
# Supplemental objects
 
267
# Libraries
 
268
STD_LIB = $(LINKLIB)
 
269
!ifdef FORCE_MSGRAPH
 
270
ARJ_LIB = $(LINKLIB)+$(LINKLIB)graphics
 
271
SFV_LIB = $(LINKLIB)+$(LINKLIB)graphics
 
272
ADI_LIB = $(LINKLIB)+$(LINKLIB)graphics
 
273
REJ_LIB = $(LINKLIB)+$(LINKLIB)graphics
 
274
!else
 
275
ARJ_LIB = $(LINKLIB)
 
276
SFV_LIB = $(LINKLIB)
 
277
ADI_LIB = $(LINKLIB)
 
278
REJ_LIB = $(LINKLIB)
 
279
!endif
 
280
STB_LIB =
 
281
SFX_LIB = $(LINKLIB)
 
282
SFJ_LIB = $(LINKLIB)
 
283
REG_LIB = $(LINKLIB)
 
284
CRP_LIB = $(LINKLIB)
 
285
!endif
 
286
LRF = echo > NUL
 
287
!endif
 
288
##
 
289
## OS/2 protected mode section
 
290
##
 
291
!if "$(MODE)" == "OS216"
 
292
OS_ID = OS2
 
293
!ifndef COMPILER
 
294
COMPILER = MSC6
 
295
!endif
 
296
#
 
297
# Assembly language options are the same - we'll use MASM everywhere
 
298
#
 
299
ASM = ml.exe
 
300
ASMOPT = /I$(BASEDIR) /c /Fo$@ %s
 
301
STD_ASMOPT = /DMODL=MEDIUM /DARJUTIL $(ASMOPT)
 
302
STB_ASMOPT = /DMODL=SMALL /DSFXSTUB $(ASMOPT)
 
303
SFV_ASMOPT = /DMODL=SMALL /DARJSFX $(ASMOPT)
 
304
SFX_ASMOPT = /DMODL=SMALL /DARJSFX /DNO_FAR $(ASMOPT)
 
305
SFJ_ASMOPT = /DMODL=SMALL /DARJSFXJR /DNO_FAR $(ASMOPT)
 
306
REJ_ASMOPT = /DMODL=SMALL /DREARJ /DNO_FAR $(ASMOPT)
 
307
REG_ASMOPT = /DMODL=SMALL /DREGISTER /DNO_FAR $(ASMOPT)
 
308
ADI_ASMOPT = /DMODL=SMALL /DARJDISP /DNO_FAR $(ASMOPT)
 
309
CRP_ASMOPT = /DMODL=SMALL $(ASMOPT)
 
310
#
 
311
# Microsoft C v 6.0 compiler
 
312
#
 
313
!if "$(COMPILER)" == "MSC6"
 
314
CC_CODE = $(COMPILER)_OS2
 
315
CC = cl.exe
 
316
!ifdef DEBUG
 
317
MSCDBG = /Zd
 
318
MSLINKDBG = /CODEVIEW /MAP:full
 
319
MAKESYM = 1
 
320
!endif
 
321
COPT = /I$(BASEDIR) /I. /Fo$@ $(MSCDBG) %s
 
322
NEARPOPT =
 
323
LINKER = link.exe
 
324
LINKLIB =
 
325
LINKOPT = /NOE /PMTYPE:VIO
 
326
# Executables
 
327
ARJ = arj.exe
 
328
ARJSFXV = arjsfxv.exe
 
329
ARJSFX = arjsfx.exe
 
330
ARJSFXJR = arjsfxjr.exe
 
331
ARJCRYPT = arjcrypt.dll
 
332
REARJ = rearj.exe
 
333
REGISTER = register.exe
 
334
ARJDISP = arjdisp.exe
 
335
POSTPROC = postproc.exe
 
336
JOIN = join.exe
 
337
MSGBIND = msgbind.exe
 
338
TODAY = today.exe
 
339
MAKE_KEY = make_key.exe
 
340
PACKAGER = packager.exe
 
341
MAKESTUB = makestub.exe
 
342
SFXSTUB = sfxstub.exe
 
343
# C options
 
344
STD_COPT = /Olrg /AM /DARJUTIL $(COPT)
 
345
ARJ_COPT = /Olrg /AM /DSFL=4 $(COPT)
 
346
SFV_COPT = /Olrg /AS /DSFL=3 $(COPT)
 
347
SFX_COPT = /Olrg /AS /DSFL=2 $(COPT)
 
348
SFJ_COPT = /Olrg /AS /DSFL=1 $(COPT)
 
349
REJ_COPT = /Olrg /AS /DREARJ $(COPT)
 
350
REG_COPT = /Olrg /AS /DREGISTER $(COPT)
 
351
ADI_COPT = /Olrg /AS /DARJDISP $(COPT)
 
352
FAR_COPT = /Olrg /NDARJ_MSG $(NEARP_OPT) $(ARJ_COPT)
 
353
FDS_COPT = /NDFARD_SEG $(ARJ_COPT)
 
354
NEAR_COPT = /NT_TEXT $(ARJ_COPT)
 
355
CRP_COPT = /Ot /ALw /Zl $(COPT)
 
356
# Linkup objects
 
357
STD_OBJ = $(MSLINKDBG) /STACK:8192
 
358
ARJ_OBJ = $(MSLINKDBG) /STACK:6144 $(LINKLIB)VARSTCK
 
359
STB_OBJ = $(MSLINKDBG)
 
360
SFV_OBJ = $(MSLINKDBG) /EXEPACK /STACK:6144 $(LINKLIB)VARSTCK
 
361
SFX_OBJ = $(MSLINKDBG) /EXEPACK /STACK:6144 $(LINKLIB)VARSTCK
 
362
SFJ_OBJ = $(MSLINKDBG) /EXEPACK /STACK:2048 $(LINKLIB)VARSTCK
 
363
REJ_OBJ = $(MSLINKDBG) /STACK:10240 $(LINKLIB)VARSTCK
 
364
REG_OBJ = $(MSLINKDBG)
 
365
ADI_OBJ = $(MSLINKDBG) /EXEPACK $(APILMR)
 
366
CRP_OBJ = $(MSLINKDBG) /STACK:2048
 
367
# Supplemental objects
 
368
# Libraries
 
369
STD_LIB = $(LINKLIB)OS2+$(LINKLIB)MLIBCEP
 
370
ARJ_LIB = $(LINKLIB)OS2+$(LINKLIB)MLIBEEP
 
371
STB_LIB = $(LINKLIB)OS2
 
372
SFV_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEP
 
373
SFX_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEP
 
374
SFJ_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEP
 
375
REJ_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBCEP
 
376
REG_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEP
 
377
ADI_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBCEP
 
378
CRP_LIB = $(LINKLIB)OS2+$(LINKLIB)LLIBCDLL
 
379
# New executable definitions
 
380
STD_DEF = $(CC_CODE)\default.def
 
381
ARJ_DEF = $(CC_CODE)\arj.def
 
382
STB_DEF = $(CC_CODE)\sfxstub.def
 
383
SFV_DEF = $(CC_CODE)\arjsfxv.def
 
384
SFX_DEF = $(CC_CODE)\arjsfx.def
 
385
SFJ_DEF = $(CC_CODE)\arjsfxjr.def
 
386
REJ_DEF = $(CC_CODE)\rearj.def
 
387
REG_DEF = $(CC_CODE)\register.def
 
388
ADI_DEF = $(CC_CODE)\arjdisp.def
 
389
CRP_DEF = $(CC_CODE)\arjcrypt.def
 
390
!endif
 
391
LRF = echo > NUL
 
392
!endif
 
393
##
 
394
## OS/2 protected mode LX section
 
395
##
 
396
!if "$(MODE)" == "OS232"
 
397
OS_ID = OS2
 
398
!ifndef COMPILER
 
399
COMPILER = VACPP
 
400
!endif
 
401
#
 
402
# Assembly language options are the same - we'll use MASM everywhere
 
403
#
 
404
ASM = ml.exe
 
405
ASMOPT = /I$(BASEDIR) /c /Fo$@ %s
 
406
STD_ASMOPT = /DMODL=FLAT /DARJUTIL $(ASMOPT)
 
407
STB_ASMOPT = /DMODL=FLAT /DSFXSTUB $(ASMOPT)
 
408
SFV_ASMOPT = /DMODL=FLAT /DARJSFX $(ASMOPT)
 
409
SFX_ASMOPT = /DMODL=FLAT /DARJSFX $(ASMOPT)
 
410
SFJ_ASMOPT = /DMODL=FLAT /DARJSFXJR /DNO_FAR $(ASMOPT)
 
411
REJ_ASMOPT = /DMODL=FLAT /DREARJ /DNO_FAR $(ASMOPT)
 
412
REG_ASMOPT = /DMODL=FLAT /DREGISTER /DNO_FAR $(ASMOPT)
 
413
ADI_ASMOPT = /DMODL=FLAT /DARJDISP /DNO_FAR $(ASMOPT)
 
414
CRP_ASMOPT = /DMODL=FLAT $(ASMOPT)
 
415
#
 
416
# IBM C Set/2 v 2.xx or 3.65
 
417
#
 
418
!if "$(COMPILER)" == "CSET2" || "$(COMPILER)" == "VACPP"
 
419
CC_CODE = $(COMPILER)
 
420
CC = icc.exe
 
421
!ifdef LIBC
 
422
LIBCKLUDGE = /Rn /Gp /Gn- /I$(LIBCPATH)
 
423
!else
 
424
LIBCKLUDGE =
 
425
!endif
 
426
!ifdef DEBUG
 
427
CSETDBG = /Ti+
 
428
CLNKDBG = /DE /MAP:full
 
429
NP_SFX = 1
 
430
MAKESYM = 1
 
431
!else
 
432
!if "$(COMPILER)" == "CSET2"
 
433
CSETSTK = /Gs-
 
434
CSETDBG = /Gi /O /Oi-
 
435
!else
 
436
CSETDBG = /Gi
 
437
VAC_SPEED = /O /Oi-
 
438
VAC_SIZE = /Oc
 
439
!endif
 
440
!endif
 
441
!if "$(COMPILER)" == "VACPP"
 
442
VACPP_COPT = /Gs /qarch=x86 /qnoro /qtune=pentium2 /Wpro- /Wcnd-
 
443
!else
 
444
VACPP_COPT = /G4
 
445
!endif
 
446
COPT = /I$(BASEDIR) /Fo$@ /c /Sp /I. $(LIBCKLUDGE) $(CSETDBG) $(VACPP_COPT) /Tl5 %s
 
447
NEARPOPT =
 
448
!if "$(COMPILER)" == "VACPP"
 
449
LINKER = ilink.exe /NOFREE
 
450
!else
 
451
LINKER = link386.exe
 
452
!endif
 
453
# C options
 
454
STD_COPT = $(VAC_SIZE) $(CSETSTK) /DARJUTIL $(COPT)
 
455
ARJ_COPT = $(VAC_SPEED) $(CSETSTK) /DSFL=4 $(COPT)
 
456
ARJ_RECOPT = $(VAC_SIZE) $(CSETSTK) /DSFL=4 $(COPT)
 
457
SFV_COPT = $(VAC_SIZE) $(CSETSTK) /DSFL=3 $(COPT)
 
458
SFX_COPT = $(VAC_SIZE) $(CSETSTK) /DSFL=2 $(COPT)
 
459
SFJ_COPT = $(VAC_SIZE) $(CSETSTK) /DSFL=1 $(COPT)
 
460
REJ_COPT = /Gs+ /DREARJ $(COPT)
 
461
REG_COPT = $(VAC_SIZE) $(CSETSTK) /DREGISTER $(COPT)
 
462
ADI_COPT = $(VAC_SIZE) $(CSETSTK) /DARJDISP $(COPT)
 
463
FAR_COPT = $(NEARP_OPT) $(ARJ_COPT)
 
464
FDS_COPT = /NDFARD_SEG $(ARJ_COPT)
 
465
NEAR_COPT = $(CSETSTK) $(ARJ_COPT)
 
466
CRP_COPT = /Ge- $(COPT)
 
467
# LIBC hack for linking
 
468
!ifdef LIBC
 
469
!if "$(COMPILER)" == "VACPP"
 
470
LINKLIB = LIBCSI+OS2386+VACPP\VACPP365
 
471
!else
 
472
LINKLIB = LIBCS+OS2386
 
473
!endif
 
474
LINKOPT = /NOD /NOE /PMTYPE:VIO
 
475
WARPPACK = /EXEPACK:2
 
476
!else
 
477
LINKLIB =
 
478
LINKOPT = /NOE /PMTYPE:VIO
 
479
WARPPACK = /EXEPACK
 
480
!endif
 
481
# Executables
 
482
ARJ = arj.exe
 
483
ARJSFXV = arjsfxv.exe
 
484
ARJSFX = arjsfx.exe
 
485
ARJSFXJR = arjsfxjr.exe
 
486
ARJCRYPT = arjcrypt.dll
 
487
REARJ = rearj.exe
 
488
REGISTER = register.exe
 
489
ARJDISP = arjdisp.exe
 
490
POSTPROC = postproc.exe
 
491
JOIN = join.exe
 
492
MSGBIND = msgbind.exe
 
493
TODAY = today.exe
 
494
MAKE_KEY = make_key.exe
 
495
PACKAGER = packager.exe
 
496
MAKESTUB = makestub.exe
 
497
SFXSTUB = sfxstub.exe
 
498
# Linkup objects
 
499
STD_OBJ = $(WARPPACK) /STACK:18432
 
500
ARJ_OBJ = /STACK:73728
 
501
STB_OBJ = $(WARPPACK)
 
502
SFV_OBJ = $(WARPPACK) /STACK:16384
 
503
SFX_OBJ = $(WARPPACK) /STACK:16384
 
504
SFJ_OBJ = $(WARPPACK) /STACK:8192
 
505
REJ_OBJ = /STACK:73728
 
506
REG_OBJ = $(WARPPACK)
 
507
ADI_OBJ = $(WARPPACK)
 
508
CRP_OBJ = /STACK:2048
 
509
# Supplemental objects
 
510
# Libraries
 
511
STD_LIB = $(LINKLIB)
 
512
ARJ_LIB = $(LINKLIB)
 
513
STB_LIB = $(LINKLIB)
 
514
SFV_LIB = $(LINKLIB)
 
515
SFX_LIB = $(LINKLIB)
 
516
SFJ_LIB = $(LINKLIB)
 
517
REJ_LIB = $(LINKLIB)
 
518
REG_LIB = $(LINKLIB)
 
519
ADI_LIB = $(LINKLIB)
 
520
CRP_LIB = $(LINKLIB)
 
521
# New executable definitions
 
522
STD_DEF = CSET2\default.def
 
523
ARJ_DEF = CSET2\arj.def
 
524
STB_DEF = CSET2\sfxstub.def
 
525
SFV_DEF = CSET2\arjsfxv.def
 
526
SFX_DEF = CSET2\arjsfx.def
 
527
SFJ_DEF = CSET2\arjsfxjr.def
 
528
REJ_DEF = CSET2\rearj.def
 
529
REG_DEF = CSET2\register.def
 
530
ADI_DEF = CSET2\arjdisp.def
 
531
CRP_DEF = CSET2\arjcrypt.def
 
532
#
 
533
# MetaWare High C/C++ v 3.xx
 
534
#
 
535
!elseif "$(COMPILER)" == "HIGHC"
 
536
CC_CODE = $(COMPILER)
 
537
CC = hc.exe
 
538
!ifdef DEBUG
 
539
HCDBG = -g -on=Emit_names
 
540
CLNKDBG = /DE /MAP:full
 
541
NP_SFX = 1
 
542
MAKESYM = 1
 
543
!else
 
544
HCDBG =
 
545
HCOPTIM = -O7 -Hpentium -Hon=Optimize_FP -Hoff=BEHAVED
 
546
!endif
 
547
!ifdef LIBC
 
548
HCLIBC = -I$(LIBCPATH) -D__EXTENDED__
 
549
!endif
 
550
COPT = -I$(BASEDIR) -o $@ -c -I. $(HCDBG) $(HCLIBC) -Hpragma=Offwarn(553) %s
 
551
NEARPOPT =
 
552
LINKER = link386.exe
 
553
# C options
 
554
STD_COPT = -DARJUTIL $(HCOPTIM) $(COPT)
 
555
ARJ_COPT = -DSFL=4 $(HCOPTIM) $(COPT)
 
556
SFV_COPT = -DSFL=3 $(HCOPTIM) $(COPT)
 
557
SFX_COPT = -DSFL=2 $(HCOPTIM) $(COPT)
 
558
SFJ_COPT = -DSFL=1 $(HCOPTIM) $(COPT)
 
559
REJ_COPT = -Hon=Check_stack -DREARJ $(HCOPTIM) $(COPT)
 
560
REG_COPT = -DREGISTER $(HCOPTIM) $(COPT)
 
561
ADI_COPT = -DARJDISP $(HCOPTIM) $(COPT)
 
562
FAR_COPT = $(NEARP_OPT) $(HCOPTIM) $(ARJ_COPT)
 
563
FDS_COPT = $(HCOPTIM) $(ARJ_COPT)
 
564
NEAR_COPT = $(HCOPTIM) $(ARJ_COPT)
 
565
CRP_COPT = $(COPT)
 
566
# LIBC hack for linking
 
567
!ifdef LIBC
 
568
LINKLIB = HIGHC\HCD_OMF+OS2386+LIBCSS+HC
 
569
LINKOPT = /NOD /NOE /PMTYPE:VIO
 
570
WARPPACK = /EXEPACK:2
 
571
!else
 
572
LINKLIB = HC+HCNA+OS2386
 
573
LINKOPT = /NOE /PMTYPE:VIO
 
574
WARPPACK = /EXEPACK
 
575
!endif
 
576
#
 
577
# OpenWatcom C/C++
 
578
#
 
579
!elseif "$(COMPILER)" == "WATCOM"
 
580
CC_CODE = WCC2_32
 
581
CC = wcc386.exe
 
582
!ifdef DEBUG
 
583
WCCDBG = -d2 -en
 
584
CLNKDBG = /DE
 
585
NP_SFX = 1
 
586
MAKESYM = 1
 
587
!else
 
588
WCCDBG = -5
 
589
WCCSIZE = -os
 
590
# This yields top speed but is pretty unsafe. See below.
 
591
WCCSPD = -otx
 
592
!endif
 
593
!ifdef LIBC
 
594
WCCLIBC = -i=$(LIBCPATH) -D__EXTENDED__ -zl -D_LNK_CONV=_System
 
595
!endif
 
596
COPT = -i=$(BASEDIR) -wcd=107 -fo=$@ -s -i=. $(WCCDBG) $(WCCLIBC) -ze %s
 
597
NEARPOPT =
 
598
LINKER = link386.exe
 
599
# C options
 
600
STD_COPT = -DARJUTIL $(WCCSIZE) $(COPT)
 
601
ARJ_COPT = -DSFL=4 $(WCCSIZE) $(COPT)
 
602
# This is a Watcom speed freak. Now we just have to set it by default.
 
603
ARJ_COPTS = -DSFL=4 $(WCCSPD) $(COPT)
 
604
SFV_COPT = -DSFL=3 $(WCCSIZE) $(COPT)
 
605
SFX_COPT = -DSFL=2 $(WCCSIZE) $(COPT)
 
606
SFJ_COPT = -DSFL=1 $(WCCSIZE) $(COPT)
 
607
REJ_COPT = -DREARJ $(WCCSIZE) $(COPT)
 
608
REG_COPT = -DREGISTER $(WCCSIZE) $(COPT)
 
609
ADI_COPT = -DARJDISP $(WCCSIZE) $(COPT)
 
610
FAR_COPT = $(NEARP_OPT) $(ARJ_COPT)
 
611
FDS_COPT = $(ARJ_COPT)
 
612
# One more fix for Watcom.
 
613
NEAR_COPT = $(ARJ_COPTS)
 
614
CRP_COPT = $(WCCSIZE) $(COPT)
 
615
# LIBC hack for linking
 
616
!ifdef LIBC
 
617
LINKLIB = WCC2_32\OWATCOMR+OS2386+LIBCSS
 
618
LINKOPT = /MAP:full /NOE /PMTYPE:VIO
 
619
WARPPACK = /EXEPACK:2
 
620
!else
 
621
!error Not supported!
 
622
LINKLIB = WCC2_32\OWATCOMC+OS2386+clib3r
 
623
LINKOPT = /MAP:full /NOD /NOE /PMTYPE:VIO
 
624
WARPPACK = /EXEPACK
 
625
!endif
 
626
!endif
 
627
# Linkup objects
 
628
STD_OBJ = $(CLNKDBG) $(WARPPACK) /STACK:18432
 
629
ARJ_OBJ = $(CLNKDBG) /STACK:73728
 
630
STB_OBJ = $(CLNKDBG) $(WARPPACK)
 
631
SFV_OBJ = $(CLNKDBG) $(WARPPACK) /STACK:16384
 
632
SFX_OBJ = $(CLNKDBG) $(WARPPACK) /STACK:16384
 
633
SFJ_OBJ = $(CLNKDBG) $(WARPPACK) /STACK:8192
 
634
REJ_OBJ = $(CLNKDBG) /STACK:73728
 
635
REG_OBJ = $(CLNKDBG) $(WARPPACK) /STACK:8192
 
636
ADI_OBJ = $(CLNKDBG) $(WARPPACK) /STACK:16384
 
637
CRP_OBJ = $(CLNKDBG) /STACK:2048
 
638
# Supplemental objects
 
639
# Libraries
 
640
STD_LIB = $(LINKLIB)
 
641
ARJ_LIB = $(LINKLIB)
 
642
STB_LIB = $(LINKLIB)
 
643
SFV_LIB = $(LINKLIB)
 
644
SFX_LIB = $(LINKLIB)
 
645
SFJ_LIB = $(LINKLIB)
 
646
REJ_LIB = $(LINKLIB)
 
647
REG_LIB = $(LINKLIB)
 
648
ADI_LIB = $(LINKLIB)
 
649
CRP_LIB = $(LINKLIB)
 
650
# New executable definitions
 
651
STD_DEF = CSET2\default.def
 
652
ARJ_DEF = CSET2\arj.def
 
653
STB_DEF = CSET2\sfxstub.def
 
654
SFV_DEF = CSET2\arjsfxv.def
 
655
SFX_DEF = CSET2\arjsfx.def
 
656
SFJ_DEF = CSET2\arjsfxjr.def
 
657
REJ_DEF = CSET2\rearj.def
 
658
REG_DEF = CSET2\register.def
 
659
ADI_DEF = CSET2\arjdisp.def
 
660
CRP_DEF = CSET2\arjcrypt.def
 
661
# Executables
 
662
ARJ = arj.exe
 
663
ARJSFXV = arjsfxv.exe
 
664
ARJSFX = arjsfx.exe
 
665
ARJSFXJR = arjsfxjr.exe
 
666
ARJCRYPT = arjcrypt.dll
 
667
REARJ = rearj.exe
 
668
REGISTER = register.exe
 
669
ARJDISP = arjdisp.exe
 
670
POSTPROC = postproc.exe
 
671
JOIN = join.exe
 
672
MSGBIND = msgbind.exe
 
673
TODAY = today.exe
 
674
MAKE_KEY = make_key.exe
 
675
PACKAGER = packager.exe
 
676
MAKESTUB = makestub.exe
 
677
SFXSTUB = sfxstub.exe
 
678
LRF = echo > NUL
 
679
!endif
 
680
##
 
681
## Win32 PE section
 
682
##
 
683
!if "$(MODE)" == "WIN32"
 
684
OS_ID = WIN32
 
685
!ifndef COMPILER
 
686
COMPILER = MSVC
 
687
!endif
 
688
# No assembler inlays anymore (use portable C snippets as in EMX)
 
689
NO_ASM = 1
 
690
# For the free-form COFF MS Linker:
 
691
NEWLINK = 1
 
692
#
 
693
# Visual C++ v 2.20 (9.10)
 
694
#
 
695
!if "$(COMPILER)" == "MSVC"
 
696
CC_CODE = $(COMPILER)
 
697
CC = cl.exe
 
698
!ifdef DEBUG
 
699
ADD_COPT = /Ge /Zi /Od
 
700
ADD_LINKOPT = /DEBUG
 
701
!else
 
702
MSVC_SIZE = /Os
 
703
MSVC_SPEED = /Ot
 
704
ADD_COPT = /G4 /Oy
 
705
ADD_LINKOPT = /RELEASE /DEFAULTLIB:NTDLL
 
706
!endif
 
707
!ifdef LIBC
 
708
LIBC_COPT = /MD
 
709
!else
 
710
LIBC_COPT = /ML
 
711
!endif
 
712
COPT = /c /I$(BASEDIR) /W2 /GX $(LIBC_COPT) $(ADD_COPT) /I. /Fo$@ %s
 
713
LINKER = link.exe
 
714
# C options
 
715
STD_COPT = $(MSVC_SIZE) $(CSETSTK) /DARJUTIL $(COPT)
 
716
ARJ_COPT = $(MSVC_SPEED) $(CSETSTK) /DSFL=4 $(COPT)
 
717
ARJ_RECOPT = $(MSVC_SIZE) $(CSETSTK) /DSFL=4 $(COPT)
 
718
SFV_COPT = $(MSVC_SIZE) $(CSETSTK) /DSFL=3 $(COPT)
 
719
SFX_COPT = $(MSVC_SIZE) $(CSETSTK) /DSFL=2 $(COPT)
 
720
SFJ_COPT = $(MSVC_SIZE) $(CSETSTK) /DSFL=1 $(COPT)
 
721
REJ_COPT = /Ge /DREARJ $(COPT)
 
722
REG_COPT = $(MSVC_SIZE) $(CSETSTK) /DREGISTER $(COPT)
 
723
ADI_COPT = $(MSVC_SIZE) $(CSETSTK) /DARJDISP $(COPT)
 
724
FAR_COPT = $(NEARP_OPT) $(ARJ_COPT)
 
725
FDS_COPT = $(ARJ_COPT)
 
726
NEAR_COPT = $(CSETSTK) $(ARJ_COPT)
 
727
CRP_COPT = /LD /DDLL $(COPT)
 
728
LINKLIB = largeint.lib
 
729
LINKOPT = $(ADD_LINKOPT)
 
730
# Executables
 
731
ARJ = arj.exe
 
732
ARJSFXV = arjsfxv.exe
 
733
ARJSFX = arjsfx.exe
 
734
ARJSFXJR = arjsfxjr.exe
 
735
ARJCRYPT = arjcrypt.dll
 
736
REARJ = rearj.exe
 
737
REGISTER = register.exe
 
738
ARJDISP = arjdisp.exe
 
739
POSTPROC = postproc.exe
 
740
JOIN = join.exe
 
741
MSGBIND = msgbind.exe
 
742
TODAY = today.exe
 
743
MAKE_KEY = make_key.exe
 
744
PACKAGER = packager.exe
 
745
MAKESTUB = makestub.exe
 
746
SFXSTUB = sfxstub.exe
 
747
# Linkup objects
 
748
STD_OBJ = /SUBSYSTEM:CONSOLE,3.10 /STACK:65536,32768
 
749
ARJ_OBJ = /SUBSYSTEM:CONSOLE,3.10 /STACK:73728,16384
 
750
STB_OBJ = /SUBSYSTEM:CONSOLE,3.10
 
751
SFV_OBJ = /SUBSYSTEM:CONSOLE,3.10 /STACK:65536,16384
 
752
SFX_OBJ = /SUBSYSTEM:CONSOLE,3.10 /STACK:65536,16384
 
753
SFJ_OBJ = /SUBSYSTEM:CONSOLE,3.10 /STACK:65536,8192
 
754
REJ_OBJ = /SUBSYSTEM:CONSOLE,3.10 /STACK:73728,24576
 
755
REG_OBJ = /SUBSYSTEM:CONSOLE,3.10
 
756
ADI_OBJ = /SUBSYSTEM:CONSOLE,3.10
 
757
CRP_OBJ = /SUBSYSTEM:WINDOWS,3.10 /DLL
 
758
# Supplemental objects
 
759
# Libraries
 
760
STD_LIB = $(LINKLIB)
 
761
ARJ_LIB = $(LINKLIB)
 
762
STB_LIB = $(LINKLIB)
 
763
SFV_LIB = $(LINKLIB)
 
764
SFX_LIB = $(LINKLIB)
 
765
SFJ_LIB = $(LINKLIB)
 
766
REJ_LIB = $(LINKLIB)
 
767
REG_LIB = $(LINKLIB)
 
768
ADI_LIB = $(LINKLIB)
 
769
CRP_LIB = $(LINKLIB)
 
770
# Only declare some exports for the DLL
 
771
CRP_DEF = /DEF:WIN32\arjcrypt.def
 
772
!endif
 
773
!endif
 
774
 
 
775
!ifndef NEWLINK
 
776
LAST_LINKOPT = ;
 
777
!else
 
778
MAP_LINKOPT = /MAP:
 
779
OUT_LINKOPT = /OUT:
 
780
LRF = echo
 
781
!endif
 
782
 
 
783
# Buggy optimizer treatment section:
 
784
#
 
785
# + Options for RECOVERY.C (the VisualAge C++ optimizer fails here)
 
786
 
 
787
!ifndef ARJ_RECOPT
 
788
ARJ_RECOPT = $(ARJ_COPT)
 
789
!endif
 
790
 
 
791
# + ARJ speed-optimized modules (encoding/decoding/security).
 
792
 
 
793
!ifndef ARJ_COPTS
 
794
ARJ_COPTS = $(ARJ_COPT)
 
795
!endif
 
796
 
 
797
# Base directory macros (one in UNIX format, for preprocessors to be happy)
 
798
 
 
799
BASEDIR = $(CC_CODE)\$(LOCALE)\$(DEBUG_SM)$(PACKAGE)
 
800
BASEDIR_T = $(CC_CODE)\$(LOCALE)\$(DEBUG_SM)$(PACKAGE)^\
 
801
BASEDIR_P = $(CC_CODE)\$(LOCALE)\$(DEBUG_SM)c
 
802
BASEDIR_U = $(CC_CODE)/$(LOCALE)/$(DEBUG_SM)$(PACKAGE)/
 
803
 
 
804
.SUFFIXES: .c .asm .obj .exe
 
805
 
 
806
#
 
807
# Main dependency tree
 
808
#
 
809
 
 
810
all:                        init                            \
 
811
                            timestamp                       \
 
812
                            $(BASEDIR)\arj\$(ARJ)           \
 
813
                            $(BASEDIR)\arjcrypt\$(ARJCRYPT) \
 
814
                            $(BASEDIR)\rearj\$(REARJ)       \
 
815
                            $(BASEDIR)\register\$(REGISTER) \
 
816
                            $(BASEDIR)\arjdisp\$(ARJDISP)   \
 
817
                            $(BASEDIR)\tools\$(PACKAGER)    \
 
818
!ifdef COMMERCIAL
 
819
                            $(BASEDIR)\tools\$(MAKE_KEY)    \
 
820
!endif
 
821
                            dispose
 
822
 
 
823
#
 
824
# Pre-compile initialization
 
825
#
 
826
 
 
827
init:
 
828
 @if exist $(BASEDIR_T)stubincl.inc del $(BASEDIR_T)stubincl.inc
 
829
# Create C defines file
 
830
 @echo /* This is an automatically generated file */ >$(C_DEFS)
 
831
!ifdef COMMERCIAL
 
832
 @echo #define COMMERCIAL >>$(C_DEFS)
 
833
!endif
 
834
!ifdef LIBC
 
835
 @echo #define LIBC >>$(C_DEFS)
 
836
!endif
 
837
!ifdef MAKESYM
 
838
 @echo #define MAKESYM >>$(C_DEFS)
 
839
!endif
 
840
!ifdef NP_SFX
 
841
 @echo #define NP_SFX >>$(C_DEFS)
 
842
!endif
 
843
!ifdef DEBUG
 
844
 @echo #define DEBUG >>$(C_DEFS)
 
845
!endif
 
846
!ifdef FORCE_MSGRAPH
 
847
 @echo #define FORCE_MSGRAPH >>$(C_DEFS)
 
848
!endif
 
849
!ifdef USE_COLORS
 
850
 @echo #define USE_COLORS >>$(C_DEFS)
 
851
!endif
 
852
 @echo #define LOCALE LANG_$(LOCALE) >>$(C_DEFS)
 
853
 @echo #define LOCALE_DESC "$(LOCALE)" >>$(C_DEFS)
 
854
!if "$(COMPILER)" != "HIGHC"
 
855
 @echo #define HAVE_MIN >>$(C_DEFS)
 
856
 @echo #define HAVE_MAX >>$(C_DEFS)
 
857
!endif
 
858
 @echo #define HAVE_STRLWR >>$(C_DEFS)
 
859
 @echo #define HAVE_STRUPR >>$(C_DEFS)
 
860
# Create ASM defines file
 
861
 @echo ; This is an automatically generated file >$(ASM_DEFS)
 
862
!ifndef COMMERCIAL
 
863
 @echo NC_CRC EQU 1>>$(ASM_DEFS)
 
864
!endif
 
865
!ifdef DEBUG
 
866
 @echo DEBUG EQU 1>>$(ASM_DEFS)
 
867
!endif
 
868
!if "$(MODE)" == "OS232"
 
869
 @echo FLATMODE EQU 1>>$(ASM_DEFS)
 
870
!endif
 
871
!if "$(COMPILER)" == "MSC6"||"$(COMPILER)" == "MSC7"||"$(COMPILER)" == "MSVC10"||"$(COMPILER)" == "MSVC15"||"$(COMPILER)" == "QC25"
 
872
 @echo MSC EQU 1>>$(ASM_DEFS)
 
873
!endif
 
874
# Environment-specific preparations
 
875
!if "$(MODE)" == "OS216"||"$(MODE)" == "OS232"
 
876
!if "$(COMPILER)" != "HIGHC"
 
877
 @echo #define _OS2 >>$(C_DEFS)
 
878
!endif
 
879
 @echo _OS2 EQU 1 >>$(ASM_DEFS)
 
880
!endif
 
881
!if "$(COMPILER)" == "MSC6"
 
882
!if "$(MODE)" == "DOS16"
 
883
 @SET CL=/B1C1L /I. /c /Zp /Gs
 
884
!else if "$(MODE)" == "OS216"
 
885
 @SET CL=/B2C2L /c /G2 /Zp /Gs /Lp /Zl
 
886
!endif
 
887
!endif
 
888
 
 
889
#
 
890
# Update timestamp file
 
891
#
 
892
 
 
893
timestamp: $(BASEDIR)\tools\$(TODAY)
 
894
 $(BASEDIR)\tools\$(TODAY) $(LOCALE) $(BASEDIR)
 
895
 
 
896
#
 
897
# Final cleanup
 
898
#
 
899
 
 
900
dispose:
 
901
 @if exist $(BASEDIR_T)stubincl.inc del $(BASEDIR_T)stubincl.inc
 
902
 @if exist $(C_DEFS) del $(C_DEFS)
 
903
 @if exist $(ASM_DEFS) del $(ASM_DEFS)
 
904
!if "$(COMPILER)" == "MSC6"
 
905
 @SET CL=
 
906
!endif
 
907
 
 
908
#
 
909
# Message resource compiler (must be the FIRST program to compile)
 
910
# Timestamp utility
 
911
# Comment creation utility
 
912
# Postprocessing utility
 
913
# Join utility
 
914
# Stub message section converter
 
915
# Packaging tool
 
916
#
 
917
 
 
918
$(BASEDIR)\tools\$(MSGBIND): \
 
919
                         $(BASEDIR)\tools\msgbind.obj \
 
920
                         $(BASEDIR)\tools\filemode.obj \
 
921
                         $(BASEDIR)\tools\arjdata.obj \
 
922
                         $(BASEDIR)\tools\crc32.obj
 
923
 $(LRF) @<<$(BASEDIR_T)msgbind.lrf
 
924
!ifdef NEWLINK
 
925
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
926
)
 
927
!else
 
928
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
929
)
 
930
!endif
 
931
$(OUT_LINKOPT)$@
 
932
$(MAP_LINKOPT)$(@R).map
 
933
$(STD_LIB)
 
934
<<
 
935
 $(LINKER) @$(BASEDIR_T)msgbind.lrf$(LAST_LINKOPT)
 
936
 if exist $(BASEDIR_T)msgbind.lrf del $(BASEDIR_T)msgbind.lrf
 
937
 
 
938
$(BASEDIR)\tools\$(TODAY): \
 
939
                         $(BASEDIR)\tools\today.obj \
 
940
                         $(BASEDIR)\tools\filemode.obj
 
941
 $(LRF) @<<$(BASEDIR_T)today.lrf
 
942
!ifdef NEWLINK
 
943
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
944
)
 
945
!else
 
946
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
947
)
 
948
!endif
 
949
$(OUT_LINKOPT)$@
 
950
$(MAP_LINKOPT)$(@R).map
 
951
$(STD_LIB)
 
952
<<
 
953
 $(LINKER) @$(BASEDIR_T)today.lrf$(LAST_LINKOPT)
 
954
 if exist $(BASEDIR_T)today.lrf del $(BASEDIR_T)today.lrf
 
955
 
 
956
$(BASEDIR)\tools\$(MAKE_KEY): \
 
957
                         $(BASEDIR)\tools\make_key.obj \
 
958
                         $(BASEDIR)\tools\crc32.obj    \
 
959
                         $(BASEDIR)\tools\misc.obj     \
 
960
                         $(BASEDIR)\tools\arj_proc.obj \
 
961
                         $(BASEDIR)\tools\arjsec_h.obj \
 
962
                         $(BASEDIR)\tools\arjsec_l.obj
 
963
 $(LRF) @<<$(BASEDIR_T)make_key.lrf
 
964
!ifdef NEWLINK
 
965
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
966
)
 
967
!else
 
968
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
969
)
 
970
!endif
 
971
$(OUT_LINKOPT)$@
 
972
$(MAP_LINKOPT)$(@R).map
 
973
$(STD_LIB)
 
974
<<
 
975
 $(LINKER) @$(BASEDIR_T)make_key.lrf$(LAST_LINKOPT)
 
976
 if exist $(BASEDIR_T)make_key.lrf del $(BASEDIR_T)make_key.lrf
 
977
 
 
978
$(BASEDIR)\tools\$(POSTPROC): \
 
979
                         $(BASEDIR)\tools\postproc.obj \
 
980
                         $(BASEDIR)\tools\filemode.obj \
 
981
                         $(BASEDIR)\tools\crc32.obj
 
982
 $(LRF) @<<$(BASEDIR_T)postproc.lrf
 
983
!ifdef NEWLINK
 
984
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
985
)
 
986
!else
 
987
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
988
)
 
989
!endif
 
990
$(OUT_LINKOPT)$@
 
991
$(MAP_LINKOPT)$(@R).map
 
992
$(STD_LIB)
 
993
$(STD_DEF)
 
994
<<
 
995
 $(LINKER) @$(BASEDIR_T)postproc.lrf$(LAST_LINKOPT)
 
996
 if exist $(BASEDIR_T)postproc.lrf del $(BASEDIR_T)postproc.lrf
 
997
 
 
998
$(BASEDIR)\tools\$(JOIN): \
 
999
                         $(BASEDIR)\tools\join.obj \
 
1000
                         $(BASEDIR)\tools\filemode.obj
 
1001
 $(LRF) @<<$(BASEDIR_T)join.lrf
 
1002
!ifdef NEWLINK
 
1003
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
1004
)
 
1005
!else
 
1006
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
1007
)
 
1008
!endif
 
1009
$(OUT_LINKOPT)$@
 
1010
$(MAP_LINKOPT)$(@R).map
 
1011
$(STD_LIB)
 
1012
$(STD_DEF)
 
1013
<<
 
1014
 $(LINKER) @$(BASEDIR_T)join.lrf$(LAST_LINKOPT)
 
1015
 if exist $(BASEDIR_T)join.lrf del $(BASEDIR_T)join.lrf
 
1016
 
 
1017
$(BASEDIR)\tools\$(MAKESTUB): \
 
1018
                         $(BASEDIR)\tools\makestub.obj \
 
1019
                         $(BASEDIR)\tools\filemode.obj \
 
1020
                         $(BASEDIR)\tools\nmsg_stb.obj
 
1021
 $(LRF) @<<$(BASEDIR_T)makestub.lrf
 
1022
!ifdef NEWLINK
 
1023
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
1024
)
 
1025
!else
 
1026
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
1027
)
 
1028
!endif
 
1029
$(OUT_LINKOPT)$@
 
1030
$(MAP_LINKOPT)$(@R).map
 
1031
$(STD_LIB)
 
1032
$(STD_DEF)
 
1033
<<
 
1034
 $(LINKER) @$(BASEDIR_T)makestub.lrf$(LAST_LINKOPT)
 
1035
 if exist $(BASEDIR_T)makestub.lrf del $(BASEDIR_T)makestub.lrf
 
1036
 
 
1037
$(BASEDIR)\tools\$(PACKAGER): \
 
1038
                         $(BASEDIR)\tools\packager.obj \
 
1039
                         $(BASEDIR)\tools\filemode.obj \
 
1040
                         $(BASEDIR)\tools\arjdata.obj
 
1041
 $(LRF) @<<$(BASEDIR_T)packager.lrf
 
1042
!ifdef NEWLINK
 
1043
$(LINKOPT) $(STD_OBJ) $(**: = ^
 
1044
)
 
1045
!else
 
1046
$(LINKOPT) $(STD_OBJ) $(**: = +^
 
1047
)
 
1048
!endif
 
1049
$(OUT_LINKOPT)$@
 
1050
$(MAP_LINKOPT)$(@R).map
 
1051
$(STD_LIB)
 
1052
<<
 
1053
 $(LINKER) @$(BASEDIR_T)packager.lrf$(LAST_LINKOPT)
 
1054
 if exist $(BASEDIR_T)packager.lrf del $(BASEDIR_T)packager.lrf
 
1055
 
 
1056
$(BASEDIR)\tools\msgbind.obj: msgbind.c
 
1057
 $(CC) $(STD_COPT)
 
1058
$(BASEDIR)\tools\today.obj: today.c
 
1059
 $(CC) $(STD_COPT)
 
1060
$(BASEDIR)\tools\make_key.obj: make_key.c
 
1061
 $(CC) $(STD_COPT)
 
1062
$(BASEDIR)\tools\postproc.obj: postproc.c
 
1063
 $(CC) $(STD_COPT)
 
1064
$(BASEDIR)\tools\join.obj: join.c
 
1065
 $(CC) $(STD_COPT)
 
1066
$(BASEDIR)\tools\makestub.obj: makestub.c $(BASEDIR)\nmsg_stb.c
 
1067
 $(CC) $(STD_COPT)
 
1068
$(BASEDIR)\tools\packager.obj: packager.c
 
1069
 $(CC) $(STD_COPT)
 
1070
 
 
1071
$(BASEDIR)\tools\arjdata.obj: arjdata.c
 
1072
 $(CC) $(STD_COPT)
 
1073
$(BASEDIR)\tools\filemode.obj: filemode.c
 
1074
 $(CC) $(STD_COPT)
 
1075
$(BASEDIR)\tools\crc32.obj: crc32.c
 
1076
 $(CC) $(STD_COPT)
 
1077
$(BASEDIR)\tools\misc.obj: misc.c
 
1078
 $(CC) $(STD_COPT)
 
1079
$(BASEDIR)\tools\arjsec_h.obj: arjsec_h.c
 
1080
 $(CC) $(STD_COPT)
 
1081
$(BASEDIR)\tools\arjsec_l.obj: arjsec_l.c
 
1082
 $(CC) $(STD_COPT)
 
1083
$(BASEDIR)\tools\nmsg_stb.obj: $(BASEDIR)\nmsg_stb.c
 
1084
 $(CC) $(STD_COPT)
 
1085
 
 
1086
$(BASEDIR)\nmsg_stb.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1087
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_stb $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1088
 
 
1089
#
 
1090
# ARJCRYPT utility
 
1091
#
 
1092
 
 
1093
CRP_OBJS = $(BASEDIR)\arjcrypt\arjcrypt.obj \
 
1094
           $(BASEDIR)\arjcrypt\integr.obj   \
 
1095
           $(BASEDIR)\arjcrypt\gost.obj     \
 
1096
           $(BASEDIR)\arjcrypt\gost_t.obj   \
 
1097
           $(BASEDIR)\arjcrypt\nmsg_crp.obj \
 
1098
           $(CRP_OBJS_E)
 
1099
$(BASEDIR)\arjcrypt\$(ARJCRYPT): $(CRP_OBJS) \
 
1100
                                 $(BASEDIR)\tools\$(POSTPROC)
 
1101
 $(LRF) @<<$(BASEDIR_T)arjcrypt.lrf
 
1102
!ifdef NEWLINK
 
1103
$(LINKOPT) $(CRP_OBJ) $(CRP_OBJS: = ^
 
1104
)
 
1105
!else
 
1106
$(LINKOPT) $(CRP_OBJ) $(CRP_OBJS: = +^
 
1107
)
 
1108
!endif
 
1109
$(OUT_LINKOPT)$@
 
1110
$(MAP_LINKOPT)$(@R).map
 
1111
$(CRP_LIB)
 
1112
$(CRP_DEF)
 
1113
<<
 
1114
 $(LINKER) @$(BASEDIR_T)arjcrypt.lrf$(LAST_LINKOPT)
 
1115
 if exist $(BASEDIR_T)arjcrypt.lrf del $(BASEDIR_T)arjcrypt.lrf
 
1116
 $(BASEDIR)\tools\postproc $(BASEDIR)\arjcrypt\$(ARJCRYPT)
 
1117
 
 
1118
!ifndef NO_ASM
 
1119
$(BASEDIR)\arjcrypt\integr.obj: integr.asm
 
1120
 $(ASM) $(CRP_ASMOPT)
 
1121
!else
 
1122
$(BASEDIR)\arjcrypt\integr.obj: integr.c
 
1123
 $(CC) $(CRP_COPT)
 
1124
!endif
 
1125
$(BASEDIR)\arjcrypt\gost.obj: gost.c
 
1126
 $(CC) $(CRP_COPT)
 
1127
$(BASEDIR)\arjcrypt\gost_t.obj: gost_t.c
 
1128
 $(CC) $(CRP_COPT)
 
1129
$(BASEDIR)\arjcrypt\arjcrypt.obj: arjcrypt.c $(BASEDIR)\nmsg_crp.c
 
1130
 $(CC) $(CRP_COPT)
 
1131
!if "$(MODE)"=="DOS16"
 
1132
$(BASEDIR)\arjcrypt\det_x86.obj: det_x86.asm
 
1133
 $(ASM) $(CRP_ASMOPT)
 
1134
!endif
 
1135
$(BASEDIR)\arjcrypt\nmsg_crp.obj: $(BASEDIR)\nmsg_crp.c
 
1136
 $(CC) $(CRP_COPT)
 
1137
!if "$(MODE)"=="DOS16"
 
1138
$(BASEDIR)\arjcrypt\gost_asm.obj: gost_asm.asm
 
1139
 $(ASM) $(CRP_ASMOPT)
 
1140
!endif
 
1141
arjcrypt.c: $(BASEDIR)\nmsg_crp.c
 
1142
$(BASEDIR)\nmsg_crp.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1143
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_crp $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1144
 
 
1145
#
 
1146
# SFX stub
 
1147
#
 
1148
 
 
1149
STB_OBJS = $(BASEDIR)\sfxstub\sfxstub.obj \
 
1150
!ifdef NO_ASM
 
1151
$(BASEDIR)\tools\nmsg_stb.obj
 
1152
!endif
 
1153
 
 
1154
$(BASEDIR)\sfxstub\$(SFXSTUB): $(STB_OBJS)
 
1155
 $(LRF) @<<$(BASEDIR_T)sfxstub.lrf
 
1156
!ifdef NEWLINK
 
1157
$(LINKOPT) $(STB_OBJ) $(STB_OBJS: = ^
 
1158
)
 
1159
!else
 
1160
$(LINKOPT) $(STB_OBJ) $(STB_OBJS: = +^
 
1161
)
 
1162
!endif
 
1163
$(OUT_LINKOPT)$@
 
1164
$(MAP_LINKOPT)$(@R).map
 
1165
$(STB_LIB)
 
1166
$(STB_DEF)
 
1167
<<
 
1168
 $(LINKER) @$(BASEDIR_T)sfxstub.lrf$(LAST_LINKOPT)
 
1169
 if exist $(BASEDIR_T)sfxstub.lrf del $(BASEDIR_T)sfxstub.lrf
 
1170
 $(BASEDIR)\tools\postproc $(BASEDIR)\sfxstub\$(SFXSTUB) -sfx
 
1171
 
 
1172
!ifndef NO_ASM
 
1173
$(BASEDIR)\sfxstub\sfxstub.obj: sfxstub.asm $(BASEDIR)\tools\$(MAKESTUB)
 
1174
 $(BASEDIR)\tools\$(MAKESTUB) $(BASEDIR_T)stubincl.inc
 
1175
 $(ASM) $(STB_ASMOPT)
 
1176
!else
 
1177
$(BASEDIR)\sfxstub\sfxstub.obj: sfxstub.c $(BASEDIR)\tools\nmsg_stb.obj $(BASEDIR)\tools\$(POSTPROC)
 
1178
 $(CC) -I$(BASEDIR) -DSFXSTUB $(COPT)
 
1179
!endif
 
1180
 
 
1181
#
 
1182
# ARJSFXV module
 
1183
#
 
1184
 
 
1185
SFV_OBJS = $(BASEDIR)\arjsfxv\arjsfxv.obj  \
 
1186
           $(BASEDIR)\arjsfxv\sfx_id.obj   \
 
1187
           $(BASEDIR)\arjsfxv\filemode.obj \
 
1188
           $(BASEDIR)\arjsfxv\date_sig.obj \
 
1189
           $(BASEDIR)\arjsfxv\fmsg_sfv.obj \
 
1190
           $(BASEDIR)\arjsfxv\imsg_sfv.obj \
 
1191
           $(BASEDIR)\arjsfxv\nmsg_sfv.obj \
 
1192
           $(BASEDIR)\arjsfxv\decode.obj   \
 
1193
           $(BASEDIR)\arjsfxv\fardata.obj  \
 
1194
           $(BASEDIR)\arjsfxv\arj_user.obj \
 
1195
           $(BASEDIR)\arjsfxv\arj_arcv.obj \
 
1196
           $(BASEDIR)\arjsfxv\arj_file.obj \
 
1197
           $(BASEDIR)\arjsfxv\crc32.obj    \
 
1198
           $(BASEDIR)\arjsfxv\misc.obj     \
 
1199
           $(BASEDIR)\arjsfxv\debug.obj    \
 
1200
           $(BASEDIR)\arjsfxv\arj_proc.obj \
 
1201
           $(BASEDIR)\arjsfxv\environ.obj  \
 
1202
           $(BASEDIR)\arjsfxv\ntstream.obj \
 
1203
           $(BASEDIR)\arjsfxv\ea_mgr.obj   \
 
1204
           $(BASEDIR)\arjsfxv\uxspec.obj   \
 
1205
           $(BASEDIR)\arjsfxv\ext_hdr.obj  \
 
1206
           $(BASEDIR)\arjsfxv\arjtypes.obj \
 
1207
           $(BASEDIR)\arjsfxv\exe_sear.obj \
 
1208
           $(BASEDIR)\arjsfxv\chk_fmsg.obj \
 
1209
           $(BASEDIR)\arjsfxv\filelist.obj \
 
1210
           $(BASEDIR)\arjsfxv\arjsec_h.obj \
 
1211
!ifdef COMMERCIAL
 
1212
           $(BASEDIR)\arjsfxv\arjsec_l.obj \
 
1213
!endif
 
1214
           $(BASEDIR)\arjsfxv\garble.obj   \
 
1215
           $(BASEDIR)\arjsfxv\scrnio.obj   \
 
1216
           $(BASEDIR)\arjsfxv\ansi.obj     \
 
1217
           $(BASEDIR)\arjsfxv\externs.obj
 
1218
 
 
1219
$(BASEDIR)\arjsfxv\$(ARJSFXV): $(SFV_OBJS) \
 
1220
                                $(BASEDIR)\tools\$(POSTPROC)
 
1221
 $(LRF) @<<$(BASEDIR_T)arjsfxv.lrf
 
1222
!ifdef NEWLINK
 
1223
$(LINKOPT) $(SFV_OBJ) $(SFV_OBJS: = ^
 
1224
)
 
1225
!else
 
1226
$(LINKOPT) $(SFV_OBJ) $(SFV_OBJS: = +^
 
1227
)
 
1228
!endif
 
1229
$(OUT_LINKOPT)$@
 
1230
$(MAP_LINKOPT)$(@R).map
 
1231
$(SFV_LIB)
 
1232
$(SFV_DEF)
 
1233
<<
 
1234
 $(LINKER) @$(BASEDIR_T)arjsfxv.lrf$(LAST_LINKOPT)
 
1235
 if exist $(BASEDIR_T)arjsfxv.lrf del $(BASEDIR_T)arjsfxv.lrf
 
1236
 $(BASEDIR)\tools\postproc $(BASEDIR)\arjsfxv\$(ARJSFXV) -sfx
 
1237
 
 
1238
!ifndef NO_ASM
 
1239
$(BASEDIR)\arjsfxv\sfx_id.obj: sfx_id.asm
 
1240
 $(ASM) $(SFV_ASMOPT)
 
1241
!else
 
1242
$(BASEDIR)\arjsfxv\sfx_id.obj: sfx_id.c
 
1243
 $(CC) $(SFV_COPT)
 
1244
!endif
 
1245
$(BASEDIR)\arjsfxv\filemode.obj: filemode.c
 
1246
 $(CC) $(SFV_COPT)
 
1247
$(BASEDIR)\arjsfxv\date_sig.obj: $(BASEDIR)\date_sig.c
 
1248
 $(CC) $(SFV_COPT)
 
1249
$(BASEDIR)\arjsfxv\fmsg_sfv.obj: $(BASEDIR)\fmsg_sfv.c
 
1250
 $(CC) $(SFV_COPT)
 
1251
$(BASEDIR)\arjsfxv\imsg_sfv.obj: $(BASEDIR)\imsg_sfv.c
 
1252
 $(CC) $(SFV_COPT)
 
1253
$(BASEDIR)\arjsfxv\nmsg_sfv.obj: $(BASEDIR)\nmsg_sfv.c
 
1254
 $(CC) $(SFV_COPT)
 
1255
$(BASEDIR)\arjsfxv\decode.obj: decode.c
 
1256
 $(CC) $(SFV_COPT)
 
1257
$(BASEDIR)\arjsfxv\arjsfxv.obj: arjsfx.c $(BASEDIR)\fmsg_sfv.c
 
1258
 $(CC) $(SFV_COPT)
 
1259
$(BASEDIR)\arjsfxv\fardata.obj: fardata.c
 
1260
 $(CC) $(SFV_COPT)
 
1261
$(BASEDIR)\arjsfxv\arj_user.obj: arj_user.c
 
1262
 $(CC) $(SFV_COPT)
 
1263
$(BASEDIR)\arjsfxv\arj_arcv.obj: arj_arcv.c
 
1264
 $(CC) $(SFV_COPT)
 
1265
$(BASEDIR)\arjsfxv\arj_file.obj: arj_file.c
 
1266
 $(CC) $(SFV_COPT)
 
1267
$(BASEDIR)\arjsfxv\crc32.obj: crc32.c
 
1268
 $(CC) $(SFV_COPT)
 
1269
$(BASEDIR)\arjsfxv\misc.obj: misc.c
 
1270
 $(CC) $(SFV_COPT)
 
1271
$(BASEDIR)\arjsfxv\debug.obj: debug.c
 
1272
 $(CC) $(SFV_COPT)
 
1273
$(BASEDIR)\arjsfxv\arj_proc.obj: arj_proc.c
 
1274
 $(CC) $(SFV_COPT)
 
1275
$(BASEDIR)\arjsfxv\environ.obj: environ.c
 
1276
 $(CC) $(SFV_COPT)
 
1277
$(BASEDIR)\arjsfxv\ntstream.obj: ntstream.c
 
1278
 $(CC) $(SFV_COPT)
 
1279
$(BASEDIR)\arjsfxv\ea_mgr.obj: ea_mgr.c
 
1280
 $(CC) $(SFV_COPT)
 
1281
$(BASEDIR)\arjsfxv\uxspec.obj: uxspec.c
 
1282
 $(CC) $(SFV_COPT)
 
1283
$(BASEDIR)\arjsfxv\ext_hdr.obj: ext_hdr.c
 
1284
 $(CC) $(SFV_COPT)
 
1285
$(BASEDIR)\arjsfxv\arjtypes.obj: arjtypes.c
 
1286
 $(CC) $(SFV_COPT)
 
1287
$(BASEDIR)\arjsfxv\exe_sear.obj: exe_sear.c
 
1288
 $(CC) $(SFV_COPT)
 
1289
$(BASEDIR)\arjsfxv\chk_fmsg.obj: chk_fmsg.c $(BASEDIR)\msg_sfv.h
 
1290
 $(CC) $(SFV_COPT)
 
1291
$(BASEDIR)\arjsfxv\filelist.obj: filelist.c
 
1292
 $(CC) $(SFV_COPT)
 
1293
$(BASEDIR)\arjsfxv\arjsec_h.obj: arjsec_h.c
 
1294
 $(CC) $(SFV_COPT)
 
1295
$(BASEDIR)\arjsfxv\arjsec_l.obj: arjsec_l.c
 
1296
 $(CC) $(SFV_COPT)
 
1297
$(BASEDIR)\arjsfxv\garble.obj: garble.c
 
1298
 $(CC) $(SFV_COPT)
 
1299
$(BASEDIR)\arjsfxv\scrnio.obj: scrnio.c
 
1300
 $(CC) $(SFV_COPT)
 
1301
$(BASEDIR)\arjsfxv\ansi.obj: ansi.c
 
1302
 $(CC) $(SFV_COPT)
 
1303
$(BASEDIR)\arjsfxv\externs.obj: externs.c
 
1304
 $(CC) $(SFV_COPT)
 
1305
$(BASEDIR)\fmsg_sfv.c $(BASEDIR)\imsg_sfv.c $(BASEDIR)\nmsg_sfv.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1306
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_sfv $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1307
 
 
1308
#
 
1309
# ARJSFX module
 
1310
#
 
1311
 
 
1312
SFX_OBJS = $(BASEDIR)\arjsfx\arjsfx.obj   \
 
1313
           $(BASEDIR)\arjsfx\sfx_id.obj   \
 
1314
           $(BASEDIR)\arjsfx\filemode.obj \
 
1315
           $(BASEDIR)\arjsfx\fmsg_sfx.obj \
 
1316
           $(BASEDIR)\arjsfx\imsg_sfx.obj \
 
1317
           $(BASEDIR)\arjsfx\nmsg_sfx.obj \
 
1318
           $(BASEDIR)\arjsfx\decode.obj   \
 
1319
           $(BASEDIR)\arjsfx\fardata.obj  \
 
1320
           $(BASEDIR)\arjsfx\arj_user.obj \
 
1321
           $(BASEDIR)\arjsfx\arj_arcv.obj \
 
1322
           $(BASEDIR)\arjsfx\arj_file.obj \
 
1323
           $(BASEDIR)\arjsfx\crc32.obj    \
 
1324
           $(BASEDIR)\arjsfx\misc.obj     \
 
1325
           $(BASEDIR)\arjsfx\debug.obj    \
 
1326
           $(BASEDIR)\arjsfx\arj_proc.obj \
 
1327
           $(BASEDIR)\arjsfx\environ.obj  \
 
1328
           $(BASEDIR)\arjsfx\arjtypes.obj \
 
1329
           $(BASEDIR)\arjsfx\exe_sear.obj \
 
1330
           $(BASEDIR)\arjsfx\chk_fmsg.obj \
 
1331
           $(BASEDIR)\arjsfx\arjsec_h.obj \
 
1332
!ifdef COMMERCIAL
 
1333
           $(BASEDIR)\arjsfx\arjsec_l.obj \
 
1334
!endif
 
1335
           $(BASEDIR)\arjsfx\garble.obj   \
 
1336
           $(BASEDIR)\arjsfx\externs.obj
 
1337
 
 
1338
$(BASEDIR)\arjsfx\$(ARJSFX): $(SFX_OBJS) \
 
1339
                              $(BASEDIR)\tools\$(POSTPROC)
 
1340
 $(LRF) @<<$(BASEDIR_T)arjsfx.lrf
 
1341
!ifdef NEWLINK
 
1342
$(LINKOPT) $(SFX_OBJ) $(SFX_OBJS: = ^
 
1343
)
 
1344
!else
 
1345
$(LINKOPT) $(SFX_OBJ) $(SFX_OBJS: = +^
 
1346
)
 
1347
!endif
 
1348
$(OUT_LINKOPT)$@
 
1349
$(MAP_LINKOPT)$(@R).map
 
1350
$(SFX_LIB)
 
1351
$(SFX_DEF)
 
1352
<<
 
1353
 $(LINKER) @$(BASEDIR_T)arjsfx.lrf$(LAST_LINKOPT)
 
1354
 if exist $(BASEDIR_T)arjsfx.lrf del $(BASEDIR_T)arjsfx.lrf
 
1355
 $(BASEDIR)\tools\postproc $(BASEDIR)\arjsfx\$(ARJSFX) -sfx
 
1356
 
 
1357
!ifndef NO_ASM
 
1358
$(BASEDIR)\arjsfx\sfx_id.obj: sfx_id.asm
 
1359
 $(ASM) $(SFX_ASMOPT)
 
1360
!else
 
1361
$(BASEDIR)\arjsfx\sfx_id.obj: sfx_id.c
 
1362
 $(CC) $(SFX_COPT)
 
1363
!endif
 
1364
$(BASEDIR)\arjsfx\filemode.obj: filemode.c
 
1365
 $(CC) $(SFX_COPT)
 
1366
$(BASEDIR)\arjsfx\fmsg_sfx.obj: $(BASEDIR)\fmsg_sfx.c
 
1367
 $(CC) $(SFX_COPT)
 
1368
$(BASEDIR)\arjsfx\imsg_sfx.obj: $(BASEDIR)\imsg_sfx.c
 
1369
 $(CC) $(SFX_COPT)
 
1370
$(BASEDIR)\arjsfx\nmsg_sfx.obj: $(BASEDIR)\nmsg_sfx.c
 
1371
 $(CC) $(SFX_COPT)
 
1372
$(BASEDIR)\arjsfx\decode.obj: decode.c
 
1373
 $(CC) $(SFX_COPT)
 
1374
$(BASEDIR)\arjsfx\arjsfx.obj: arjsfx.c $(BASEDIR)\fmsg_sfx.c
 
1375
 $(CC) $(SFX_COPT)
 
1376
$(BASEDIR)\arjsfx\fardata.obj: fardata.c
 
1377
 $(CC) $(SFX_COPT)
 
1378
$(BASEDIR)\arjsfx\arj_user.obj: arj_user.c
 
1379
 $(CC) $(SFX_COPT)
 
1380
$(BASEDIR)\arjsfx\arj_arcv.obj: arj_arcv.c
 
1381
 $(CC) $(SFX_COPT)
 
1382
$(BASEDIR)\arjsfx\arj_file.obj: arj_file.c
 
1383
 $(CC) $(SFX_COPT)
 
1384
$(BASEDIR)\arjsfx\crc32.obj: crc32.c
 
1385
 $(CC) $(SFX_COPT)
 
1386
$(BASEDIR)\arjsfx\misc.obj: misc.c
 
1387
 $(CC) $(SFX_COPT)
 
1388
$(BASEDIR)\arjsfx\debug.obj: debug.c
 
1389
 $(CC) $(SFX_COPT)
 
1390
$(BASEDIR)\arjsfx\arj_proc.obj: arj_proc.c
 
1391
 $(CC) $(SFX_COPT)
 
1392
$(BASEDIR)\arjsfx\environ.obj: environ.c
 
1393
 $(CC) $(SFX_COPT)
 
1394
$(BASEDIR)\arjsfx\arjtypes.obj: arjtypes.c
 
1395
 $(CC) $(SFX_COPT)
 
1396
$(BASEDIR)\arjsfx\exe_sear.obj: exe_sear.c
 
1397
 $(CC) $(SFX_COPT)
 
1398
$(BASEDIR)\arjsfx\chk_fmsg.obj: chk_fmsg.c $(BASEDIR)\msg_sfx.h
 
1399
 $(CC) $(SFX_COPT)
 
1400
$(BASEDIR)\arjsfx\arjsec_h.obj: arjsec_h.c
 
1401
 $(CC) $(SFX_COPT)
 
1402
$(BASEDIR)\arjsfx\arjsec_l.obj: arjsec_l.c
 
1403
 $(CC) $(SFX_COPT)
 
1404
$(BASEDIR)\arjsfx\garble.obj: garble.c
 
1405
 $(CC) $(SFX_COPT)
 
1406
$(BASEDIR)\arjsfx\externs.obj: externs.c
 
1407
 $(CC) $(SFX_COPT)
 
1408
$(BASEDIR)\fmsg_sfx.c $(BASEDIR)\imsg_sfx.c $(BASEDIR)\nmsg_sfx.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1409
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_sfx $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1410
 
 
1411
#
 
1412
# ARJSFXJR module
 
1413
#
 
1414
 
 
1415
SFJ_OBJS = $(BASEDIR)\arjsfxjr\arjsfxjr.obj \
 
1416
           $(BASEDIR)\arjsfxjr\sfx_id.obj   \
 
1417
           $(BASEDIR)\arjsfxjr\fmsg_sfj.obj \
 
1418
           $(BASEDIR)\arjsfxjr\nmsg_sfj.obj \
 
1419
           $(BASEDIR)\arjsfxjr\debug.obj    \
 
1420
           $(BASEDIR)\arjsfxjr\crc32.obj    \
 
1421
           $(BASEDIR)\arjsfxjr\environ.obj
 
1422
 
 
1423
$(BASEDIR)\arjsfxjr\$(ARJSFXJR): $(SFJ_OBJS) \
 
1424
                                  $(BASEDIR)\tools\$(POSTPROC)
 
1425
 $(LRF) @<<$(BASEDIR_T)arjsfxjr.lrf
 
1426
!ifdef NEWLINK
 
1427
$(LINKOPT) $(SFJ_OBJ) $(SFJ_OBJS: = ^
 
1428
)
 
1429
!else
 
1430
$(LINKOPT) $(SFJ_OBJ) $(SFJ_OBJS: = +^
 
1431
)
 
1432
!endif
 
1433
$(OUT_LINKOPT)$@
 
1434
$(MAP_LINKOPT)$(@R).map
 
1435
$(SFJ_LIB)
 
1436
$(SFJ_DEF)
 
1437
<<
 
1438
 $(LINKER) @$(BASEDIR_T)arjsfxjr.lrf$(LAST_LINKOPT)
 
1439
 if exist $(BASEDIR_T)arjsfxjr.lrf del $(BASEDIR_T)arjsfxjr.lrf
 
1440
 $(BASEDIR)\tools\postproc $(BASEDIR)\arjsfxjr\$(ARJSFXJR) -sfx
 
1441
 
 
1442
!ifndef NO_ASM
 
1443
$(BASEDIR)\arjsfxjr\sfx_id.obj: sfx_id.asm
 
1444
 $(ASM) $(SFJ_ASMOPT)
 
1445
!else
 
1446
$(BASEDIR)\arjsfxjr\sfx_id.obj: sfx_id.c
 
1447
 $(CC) $(SFJ_COPT)
 
1448
!endif
 
1449
$(BASEDIR)\arjsfxjr\fmsg_sfj.obj: $(BASEDIR)\fmsg_sfj.c
 
1450
 $(CC) $(SFJ_COPT)
 
1451
$(BASEDIR)\arjsfxjr\nmsg_sfj.obj: $(BASEDIR)\nmsg_sfj.c
 
1452
 $(CC) $(SFJ_COPT)
 
1453
$(BASEDIR)\arjsfxjr\arjsfxjr.obj: arjsfxjr.c $(BASEDIR)\nmsg_sfj.c
 
1454
 $(CC) $(SFJ_COPT)
 
1455
$(BASEDIR)\arjsfxjr\crc32.obj: crc32.c
 
1456
 $(CC) $(SFJ_COPT)
 
1457
$(BASEDIR)\arjsfxjr\debug.obj: debug.c
 
1458
 $(CC) $(SFJ_COPT)
 
1459
$(BASEDIR)\arjsfxjr\environ.obj: environ.c
 
1460
 $(CC) $(SFJ_COPT)
 
1461
$(BASEDIR)\fmsg_sfj.c $(BASEDIR)\nmsg_sfj.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1462
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_sfj $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1463
 
 
1464
#
 
1465
# ARJ itself
 
1466
#
 
1467
 
 
1468
ARJ_OBJS = $(BASEDIR)\arj\arj.obj      \
 
1469
           $(BASEDIR)\arj\filemode.obj \
 
1470
           $(BASEDIR)\arj\date_sig.obj \
 
1471
           $(BASEDIR)\arj\fmsg_arj.obj \
 
1472
           $(BASEDIR)\arj\imsg_arj.obj \
 
1473
           $(BASEDIR)\arj\nmsg_arj.obj \
 
1474
           $(BASEDIR)\arj\integr.obj   \
 
1475
           $(BASEDIR)\arj\file_reg.obj \
 
1476
           $(BASEDIR)\arj\decode.obj   \
 
1477
           $(BASEDIR)\arj\encode.obj   \
 
1478
           $(BASEDIR)\arj\enc_gwy.obj  \
 
1479
           $(BASEDIR)\arj\fardata.obj  \
 
1480
           $(BASEDIR)\arj\arj_user.obj \
 
1481
           $(BASEDIR)\arj\arj_arcv.obj \
 
1482
           $(BASEDIR)\arj\arj_file.obj \
 
1483
           $(BASEDIR)\arj\crc32.obj    \
 
1484
           $(BASEDIR)\arj\misc.obj     \
 
1485
           $(BASEDIR)\arj\debug.obj    \
 
1486
           $(BASEDIR)\arj\arj_proc.obj \
 
1487
           $(BASEDIR)\arj\environ.obj  \
 
1488
           $(BASEDIR)\arj\ntstream.obj \
 
1489
           $(BASEDIR)\arj\ea_mgr.obj   \
 
1490
           $(BASEDIR)\arj\uxspec.obj   \
 
1491
           $(BASEDIR)\arj\ext_hdr.obj  \
 
1492
           $(BASEDIR)\arj\arjtypes.obj \
 
1493
           $(BASEDIR)\arj\exe_sear.obj \
 
1494
           $(BASEDIR)\arj\chk_fmsg.obj \
 
1495
           $(BASEDIR)\arj\filelist.obj \
 
1496
           $(BASEDIR)\arj\arjsec_h.obj \
 
1497
           $(BASEDIR)\arj\arjsec_l.obj \
 
1498
           $(BASEDIR)\arj\garble.obj   \
 
1499
           $(BASEDIR)\arj\scrnio.obj   \
 
1500
           $(BASEDIR)\arj\ansi.obj     \
 
1501
           $(BASEDIR)\arj\crc16tab.obj \
 
1502
           $(BASEDIR)\arj\recovery.obj \
 
1503
           $(BASEDIR)\arj\gost.obj     \
 
1504
           $(BASEDIR)\arj\gost40.obj   \
 
1505
           $(BASEDIR)\arj\gost_t.obj   \
 
1506
           $(BASEDIR)\arj\externs.obj  \
 
1507
           $(ARJ_OBJS_S)               \
 
1508
           $(ARJ_OBJS_E)
 
1509
$(BASEDIR)\arj\$(ARJ): $(ARJ_OBJS)    \
 
1510
                        $(BASEDIR)\tools\$(JOIN) \
 
1511
                        $(BASEDIR)\tools\$(POSTPROC) \
 
1512
                        $(BASEDIR)\sfxstub\$(SFXSTUB) \
 
1513
                        $(BASEDIR)\arjsfxv\$(ARJSFXV) \
 
1514
                        $(BASEDIR)\arjsfx\$(ARJSFX) \
 
1515
                        $(BASEDIR)\arjsfxjr\$(ARJSFXJR) \
 
1516
                        resource\$(LOCALE)\arjl.txt \
 
1517
                        resource\$(LOCALE)\arjs.txt
 
1518
 $(LRF) @<<$(BASEDIR_T)arj.lrf
 
1519
!ifdef NEWLINK
 
1520
$(LINKOPT) $(ARJ_OBJ) $(ARJ_OBJS: = ^
 
1521
)
 
1522
!else
 
1523
$(LINKOPT) $(ARJ_OBJ) $(ARJ_OBJS: = +^
 
1524
)
 
1525
!endif
 
1526
$(OUT_LINKOPT)$@
 
1527
$(MAP_LINKOPT)$(@R).map
 
1528
$(ARJ_LIB)
 
1529
$(ARJ_DEF)
 
1530
<<
 
1531
 $(LINKER) @$(BASEDIR_T)arj.lrf$(LAST_LINKOPT)
 
1532
 if exist $(BASEDIR_T)arj.lrf del $(BASEDIR_T)arj.lrf
 
1533
 $(BASEDIR)\tools\join $(BASEDIR)\arj\$(ARJ) $(BASEDIR)\arjsfxjr\$(ARJSFXJR)
 
1534
 $(BASEDIR)\tools\join $(BASEDIR)\arj\$(ARJ) $(BASEDIR)\arjsfx\$(ARJSFX)
 
1535
 $(BASEDIR)\tools\join $(BASEDIR)\arj\$(ARJ) $(BASEDIR)\arjsfxv\$(ARJSFXV)
 
1536
 $(BASEDIR)\tools\join $(BASEDIR)\arj\$(ARJ) $(BASEDIR)\sfxstub\$(SFXSTUB)
 
1537
 if exist $(BASEDIR_T)help.arj del $(BASEDIR_T)help.arj
 
1538
 $(BASEDIR)\arj\$(ARJ) a $(BASEDIR_T)help.arj -+ -2e -e -jm -jh65535 -jt -t1g resource\$(LOCALE)\arj?.txt
 
1539
 $(BASEDIR)\tools\join $(BASEDIR)\arj\$(ARJ) $(BASEDIR_T)help.arj
 
1540
 if exist $(BASEDIR_T)help.arj del $(BASEDIR_T)help.arj
 
1541
 $(BASEDIR)\tools\postproc $(BASEDIR)\arj\$(ARJ)
 
1542
 
 
1543
!ifndef NO_ASM
 
1544
$(BASEDIR)\arj\integr.obj: integr.asm
 
1545
 $(ASM) $(STD_ASMOPT)
 
1546
!else
 
1547
$(BASEDIR)\arj\integr.obj: integr.c
 
1548
 $(CC) $(STD_COPT)
 
1549
!endif
 
1550
$(BASEDIR)\arj\file_reg.obj: file_reg.c
 
1551
 $(CC) $(ARJ_COPT)
 
1552
$(BASEDIR)\arj\decode.obj: decode.c
 
1553
 $(CC) $(NEAR_COPT)
 
1554
!ifndef NO_ASM
 
1555
$(BASEDIR)\arj\fmemcmp.obj: fmemcmp.asm
 
1556
 $(ASM) $(STD_ASMOPT)
 
1557
!endif
 
1558
$(BASEDIR)\arj\encode.obj: encode.c
 
1559
 $(CC) $(NEAR_COPT)
 
1560
$(BASEDIR)\arj\date_sig.obj: $(BASEDIR)\date_sig.c
 
1561
 $(CC) $(ARJ_COPT)
 
1562
$(BASEDIR)\arj\arj.obj: arj.c $(BASEDIR)\nmsg_arj.c
 
1563
 $(CC) $(ARJ_COPT)
 
1564
$(BASEDIR)\arj\enc_gwy.obj: enc_gwy.c
 
1565
 $(CC) $(ARJ_COPT)
 
1566
$(BASEDIR)\arj\fardata.obj: fardata.c
 
1567
 $(CC) $(ARJ_COPT)
 
1568
$(BASEDIR)\arj\arj_user.obj: arj_user.c
 
1569
 $(CC) $(ARJ_COPT)
 
1570
$(BASEDIR)\arj\arj_arcv.obj: arj_arcv.c
 
1571
 $(CC) $(ARJ_COPT)
 
1572
$(BASEDIR)\arj\arj_file.obj: arj_file.c
 
1573
 $(CC) $(ARJ_COPT)
 
1574
$(BASEDIR)\arj\crc32.obj: crc32.c
 
1575
 $(CC) $(ARJ_COPTS)
 
1576
$(BASEDIR)\arj\misc.obj: misc.c
 
1577
 $(CC) $(ARJ_COPT)
 
1578
$(BASEDIR)\arj\debug.obj: debug.c
 
1579
 $(CC) $(ARJ_COPT)
 
1580
$(BASEDIR)\arj\arj_proc.obj: arj_proc.c
 
1581
 $(CC) $(ARJ_COPT)
 
1582
$(BASEDIR)\arj\environ.obj: environ.c
 
1583
 $(CC) $(ARJ_COPT)
 
1584
$(BASEDIR)\arj\ntstream.obj: ntstream.c
 
1585
 $(CC) $(ARJ_COPT)
 
1586
$(BASEDIR)\arj\ea_mgr.obj: ea_mgr.c
 
1587
 $(CC) $(ARJ_COPT)
 
1588
$(BASEDIR)\arj\uxspec.obj: uxspec.c
 
1589
 $(CC) $(ARJ_COPT)
 
1590
$(BASEDIR)\arj\ext_hdr.obj: ext_hdr.c
 
1591
 $(CC) $(ARJ_COPT)
 
1592
$(BASEDIR)\arj\arjtypes.obj: arjtypes.c
 
1593
 $(CC) $(ARJ_COPT)
 
1594
$(BASEDIR)\arj\exe_sear.obj: exe_sear.c
 
1595
 $(CC) $(ARJ_COPT)
 
1596
$(BASEDIR)\arj\chk_fmsg.obj: chk_fmsg.c $(BASEDIR)\msg_arj.h
 
1597
 $(CC) $(ARJ_COPT)
 
1598
!ifndef NO_ASM
 
1599
$(BASEDIR)\arj\arj_xms.obj: arj_xms.asm
 
1600
 $(ASM) $(STD_ASMOPT)
 
1601
!endif
 
1602
$(BASEDIR)\arj\filelist.obj: filelist.c
 
1603
 $(CC) $(ARJ_COPT)
 
1604
$(BASEDIR)\arj\arjsec_h.obj: arjsec_h.c
 
1605
 $(CC) $(ARJ_COPT)
 
1606
$(BASEDIR)\arj\arjsec_l.obj: arjsec_l.c
 
1607
 $(CC) $(ARJ_COPTS)
 
1608
$(BASEDIR)\arj\garble.obj: garble.c
 
1609
 $(CC) $(ARJ_COPT)
 
1610
$(BASEDIR)\arj\scrnio.obj: scrnio.c
 
1611
 $(CC) $(ARJ_COPT)
 
1612
$(BASEDIR)\arj\ansi.obj: ansi.c
 
1613
 $(CC) $(ARJ_COPT)
 
1614
$(BASEDIR)\arj\recovery.obj: recovery.c
 
1615
 $(CC) $(ARJ_RECOPT)
 
1616
$(BASEDIR)\arj\crc16tab.obj: crc16tab.c
 
1617
 $(CC) $(FDS_COPT)
 
1618
$(BASEDIR)\arj\gost.obj: gost.c
 
1619
 $(CC) $(ARJ_COPT)
 
1620
$(BASEDIR)\arj\gost_t.obj: gost_t.c
 
1621
 $(CC) $(FDS_COPT)
 
1622
$(BASEDIR)\arj\gost40.obj: gost40.c
 
1623
 $(CC) $(ARJ_COPTS)
 
1624
$(BASEDIR)\arj\filemode.obj: filemode.c
 
1625
 $(CC) $(ARJ_COPT)
 
1626
$(BASEDIR)\arj\fmsg_arj.obj: $(BASEDIR)\fmsg_arj.c
 
1627
 $(CC) $(FAR_COPT)
 
1628
$(BASEDIR)\arj\imsg_arj.obj: $(BASEDIR)\imsg_arj.c
 
1629
 $(CC) $(FAR_COPT)
 
1630
$(BASEDIR)\arj\nmsg_arj.obj: $(BASEDIR)\nmsg_arj.c
 
1631
 $(CC) $(ARJ_COPT)
 
1632
$(BASEDIR)\arj\externs.obj: externs.c
 
1633
 $(CC) $(ARJ_COPT)
 
1634
$(BASEDIR)\fmsg_arj.c $(BASEDIR)\imsg_arj.c $(BASEDIR)\nmsg_arj.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1635
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_arj $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1636
 
 
1637
#
 
1638
# REARJ utility
 
1639
#
 
1640
 
 
1641
REJ_OBJS = $(BASEDIR)\rearj\rearj.obj    \
 
1642
           $(BASEDIR)\rearj\integr.obj   \
 
1643
           $(BASEDIR)\rearj\filemode.obj \
 
1644
           $(BASEDIR)\rearj\date_sig.obj \
 
1645
           $(BASEDIR)\rearj\fmsg_rej.obj \
 
1646
           $(BASEDIR)\rearj\nmsg_rej.obj \
 
1647
           $(BASEDIR)\rearj\file_reg.obj \
 
1648
           $(BASEDIR)\rearj\fardata.obj  \
 
1649
           $(BASEDIR)\rearj\arj_file.obj \
 
1650
           $(BASEDIR)\rearj\crc32.obj    \
 
1651
           $(BASEDIR)\rearj\misc.obj     \
 
1652
           $(BASEDIR)\rearj\debug.obj    \
 
1653
           $(BASEDIR)\rearj\arj_proc.obj \
 
1654
           $(BASEDIR)\rearj\environ.obj  \
 
1655
           $(BASEDIR)\rearj\arjtypes.obj \
 
1656
           $(BASEDIR)\rearj\filelist.obj \
 
1657
           $(BASEDIR)\rearj\scrnio.obj   \
 
1658
           $(BASEDIR)\rearj\arjsec_h.obj \
 
1659
           $(BASEDIR)\rearj\arjsec_l.obj \
 
1660
           $(BASEDIR)\rearj\externs.obj
 
1661
 
 
1662
$(BASEDIR)\rearj\$(REARJ): $(REJ_OBJS) \
 
1663
                            $(BASEDIR)\tools\$(POSTPROC)
 
1664
 $(LRF) @<<$(BASEDIR_T)rearj.lrf
 
1665
!ifdef NEWLINK
 
1666
$(LINKOPT) $(REJ_OBJ) $(REJ_OBJS: = ^
 
1667
)
 
1668
!else
 
1669
$(LINKOPT) $(REJ_OBJ) $(REJ_OBJS: = +^
 
1670
)
 
1671
!endif
 
1672
$(OUT_LINKOPT)$@
 
1673
$(MAP_LINKOPT)$(@R).map
 
1674
$(REJ_LIB)
 
1675
$(REJ_DEF)
 
1676
<<
 
1677
 $(LINKER) @$(BASEDIR_T)rearj.lrf$(LAST_LINKOPT)
 
1678
 if exist $(BASEDIR_T)rearj.lrf del $(BASEDIR_T)rearj.lrf
 
1679
 $(BASEDIR)\tools\postproc $(BASEDIR)\rearj\$(REARJ)
 
1680
 
 
1681
!ifndef NO_ASM
 
1682
$(BASEDIR)\rearj\integr.obj: integr.asm
 
1683
 $(ASM) $(REJ_ASMOPT)
 
1684
!else
 
1685
$(BASEDIR)\rearj\integr.obj: integr.c
 
1686
 $(CC) $(REJ_COPT)
 
1687
!endif
 
1688
$(BASEDIR)\rearj\filemode.obj: filemode.c
 
1689
 $(CC) $(REJ_COPT)
 
1690
$(BASEDIR)\rearj\date_sig.obj: $(BASEDIR)\date_sig.c
 
1691
 $(CC) $(REJ_COPT)
 
1692
$(BASEDIR)\rearj\fmsg_rej.obj: $(BASEDIR)\fmsg_rej.c
 
1693
 $(CC) $(REJ_COPT)
 
1694
$(BASEDIR)\rearj\nmsg_rej.obj: $(BASEDIR)\nmsg_rej.c
 
1695
 $(CC) $(REJ_COPT)
 
1696
$(BASEDIR)\rearj\file_reg.obj: file_reg.c
 
1697
 $(CC) $(REJ_COPT)
 
1698
$(BASEDIR)\rearj\rearj.obj: rearj.c $(BASEDIR)\fmsg_rej.c
 
1699
 $(CC) $(REJ_COPT)
 
1700
$(BASEDIR)\rearj\fardata.obj: fardata.c
 
1701
 $(CC) $(REJ_COPT)
 
1702
$(BASEDIR)\rearj\arj_file.obj: arj_file.c
 
1703
 $(CC) $(REJ_COPT)
 
1704
$(BASEDIR)\rearj\crc32.obj: crc32.c
 
1705
 $(CC) $(REJ_COPT)
 
1706
$(BASEDIR)\rearj\misc.obj: misc.c
 
1707
 $(CC) $(REJ_COPT)
 
1708
$(BASEDIR)\rearj\debug.obj: debug.c
 
1709
 $(CC) $(REJ_COPT)
 
1710
$(BASEDIR)\rearj\arj_proc.obj: arj_proc.c
 
1711
 $(CC) $(REJ_COPT)
 
1712
$(BASEDIR)\rearj\environ.obj: environ.c
 
1713
 $(CC) $(REJ_COPT)
 
1714
$(BASEDIR)\rearj\arjtypes.obj: arjtypes.c
 
1715
 $(CC) $(REJ_COPT)
 
1716
$(BASEDIR)\rearj\filelist.obj: filelist.c
 
1717
 $(CC) $(REJ_COPT)
 
1718
$(BASEDIR)\rearj\scrnio.obj: scrnio.c
 
1719
 $(CC) $(REJ_COPT)
 
1720
$(BASEDIR)\rearj\arjsec_h.obj: arjsec_h.c
 
1721
 $(CC) $(REJ_COPT)
 
1722
$(BASEDIR)\rearj\arjsec_l.obj: arjsec_l.c
 
1723
 $(CC) $(REJ_COPT)
 
1724
$(BASEDIR)\rearj\externs.obj: externs.c
 
1725
 $(CC) $(REJ_COPT)
 
1726
$(BASEDIR)\fmsg_rej.c $(BASEDIR)\nmsg_rej.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1727
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_rej $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1728
 
 
1729
#
 
1730
# Registration wizard
 
1731
#
 
1732
 
 
1733
REG_OBJS = $(BASEDIR)\register\register.obj \
 
1734
           $(BASEDIR)\register\integr.obj   \
 
1735
           $(BASEDIR)\register\filemode.obj \
 
1736
           $(BASEDIR)\register\fmsg_reg.obj \
 
1737
           $(BASEDIR)\register\nmsg_reg.obj \
 
1738
           $(BASEDIR)\register\fardata.obj  \
 
1739
           $(BASEDIR)\register\crc32.obj    \
 
1740
           $(BASEDIR)\register\debug.obj    \
 
1741
           $(BASEDIR)\register\arj_proc.obj \
 
1742
           $(BASEDIR)\register\environ.obj
 
1743
 
 
1744
$(BASEDIR)\register\$(REGISTER): $(REG_OBJS) \
 
1745
                                 $(BASEDIR)\tools\$(POSTPROC)
 
1746
 $(LRF) @<<$(BASEDIR_T)register.lrf
 
1747
!ifdef NEWLINK
 
1748
$(LINKOPT) $(REG_OBJ) $(REG_OBJS: = ^
 
1749
)
 
1750
!else
 
1751
$(LINKOPT) $(REG_OBJ) $(REG_OBJS: = +^
 
1752
)
 
1753
!endif
 
1754
$(OUT_LINKOPT)$@
 
1755
$(MAP_LINKOPT)$(@R).map
 
1756
$(REG_LIB)
 
1757
$(REG_DEF)
 
1758
<<
 
1759
 $(LINKER) @$(BASEDIR_T)register.lrf$(LAST_LINKOPT)
 
1760
 if exist $(BASEDIR_T)register.lrf del $(BASEDIR_T)register.lrf
 
1761
 $(BASEDIR)\tools\postproc $(BASEDIR)\register\$(REGISTER) -sfx
 
1762
 
 
1763
!ifndef NO_ASM
 
1764
$(BASEDIR)\register\integr.obj: integr.asm
 
1765
 $(ASM) $(REG_ASMOPT)
 
1766
!else
 
1767
$(BASEDIR)\register\integr.obj: integr.c
 
1768
 $(CC) $(REG_COPT)
 
1769
!endif
 
1770
$(BASEDIR)\register\filemode.obj: filemode.c
 
1771
 $(CC) $(REG_COPT)
 
1772
$(BASEDIR)\register\fmsg_reg.obj: $(BASEDIR)\fmsg_reg.c
 
1773
 $(CC) $(REG_COPT)
 
1774
$(BASEDIR)\register\nmsg_reg.obj: $(BASEDIR)\nmsg_reg.c
 
1775
 $(CC) $(REG_COPT)
 
1776
$(BASEDIR)\register\register.obj: register.c $(BASEDIR)\nmsg_reg.c
 
1777
 $(CC) $(REG_COPT)
 
1778
$(BASEDIR)\register\fardata.obj: fardata.c
 
1779
 $(CC) $(REG_COPT)
 
1780
$(BASEDIR)\register\crc32.obj: crc32.c
 
1781
 $(CC) $(REG_COPT)
 
1782
$(BASEDIR)\register\debug.obj: debug.c
 
1783
 $(CC) $(REG_COPT)
 
1784
$(BASEDIR)\register\arj_proc.obj: arj_proc.c
 
1785
 $(CC) $(REG_COPT)
 
1786
$(BASEDIR)\register\environ.obj: environ.c
 
1787
 $(CC) $(REG_COPT)
 
1788
$(BASEDIR)\fmsg_reg.c $(BASEDIR)\nmsg_reg.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1789
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_reg $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1790
 
 
1791
#
 
1792
# Demonstration display program
 
1793
#
 
1794
 
 
1795
ADI_OBJS = $(BASEDIR)\arjdisp\arjdisp.obj \
 
1796
           $(BASEDIR)\arjdisp\nmsg_adi.obj \
 
1797
           $(BASEDIR)\arjdisp\fardata.obj \
 
1798
           $(BASEDIR)\arjdisp\debug.obj \
 
1799
           $(BASEDIR)\arjdisp\arj_proc.obj \
 
1800
           $(BASEDIR)\arjdisp\environ.obj \
 
1801
           $(BASEDIR)\arjdisp\scrnio.obj
 
1802
 
 
1803
$(BASEDIR)\arjdisp\$(ARJDISP): $(ADI_OBJS)
 
1804
 $(LRF) @<<$(BASEDIR_T)arjdisp.lrf
 
1805
!ifdef NEWLINK
 
1806
$(LINKOPT) $(ADI_OBJ) $(ADI_OBJS: = ^
 
1807
)
 
1808
!else
 
1809
$(LINKOPT) $(ADI_OBJ) $(ADI_OBJS: = +^
 
1810
)
 
1811
!endif
 
1812
$(OUT_LINKOPT)$@
 
1813
$(MAP_LINKOPT)$(@R).map
 
1814
$(ADI_LIB)
 
1815
$(ADI_DEF)
 
1816
<<
 
1817
 $(LINKER) @$(BASEDIR_T)arjdisp.lrf$(LAST_LINKOPT)
 
1818
 if exist $(BASEDIR_T)arjdisp.lrf del $(BASEDIR_T)arjdisp.lrf
 
1819
 
 
1820
$(BASEDIR)\arjdisp\nmsg_adi.obj: $(BASEDIR)\nmsg_adi.c
 
1821
 $(CC) $(ADI_COPT)
 
1822
$(BASEDIR)\arjdisp\arjdisp.obj: arjdisp.c $(BASEDIR)\nmsg_adi.c
 
1823
 $(CC) $(ADI_COPT)
 
1824
$(BASEDIR)\arjdisp\fardata.obj: fardata.c
 
1825
 $(CC) $(ADI_COPT)
 
1826
$(BASEDIR)\arjdisp\debug.obj: debug.c
 
1827
 $(CC) $(ADI_COPT)
 
1828
$(BASEDIR)\arjdisp\arj_proc.obj: arj_proc.c
 
1829
 $(CC) $(ADI_COPT)
 
1830
$(BASEDIR)\arjdisp\environ.obj: environ.c
 
1831
 $(CC) $(ADI_COPT)
 
1832
$(BASEDIR)\arjdisp\scrnio.obj: scrnio.c
 
1833
 $(CC) $(ADI_COPT)
 
1834
$(BASEDIR)\nmsg_adi.c: $(BASEDIR)\tools\$(MSGBIND) $(RESFILE)
 
1835
 $(BASEDIR)\tools\msgbind $(RESFILE) msg_adi $(OS_ID) $(PACKAGE) $(LOCALE) $(BASEDIR)
 
1836
 
 
1837
#
 
1838
# Pre-compilation actions
 
1839
#
 
1840
 
 
1841
prepare:
 
1842
 -md $(CC_CODE)
 
1843
 -md $(CC_CODE)\$(LOCALE)
 
1844
 -md $(BASEDIR)
 
1845
 -md $(BASEDIR)\tools
 
1846
 -md $(BASEDIR)\arjcrypt
 
1847
 -md $(BASEDIR)\sfxstub
 
1848
 -md $(BASEDIR)\arjsfxv
 
1849
 -md $(BASEDIR)\arjsfx
 
1850
 -md $(BASEDIR)\arjsfxjr
 
1851
 -md $(BASEDIR)\arj
 
1852
 -md $(BASEDIR)\rearj
 
1853
 -md $(BASEDIR)\register
 
1854
 -md $(BASEDIR)\arjdisp
 
1855
 
 
1856
#
 
1857
# Cleanup
 
1858
#
 
1859
 
 
1860
cleanup:
 
1861
 echo y|del $(CC_CODE)\$(LOCALE)\*.*
 
1862
 echo y|del $(BASEDIR)\*.*
 
1863
 echo y|del $(BASEDIR)\tools\*.*
 
1864
 echo y|del $(BASEDIR)\arjcrypt\*.*
 
1865
 echo y|del $(BASEDIR)\sfxstub\*.*
 
1866
 echo y|del $(BASEDIR)\arjsfxv\*.*
 
1867
 echo y|del $(BASEDIR)\arjsfx\*.*
 
1868
 echo y|del $(BASEDIR)\arjsfxjr\*.*
 
1869
 echo y|del $(BASEDIR)\arj\*.*
 
1870
 echo y|del $(BASEDIR)\rearj\*.*
 
1871
 echo y|del $(BASEDIR)\register\*.*
 
1872
 echo y|del $(BASEDIR)\arjdisp\*.*
 
1873
 
 
1874
#
 
1875
# Packaging
 
1876
#
 
1877
 
 
1878
package: all
 
1879
 -md retail
 
1880
# Was: $(BASEDIR_P) $(BASEDIR)
 
1881
 $(BASEDIR)\tools\packager $(BASEDIR) $(BASEDIR)