📄 makefile.emx
字号:
# Makefile for Zip, ZipCloak, ZipNote and ZipSplit# using emx 0.9c for DOS.# By Kai-Uwe Rommel, Chr. Spieler, E-Yen Tan (and others).# Last updated 30th June 1998.## This Makefile is a stripped down version of win32/Makefile.emx that# builds executables applying the default MSDOS emx setup. For variant# targets (using zlib), and cross-compilation for WIN32 or OS/2, take a# look into "win32/makefile.emx" resp. "os2/makefile.os2".## Supported Make utilities:# - Microsoft/IBM nmake (e.g. from MSC 6.0 or newer)# - dmake 3.8 or higher# - GNU make, at least version 3.68 (GNUish 16-bit port, RSXNT Make 3.75 in a# Win95/WinNT DOS box, DJGPP v1.12 Make 3.71, some versions of DJGPP v2.x# 32-bit Make; current DJGPP v2.01 Make 3.76.1 does NOT work)# - NOT watcom make# The "smart" Make utilities mentioned below are Christian Spieler's# enhanced version of GNUish 16-bit Make (3.74) and his adaption of these# GNU Make sources to EMX (32-bit).# Supported 32-bit C Compilers for MSDOS:# - GNU gcc (emx kit 0.9c or newer, 32-bit)# Supported Assemblers:# - GNU as with GNU gcc# To use, enter "make/nmake/dmake -f msdos/makefile.emx"# (this makefile depends on its name being "msdos/makefile.emx").# emx 0.9c, gcc, a.out format, for MS-DOSCC=gcc -O2 -m486 -WallCFLAGS=-DDOS -DMSDOS -DASM_CRCAS=gccASFLAGS=-Di386LDFLAGS=-o ./LDFLAGS2=-s -Zsmall-convOUT=-oOBJ=.oCRC32=crc_gccOBJA=matchgcc.oOBJZS=msdos.oOBJUS=msdos_.oOSDEP_H=msdos/osdep.hZIPUP_H=msdos/zipup.h#default settings for target dependent macros:DIRSEP = /AS_DIRSEP = /RM = delLOCAL_OPTS = $(LOCAL_ZIP)CCFLAGS = $(CFLAGS) $(LOCAL_OPTS)OBJZ1 = zip$(OBJ) zipfile$(OBJ) zipup$(OBJ) fileio$(OBJ) util$(OBJ) \ $(CRC32)$(OBJ) crctab$(OBJ)OBJZ2 = globals$(OBJ) deflate$(OBJ) trees$(OBJ) crypt$(OBJ) \ ttyio$(OBJ)OBJZ = $(OBJZ1) $(OBJZ2) $(OBJZS) $(OBJA)OBJU1 = zipfile_$(OBJ) fileio_$(OBJ) util_$(OBJ) globals$(OBJ)OBJU = $(OBJU1) $(OBJUS)OBJN = zipnote$(OBJ) $(OBJU)OBJS = zipsplit$(OBJ) $(OBJU)OBJC1 = zipcloak$(OBJ) crctab$(OBJ) crypt_$(OBJ) ttyio$(OBJ)OBJC = $(OBJC1) $(OBJU)ZIP_H = zip.h ziperr.h tailor.h $(OSDEP_H)# rules.SUFFIXES: .c $(OBJ).c$(OBJ): $(CC) -c -I. $(CCFLAGS) $(OUT)$@ $<# targetsall: zip.exe zipnote.exe zipsplit.exe zipcloak.exezip$(OBJ): zip.c $(ZIP_H) revision.h crypt.h ttyio.hzipfile$(OBJ): zipfile.c $(ZIP_H)zipup$(OBJ): zipup.c $(ZIP_H) revision.h crypt.h $(ZIPUP_H)fileio$(OBJ): fileio.c $(ZIP_H)util$(OBJ): util.c $(ZIP_H)globals$(OBJ): globals.c $(ZIP_H)deflate$(OBJ): deflate.c $(ZIP_H)trees$(OBJ): trees.c $(ZIP_H)crc32$(OBJ): crc32.c $(ZIP_H)crctab$(OBJ): crctab.c $(ZIP_H)crypt$(OBJ): crypt.c $(ZIP_H) crypt.h ttyio.httyio$(OBJ): ttyio.c $(ZIP_H) crypt.h ttyio.hmsdos$(OBJ): msdos/msdos.c $(ZIP_H) $(CC) -c -I. $(CCFLAGS) msdos$(DIRSEP)msdos.cwin32zip$(OBJ): win32/win32zip.c $(ZIP_H) win32/win32zip.h win32/nt.h $(CC) -c -I. $(CCFLAGS) win32$(DIRSEP)win32zip.cwin32$(OBJ): win32/win32.c $(ZIP_H) win32/win32zip.h $(CC) -c -I. $(CCFLAGS) win32$(DIRSEP)win32.cnt$(OBJ): win32/nt.c $(ZIP_H) win32/nt.h $(CC) -c -I. $(CCFLAGS) win32$(DIRSEP)nt.ccrc_gcc$(OBJ): crc_i386.S # 32bit, GNU AS $(AS) $(ASFLAGS) -x assembler-with-cpp -c -o $@ crc_i386.Smatchgcc$(OBJ): match.S $(AS) $(ASFLAGS) -x assembler-with-cpp -c -o $@ match.Szipcloak$(OBJ): zipcloak.c $(ZIP_H) revision.h crypt.h ttyio.hzipnote$(OBJ): zipnote.c $(ZIP_H) revision.hzipsplit$(OBJ): zipsplit.c $(ZIP_H) revision.hzipfile_$(OBJ): zipfile.c $(ZIP_H) $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ zipfile.cfileio_$(OBJ): fileio.c $(ZIP_H) $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ fileio.cutil_$(OBJ): util.c $(ZIP_H) $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ util.ccrypt_$(OBJ): crypt.c $(ZIP_H) crypt.h ttyio.h $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ crypt.cmsdos_$(OBJ): msdos/msdos.c $(ZIP_H) $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ msdos$(DIRSEP)msdos.cwin32_$(OBJ): win32/win32.c $(ZIP_H) win32/win32zip.h $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ win32$(DIRSEP)win32.c# This next bit is nasty, but is needed to overcome the MS-DOS command# line limit as response files for emx's gcc seem to only work if each# file is on a different line. DJGPP doesn't do this (if you are at all# interested).zip.exe: $(OBJZ)# for DUMB make utilities, uncomment the following commands: -@$(RM) zip.rsp @for %%f in ($(OBJZ1)) do echo %%f >> zip.rsp @for %%f in ($(OBJZ2)) do echo %%f >> zip.rsp @for %%f in ($(OBJZS) $(OBJA)) do echo %%f >> zip.rsp $(CC) $(LDFLAGS)$@ @zip.rsp $(LDFLAGS2) @$(RM) zip.rsp# smart make utilities (like well done ports of GNU Make) can use this:# $(CC) $(LDFLAGS)$@ $(OBJZ) $(LDFLAGS2)zipcloak.exe: $(OBJC)# for DUMB make utilities, uncomment the following commands: -@$(RM) zipcloak.rsp @for %%f in ($(OBJC1)) do echo %%f >> zipcloak.rsp @for %%f in ($(OBJU1)) do echo %%f >> zipcloak.rsp @for %%f in ($(OBJUS)) do echo %%f >> zipcloak.rsp $(CC) $(LDFLAGS)$@ @zipcloak.rsp $(LDFLAGS2) @$(RM) zipcloak.rsp# smart make utilities (like well done ports of GNU Make) can use this:# $(CC) $(LDFLAGS)$@ $(OBJC) $(LDFLAGS2)zipnote.exe: $(OBJN) $(CC) $(LDFLAGS)$@ $(OBJN) $(LDFLAGS2)zipsplit.exe: $(OBJS) $(CC) $(LDFLAGS)$@ $(OBJS) $(LDFLAGS2)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -