⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile

📁 open arj source
💻
📖 第 1 页 / 共 4 页
字号:
## $Id: makefile,v 1.10 2004/01/25 11:31:37 andrew_belov Exp $# ----------------------------------------------------------------------------# This file  is  intended  for building  ARJ on/for platforms where  the NMAKE# syntax is  supported. If you are  using a GCC/EMX build, refer to scripts in# the "gnu" directory.## It's essential that the following versions of NMAKE are used:##             DOS            Microsoft NMAKE v 1.36 or higher#             OS/2, WinNT    Microsoft NMAKE/2 v 1.21 or NMAKE/Win32 v 1.40+## Parameters:#             NP_SFX         disables executable packing#             COMMERCIAL     produces commercial package (temporary disabled)#             DEBUG          includes debug information and extra data##             FORCE_MSGRAPH  with Microsoft C for DOS, enables GRAPHICS.LIB#             LIBC           in 32-bit OS/2, enables LIBCS.LIB, req. LIBCPATH#                            (e.g. LIBC=1 LIBCPATH=E:\OS2TK45\H\LIBC)#                            with Visual C++, enables MSVCRT.LIB (/MD)#             USE_COLORS     enable colored output## IMPORTANT: Due to DOS path size limitations, the subdirectory names must be#            as short as possible.#!ifndef MODEMODE = OS232!endif!ifndef LOCALELOCALE = en!endif!ifndef RESFILERESFILE = resource\resource.txt!endif!ifndef C_DEFSC_DEFS = $(BASEDIR_T)c_defs.h!endif!ifndef ASM_DEFSASM_DEFS = $(BASEDIR_T)asm_defs.inc!endif!ifdef COMMERCIALPACKAGE = c!elsePACKAGE = s!endif!ifdef DEBUGDEBUG_SM = d!elseDEBUG_SM = r!endif#### DOS realmode section##!if "$(MODE)" == "DOS16"OS_ID = DOSLZEXE = lzexe.exeCRP_OBJS_E = $(BASEDIR)\arjcrypt\det_x86.obj $(BASEDIR)\arjcrypt\gost_asm.objARJ_OBJS_E = $(BASEDIR)\arj\arj_xms.obj!ifndef COMPILERCOMPILER = MSC7!endif## Assembly language options are the same - we'll use MASM everywhere#ASM = ml.exeASMOPT = /I$(BASEDIR) /c /Fo$@ %sSTD_ASMOPT = /DMODL=MEDIUM /DARJUTIL $(ASMOPT)STB_ASMOPT = /DMODL=SMALL /DSFXSTUB $(ASMOPT)!if "$(COMPILER)" == "BC40"SFV_ASMOPT = /DMODL=MEDIUM /DARJSFX $(ASMOPT)!elseSFV_ASMOPT = /DMODL=SMALL /DARJSFX $(ASMOPT)!endifSFX_ASMOPT = /DMODL=SMALL /DARJSFX /DNO_FAR $(ASMOPT)SFJ_ASMOPT = /DMODL=SMALL /DARJSFXJR /DNO_FAR $(ASMOPT)REJ_ASMOPT = /DMODL=SMALL /DREARJ /DNO_FAR $(ASMOPT)REG_ASMOPT = /DMODL=SMALL /DREGISTER /DNO_FAR $(ASMOPT)ADI_ASMOPT = /DMODL=SMALL /DARJDISP /DNO_FAR $(ASMOPT)CRP_ASMOPT = /DMODL=SMALL $(ASMOPT)## Borland C compilers section#!if "$(COMPILER)" == "TC10"CC_CODE = $(COMPILER)CC = tcc.exeCOPT = -I$(BASEDIR) -o$@ @settings\$(CC_CODE).sts %sLINKER = tlink.exeLINKLIB = E:\LANG\TCC10\LIB^\LINKOPT =!else if "$(COMPILER)" == "BC31"CC_CODE = $(COMPILER)CC = bcc.exeLINKER = tlink.exeCOPT = -I$(BASEDIR) -o$@ @settings\$(CC_CODE).sts %sLINKLIB =LINKOPT =!else if "$(COMPILER)" == "BC40"CC_CODE = $(COMPILER)CC = bcc.exeLINKER = tlink.exeCOPT = -I$(BASEDIR) -o$@ @settings\$(CC_CODE).sts %sLINKLIB =LINKOPT =!endif!if "$(COMPILER)" == "TC10"||"$(COMPILER)" == "BC31"||"$(COMPILER)" == "BC40"# ExecutablesARJ = arj.exeARJSFXV = arjsfxv.exeARJSFX = arjsfx.exeARJSFXJR = arjsfxjr.exeARJCRYPT = arjcrypt.comREARJ = rearj.exeREGISTER = register.exeARJDISP = arjdisp.exePOSTPROC = postproc.exeJOIN = join.exeMSGBIND = msgbind.exeTODAY = today.exeMAKE_KEY = make_key.exePACKAGER = packager.exeMAKESTUB = makestub.exeSFXSTUB = sfxstub.exe# C optionsSTD_COPT = -mm -DARJUTIL $(COPT)ARJ_COPT = -mm -DSFL=4 $(COPT)!if "$(COMPILER)" == "BC40"SFV_COPT = -mm -DSFL=3 $(COPT)REJ_COPT = -mm -DREARJ $(COPT)!elseSFV_COPT = -ms -DSFL=3 $(COPT)REJ_COPT = -ms -DREARJ $(COPT)!endifSFX_COPT = -ms -DSFL=2 $(COPT)SFJ_COPT = -ms -DSFL=1 $(COPT)REG_COPT = -ms -DREGISTER $(COPT)ADI_COPT = -ms -DARJDISP $(COPT)FAR_COPT = -zRA -zSA -zTFAR_DATA $(ARJ_COPT)FDS_COPT = -zRF -zSF -zTFAR_DATA $(ARJ_COPT)NEAR_COPT = -zC_TEXT $(ARJ_COPT)CRP_COPT = -mt $(COPT)# Linkup objectsSTD_OBJ = $(LINKLIB)c0mARJ_OBJ = $(LINKLIB)c0mSTB_OBJ =!if "$(COMPILER)" == "BC40"SFV_OBJ = $(LINKLIB)c0mREJ_OBJ = $(LINKLIB)c0m!elseSFV_OBJ = $(LINKLIB)c0sREJ_OBJ = $(LINKLIB)c0s!endifSFX_OBJ = $(LINKLIB)c0sSFJ_OBJ = $(LINKLIB)c0sREG_OBJ = $(LINKLIB)c0sADI_OBJ = $(LINKLIB)c0sCRP_OBJ = /t $(LINKLIB)c0t# Supplemental objectsARJ_OBJS_S = $(BASEDIR)\arj\fmemcmp.obj# LibrariesSTD_LIB = $(LINKLIB)cmARJ_LIB = $(LINKLIB)cmSTB_LIB =!if "$(COMPILER)" == "BC40"SFV_LIB = $(LINKLIB)cmREJ_LIB = $(LINKLIB)cm!elseSFV_LIB = $(LINKLIB)csREJ_LIB = $(LINKLIB)cs!endifSFX_LIB = $(LINKLIB)csSFJ_LIB = $(LINKLIB)csREG_LIB = $(LINKLIB)csADI_LIB = $(LINKLIB)csCRP_LIB = $(LINKLIB)cs!endifLRF = echo > NUL## Microsoft C compilers section#!if "$(COMPILER)" == "MSC6"CC_CODE = $(COMPILER)CC = cl.exeCOPT = /I$(BASEDIR) /Fo$@ %sNEARPOPT =LINKER = link.exeLINKLIB =LINKOPT = /NOE!else if "$(COMPILER)" == "MSC7"||"$(COMPILER)" == "MSVC10"||"$(COMPILER)" == "MSVC15"CC_CODE = $(COMPILER)CC = cl.exeLINKER = link.exeCOPT = /I$(BASEDIR) /Fo$@ @settings\$(CC_CODE).sts %sNEARPOPT = /GxLINKLIB =LINKOPT = /NOE!else if "$(COMPILER)" == "QC25"CC_CODE = $(COMPILER)!if "$(COMPILER)" == "QC25"CC = _qcl.exeLINKER = qlink.exe!elseCC = cl.exeLINKER = link.exe!endifCOPT = /I$(BASEDIR) /I. /Fo$@ /Gs /Zp /c %sMSC_OPT = /OlrgLINKLIB =LINKOPT = /NOE!endif!if "$(COMPILER)" == "MSC6"||"$(COMPILER)" == "MSC7"||"$(COMPILER)" == "MSVC10"||"$(COMPILER)" == "MSVC15"||"$(COMPILER)" == "QC25"# ExecutablesARJ = arj.exeARJSFXV = arjsfxv.exeARJSFX = arjsfx.exeARJSFXJR = arjsfxjr.exeARJCRYPT = arjcrypt.comREARJ = rearj.exeREGISTER = register.exeARJDISP = arjdisp.exePOSTPROC = postproc.exeJOIN = join.exeMSGBIND = msgbind.exeTODAY = today.exeMAKE_KEY = make_key.exePACKAGER = packager.exeMAKESTUB = makestub.exeSFXSTUB = sfxstub.exe# C options!if "$(COMPILER)" == "QC25"||"$(FORCE_MSGRAPH)" != ""MEM_MARGINAL = /AM!elseMEM_MARGINAL = /AS!endifSTD_COPT = $(MSC_OPT) /AM /DARJUTIL $(COPT)ARJ_COPT = $(MSC_OPT) /AM /DSFL=4 $(COPT)SFV_COPT = $(MSC_OPT) $(MEM_MARGINAL) /DSFL=3 $(COPT)SFX_COPT = $(MSC_OPT) /AS /DSFL=2 $(COPT)SFJ_COPT = $(MSC_OPT) /AS /DSFL=1 $(COPT)REJ_COPT = $(MSC_OPT) $(MEM_MARGINAL) /DREARJ $(COPT)REG_COPT = $(MSC_OPT) /AS /DREGISTER $(COPT)ADI_COPT = $(MSC_OPT) /AS /DARJDISP $(COPT)FAR_COPT = /NDARJ_MSG $(NEARP_OPT) $(ARJ_COPT)FDS_COPT = /NDFARD_SEG $(ARJ_COPT)NEAR_COPT = /NT_TEXT $(ARJ_COPT)CRP_COPT = /Ot /AT $(COPT)# Linkup objectsSTD_OBJ = /STACK:8192ARJ_OBJ = /STACK:6144 $(LINKLIB)VARSTCKSTB_OBJ =SFV_OBJ = /STACK:8192 $(LINKLIB)VARSTCKSFX_OBJ = /STACK:4096 $(LINKLIB)VARSTCKSFJ_OBJ = /STACK:2048 $(LINKLIB)VARSTCKREJ_OBJ = /STACK:8192 $(LINKLIB)VARSTCKREG_OBJ =ADI_OBJ =CRP_OBJ = /TINY $(LINKLIB)CRTCOM.LIB# Supplemental objects# LibrariesSTD_LIB = $(LINKLIB)!ifdef FORCE_MSGRAPHARJ_LIB = $(LINKLIB)+$(LINKLIB)graphicsSFV_LIB = $(LINKLIB)+$(LINKLIB)graphicsADI_LIB = $(LINKLIB)+$(LINKLIB)graphicsREJ_LIB = $(LINKLIB)+$(LINKLIB)graphics!elseARJ_LIB = $(LINKLIB)SFV_LIB = $(LINKLIB)ADI_LIB = $(LINKLIB)REJ_LIB = $(LINKLIB)!endifSTB_LIB =SFX_LIB = $(LINKLIB)SFJ_LIB = $(LINKLIB)REG_LIB = $(LINKLIB)CRP_LIB = $(LINKLIB)!endifLRF = echo > NUL!endif#### OS/2 protected mode section##!if "$(MODE)" == "OS216"OS_ID = OS2!ifndef COMPILERCOMPILER = MSC6!endif## Assembly language options are the same - we'll use MASM everywhere#ASM = ml.exeASMOPT = /I$(BASEDIR) /c /Fo$@ %sSTD_ASMOPT = /DMODL=MEDIUM /DARJUTIL $(ASMOPT)STB_ASMOPT = /DMODL=SMALL /DSFXSTUB $(ASMOPT)SFV_ASMOPT = /DMODL=SMALL /DARJSFX $(ASMOPT)SFX_ASMOPT = /DMODL=SMALL /DARJSFX /DNO_FAR $(ASMOPT)SFJ_ASMOPT = /DMODL=SMALL /DARJSFXJR /DNO_FAR $(ASMOPT)REJ_ASMOPT = /DMODL=SMALL /DREARJ /DNO_FAR $(ASMOPT)REG_ASMOPT = /DMODL=SMALL /DREGISTER /DNO_FAR $(ASMOPT)ADI_ASMOPT = /DMODL=SMALL /DARJDISP /DNO_FAR $(ASMOPT)CRP_ASMOPT = /DMODL=SMALL $(ASMOPT)## Microsoft C v 6.0 compiler#!if "$(COMPILER)" == "MSC6"CC_CODE = $(COMPILER)_OS2CC = cl.exe!ifdef DEBUGMSCDBG = /ZdMSLINKDBG = /CODEVIEW /MAP:fullMAKESYM = 1!endifCOPT = /I$(BASEDIR) /I. /Fo$@ $(MSCDBG) %sNEARPOPT =LINKER = link.exeLINKLIB =LINKOPT = /NOE /PMTYPE:VIO# ExecutablesARJ = arj.exeARJSFXV = arjsfxv.exeARJSFX = arjsfx.exeARJSFXJR = arjsfxjr.exeARJCRYPT = arjcrypt.dllREARJ = rearj.exeREGISTER = register.exeARJDISP = arjdisp.exePOSTPROC = postproc.exeJOIN = join.exeMSGBIND = msgbind.exeTODAY = today.exeMAKE_KEY = make_key.exePACKAGER = packager.exeMAKESTUB = makestub.exeSFXSTUB = sfxstub.exe# C optionsSTD_COPT = /Olrg /AM /DARJUTIL $(COPT)ARJ_COPT = /Olrg /AM /DSFL=4 $(COPT)SFV_COPT = /Olrg /AS /DSFL=3 $(COPT)SFX_COPT = /Olrg /AS /DSFL=2 $(COPT)SFJ_COPT = /Olrg /AS /DSFL=1 $(COPT)REJ_COPT = /Olrg /AS /DREARJ $(COPT)REG_COPT = /Olrg /AS /DREGISTER $(COPT)ADI_COPT = /Olrg /AS /DARJDISP $(COPT)FAR_COPT = /Olrg /NDARJ_MSG $(NEARP_OPT) $(ARJ_COPT)FDS_COPT = /NDFARD_SEG $(ARJ_COPT)NEAR_COPT = /NT_TEXT $(ARJ_COPT)CRP_COPT = /Ot /ALw /Zl $(COPT)# Linkup objectsSTD_OBJ = $(MSLINKDBG) /STACK:8192ARJ_OBJ = $(MSLINKDBG) /STACK:6144 $(LINKLIB)VARSTCKSTB_OBJ = $(MSLINKDBG)SFV_OBJ = $(MSLINKDBG) /EXEPACK /STACK:6144 $(LINKLIB)VARSTCKSFX_OBJ = $(MSLINKDBG) /EXEPACK /STACK:6144 $(LINKLIB)VARSTCKSFJ_OBJ = $(MSLINKDBG) /EXEPACK /STACK:2048 $(LINKLIB)VARSTCKREJ_OBJ = $(MSLINKDBG) /STACK:10240 $(LINKLIB)VARSTCKREG_OBJ = $(MSLINKDBG)ADI_OBJ = $(MSLINKDBG) /EXEPACK $(APILMR)CRP_OBJ = $(MSLINKDBG) /STACK:2048# Supplemental objects# LibrariesSTD_LIB = $(LINKLIB)OS2+$(LINKLIB)MLIBCEPARJ_LIB = $(LINKLIB)OS2+$(LINKLIB)MLIBEEPSTB_LIB = $(LINKLIB)OS2SFV_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEPSFX_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEPSFJ_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEPREJ_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBCEPREG_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBEEPADI_LIB = $(LINKLIB)OS2+$(LINKLIB)SLIBCEPCRP_LIB = $(LINKLIB)OS2+$(LINKLIB)LLIBCDLL# New executable definitionsSTD_DEF = $(CC_CODE)\default.defARJ_DEF = $(CC_CODE)\arj.defSTB_DEF = $(CC_CODE)\sfxstub.defSFV_DEF = $(CC_CODE)\arjsfxv.defSFX_DEF = $(CC_CODE)\arjsfx.defSFJ_DEF = $(CC_CODE)\arjsfxjr.defREJ_DEF = $(CC_CODE)\rearj.defREG_DEF = $(CC_CODE)\register.defADI_DEF = $(CC_CODE)\arjdisp.defCRP_DEF = $(CC_CODE)\arjcrypt.def!endifLRF = echo > NUL!endif#### OS/2 protected mode LX section##!if "$(MODE)" == "OS232"OS_ID = OS2!ifndef COMPILERCOMPILER = VACPP!endif## Assembly language options are the same - we'll use MASM everywhere#ASM = ml.exeASMOPT = /I$(BASEDIR) /c /Fo$@ %sSTD_ASMOPT = /DMODL=FLAT /DARJUTIL $(ASMOPT)STB_ASMOPT = /DMODL=FLAT /DSFXSTUB $(ASMOPT)SFV_ASMOPT = /DMODL=FLAT /DARJSFX $(ASMOPT)SFX_ASMOPT = /DMODL=FLAT /DARJSFX $(ASMOPT)SFJ_ASMOPT = /DMODL=FLAT /DARJSFXJR /DNO_FAR $(ASMOPT)REJ_ASMOPT = /DMODL=FLAT /DREARJ /DNO_FAR $(ASMOPT)REG_ASMOPT = /DMODL=FLAT /DREGISTER /DNO_FAR $(ASMOPT)ADI_ASMOPT = /DMODL=FLAT /DARJDISP /DNO_FAR $(ASMOPT)CRP_ASMOPT = /DMODL=FLAT $(ASMOPT)## IBM C Set/2 v 2.xx or 3.65#!if "$(COMPILER)" == "CSET2" || "$(COMPILER)" == "VACPP"CC_CODE = $(COMPILER)CC = icc.exe!ifdef LIBCLIBCKLUDGE = /Rn /Gp /Gn- /I$(LIBCPATH)!elseLIBCKLUDGE =!endif!ifdef DEBUGCSETDBG = /Ti+CLNKDBG = /DE /MAP:fullNP_SFX = 1MAKESYM = 1!else!if "$(COMPILER)" == "CSET2"CSETSTK = /Gs-CSETDBG = /Gi /O /Oi-!elseCSETDBG = /GiVAC_SPEED = /O /Oi-VAC_SIZE = /Oc!endif!endif!if "$(COMPILER)" == "VACPP"VACPP_COPT = /Gs /qarch=x86 /qnoro /qtune=pentium2 /Wpro- /Wcnd-!elseVACPP_COPT = /G4!endifCOPT = /I$(BASEDIR) /Fo$@ /c /Sp /I. $(LIBCKLUDGE) $(CSETDBG) $(VACPP_COPT) /Tl5 %sNEARPOPT =!if "$(COMPILER)" == "VACPP"LINKER = ilink.exe /NOFREE!elseLINKER = link386.exe!endif# C optionsSTD_COPT = $(VAC_SIZE) $(CSETSTK) /DARJUTIL $(COPT)ARJ_COPT = $(VAC_SPEED) $(CSETSTK) /DSFL=4 $(COPT)ARJ_RECOPT = $(VAC_SIZE) $(CSETSTK) /DSFL=4 $(COPT)SFV_COPT = $(VAC_SIZE) $(CSETSTK) /DSFL=3 $(COPT)SFX_COPT = $(VAC_SIZE) $(CSETSTK) /DSFL=2 $(COPT)SFJ_COPT = $(VAC_SIZE) $(CSETSTK) /DSFL=1 $(COPT)REJ_COPT = /Gs+ /DREARJ $(COPT)REG_COPT = $(VAC_SIZE) $(CSETSTK) /DREGISTER $(COPT)ADI_COPT = $(VAC_SIZE) $(CSETSTK) /DARJDISP $(COPT)FAR_COPT = $(NEARP_OPT) $(ARJ_COPT)FDS_COPT = /NDFARD_SEG $(ARJ_COPT)NEAR_COPT = $(CSETSTK) $(ARJ_COPT)CRP_COPT = /Ge- $(COPT)# LIBC hack for linking!ifdef LIBC!if "$(COMPILER)" == "VACPP"LINKLIB = LIBCSI+OS2386+VACPP\VACPP365

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -