home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 9 Archive / 09-Archive.zip / zip22.zip / os2 / makefile.os2 next >
Makefile  |  1997-08-26  |  14KB  |  528 lines

  1. # Makefile for Zip, ZipCloak, ZipNote and ZipSplit
  2.  
  3. # Supported Make utilities:
  4. # - Microsoft/IBM nmake
  5. # - dmake 3.8 or higher
  6. # - GNU make, at least version 3.68
  7. # - NOT watcom make
  8. # For Microsoft and Watcom C, better use NMAKE,
  9. # otherwise it doesn't matter.
  10.  
  11. # Supported 16-bit C Compilers (created programs run under OS/2 1.x and 2.x):
  12. # - Microsoft C 6.00A
  13. # - Watcom C/C++ 16-bit
  14.  
  15. # Supported 32-bit C Compilers (created programs run under OS/2 2.x only):
  16. # - GNU gcc (emx kit 0.9c or newer)
  17. # - IBM C Set/2 or C Set++   - does not yet work with ASM code
  18. # - Watcom C/C++ 32-bit      - does not yet work with ASM code
  19. # - Borland C++              - no ASM code yet
  20. # - MetaWare High C/C++      - no ASM code yet
  21.  
  22. # Supported Cross-Compilers for MS-DOS:
  23. # - Microsoft C 6.00A (16-bit)
  24. # - Watcom C/C++ (16- and 32-bit)
  25. # - GNU gcc (emx kit 0.9c or newer, 32-bit)
  26.  
  27. # Supported Cross-Compilers for Win32 (WinNT/Win95):
  28. # - GNU gcc (emx kit 0.9c or newer, with RSXNT 1.3 or newer)
  29.  
  30. # Supported Assemblers:
  31. # - Microsoft MASM 6.00 with Microsoft C, IBM C
  32. # - Watcom WASM with Watcom C/C++
  33. # - GNU as with GNU gcc
  34.  
  35. # To use MASM 5.x instead of MASM 6.00:
  36. # - set AS="masm -T -Ml"
  37. # - set ASEOL=";"
  38.  
  39.  
  40. # To use, enter "make/nmake/dmake -f os2/makefile.os2"
  41. # (this makefile depends on its name being "os2/makefile.os2").
  42.  
  43. # Add -DNO_ASM to CFLAGS and define OBJA to `nothing' if you do not have
  44. # masm or ml.
  45. # Add -DDYN_ALLOC to ASFLAGS if you have defined it in tailor.h or CFLAGS
  46.  
  47. # Note: assembly language modules are really only supported for
  48. # Microsoft 16-bit and GNU gcc 32-bit compilation.
  49.  
  50. # Notes on 16-bit (Microsoft C 6.00) compilation:
  51.  
  52. #   The resulting programs can be used under OS/2 protected mode only.
  53. #   A larger stack has to be used for OS/2 because system calls
  54. #   use more stack than under DOS, 8k is recommended by Microsoft.
  55. #   Note that __STDC__ has to be defined explicitly with C 6.00 when -Ze
  56. #   is given, because Microsoft disables __STDC__ when their extensions
  57. #   are enabled. This is different from the C 5.10 behaviour.
  58.  
  59. # Notes on 32-bit OS/2 compilation:
  60.  
  61. #   The resulting programs can be used under OS/2 protected
  62. #   mode of OS/2 2.x only, not under 1.x and not under DOS.
  63. #   It makes no difference if __STDC__ is defined or not.
  64. #   Borland C++ works with DYN_ALLOC only.
  65.  
  66. # Special Notes on IBM C/C++ compilation:
  67.  
  68. #   The older C compiler (C Set/2) breaks, while optimizing, on deflate.c
  69. #   and trees.c (generates incorrect code). The newer C++ compiler (C Set++)
  70. #   doesn't but instead breaks on crypt.c in the initial version and up to
  71. #   CSD level 003. Starting with CSD level 004, it doesn't break any longer.
  72.  
  73. # Notes on Watcom C/C++ compilation for DOS with the PMODE/W extender:
  74. #
  75. #   You need to add the following section to your \watcom\binb\wlsystem.lnk
  76. #   file and also need to copy pmodew.exe to the same directory:
  77. #
  78. #   system begin pmodew
  79. #       option osname='PMODE/W'
  80. #       libpath %WATCOM%\lib386
  81. #       libpath %WATCOM%\lib386\dos
  82. #       op stub=pmodew.exe
  83. #       format os2 le
  84. #   end
  85. #
  86. #   PMODE/W 1.16 or higher is required.
  87.  
  88.  
  89. default:
  90.     @echo "Enter $(MAKE) -f os2/makefile.os2 target"
  91.     @echo "where target is one of:"
  92.     @echo "   msc mscdos ibm ibmdyn ibmdebug ibmprof"
  93.     @echo "   metaware borland gcc gccdyn gccdebug gccdos gccwin32"
  94.     @echo "   watcom watcom16 watcomdos watcom16dos pmodew"
  95.  
  96. # MS C 6.00 for OS/2, 16-bit
  97. msc:
  98.     $(MAKE) -f os2/makefile.os2 zips \
  99.     CC="cl -nologo -AL -Ocegit -Gs $(FP)" \
  100.     CFLAGS="-W1 -Zep -J -G2 -D__STDC__ -DOS2 -DASM_CRC" \
  101.     AS="ml -nologo -c -Zm -Cp" \
  102.     ASFLAGS="-D__LARGE__ -D__286" \
  103.     LDFLAGS="-F 2000 -Lp -Fe" \
  104.     LDFLAGS2="-link /noe /pm:vio" \
  105.     OUT="-Fo" \
  106.     OBJ=".obj" \
  107.     CRC32="crc_i86" \
  108.     OBJA="match.obj" \
  109.     DEF="os2\zip.def"
  110.  
  111. # MS C 6.00 for OS/2, 16-bit, debug
  112. mscdebug:
  113.     $(MAKE) -f os2/makefile.os2 zips \
  114.     CC="cl -nologo -AL -Zi -Od $(FP)" \
  115.     CFLAGS="-W1 -Zep -J -G2 -D__STDC__ -DOS2 -DASM_CRC" \
  116.     AS="ml -nologo -c -Zim -Cp" \
  117.     ASFLAGS="-D__LARGE__ -D__286" \
  118.     LDFLAGS="-F 2000 -Lp -Fe" \
  119.     LDFLAGS2="-link /noe /pm:vio" \
  120.     OUT="-Fo" \
  121.     OBJ=".obj" \
  122.     CRC32="crc_i86" \
  123.     OBJA="match.obj" \
  124.     DEF="os2\zip.def"
  125.  
  126. # crosscompilation for MS-DOS with MS C 6.00
  127. mscdos:
  128.     $(MAKE) -f os2/makefile.os2 zips \
  129.     CC="cl -nologo -AL -Ocegit -Gs $(FP)" \
  130.     CFLAGS="-W1 -Zep -J -D__STDC__ -DDOS -DASM_CRC -DDYN_ALLOC" \
  131.     AS="ml -nologo -c -Zm -Cp" \
  132.     ASFLAGS="-D__LARGE__ -DDYN_ALLOC" \
  133.     LDFLAGS="-F 2000 -Lr -Fe" \
  134.     LDFLAGS2="-link /noe /exe" \
  135.     OUT="-Fo" \
  136.     OBJ=".obj" \
  137.     CRC32="crc_i86" \
  138.     OBJA="match.obj" \
  139.     OBJ2="msdos.obj" OBJU2="msdos_.obj" \
  140.     OSDEP_H="msdos/osdep.h" ZIPUP_H="msdos/zipup.h"
  141.  
  142.  
  143. # IBM C Set/2, statically linked runtime
  144. ibm:
  145.     $(MAKE) -f os2/makefile.os2 zips \
  146.     CC="icc -Q -O -Gs" \
  147.     CFLAGS="-Sm -Sp1 -DOS2 -DNO_ASM" \
  148.     AS="ml -nologo -c -Zm -Cp" \
  149.     ASFLAGS="" \
  150.     LDFLAGS="-B/ST:0x50000 -Fe" \
  151.     LDFLAGS2="" \
  152.     OUT="-Fo" \
  153.     OBJ=".obj" \
  154.     OBJA="" \
  155.     DEF="os2/zip.def"
  156.  
  157. # IBM C Set/2, dynamically linked runtime
  158. ibmdyn:
  159.     $(MAKE) -f os2/makefile.os2 zips \
  160.     CC="icc -Q -O -Gd -Gs" \
  161.     CFLAGS="-Sm -Sp1 -DOS2 -DNO_ASM" \
  162.     AS="ml -nologo -c -Zm -Cp" \
  163.     ASFLAGS="" \
  164.     LDFLAGS="-B/ST:0x50000 -Fe" \
  165.     LDFLAGS2="" \
  166.     OUT="-Fo" \
  167.     OBJ=".obj" \
  168.     OBJA="" \
  169.     DEF="os2/zip.def"
  170.  
  171. # IBM C Set/2, debug version
  172. ibmdebug:
  173.     $(MAKE) -f os2/makefile.os2 zips \
  174.     CC="icc -Q -Ti" \
  175.     CFLAGS="-Sm -Sp1 -DOS2 -DNO_ASM -Tm" \
  176.     AS="ml -nologo -c -Zim -Cp" \
  177.     ASFLAGS="" \
  178.     LDFLAGS="-B/ST:0x50000 -Fe" \
  179.     LDFLAGS2="" \
  180.     OUT="-Fo" \
  181.     OBJ=".obj" \
  182.     OBJA="" \
  183.     DEF="os2/zip.def"
  184.  
  185. # IBM C Set/2, profiling version for PROFIT
  186. ibmprof:
  187.     $(MAKE) -f os2/makefile.os2 zips \
  188.     CC="icc -Q -O -Gs -Gh -Ti" \
  189.     CFLAGS="-Sm -Sp1 -DOS2 -DNO_ASM" \
  190.     AS="ml -nologo -c -Zm -Cp" \
  191.     ASFLAGS="" \
  192.     LDFLAGS="-B/ST:0x50000 -Fe" \
  193.     LDFLAGS2="profit.obj" \
  194.     OUT="-Fo" \
  195.     OBJ=".obj" \
  196.     OBJA="" \
  197.     DEF="os2/zip.def"
  198.  
  199. # Watcom C/386 9.0 or higher
  200. watcom:
  201.     $(MAKE) -f os2/makefile.os2 zips \
  202.     CC="wcl386 -bt=os2v2 -zq -Ox -s" \
  203.     CFLAGS="-Zp1 -DOS2 -DNO_ASM" \
  204.     AS="wasm -bt=os2v2 -3p" \
  205.     ASFLAGS="" \
  206.     LDFLAGS="-k0x50000 -x -l=os2v2 -Fe=" \
  207.     LDFLAGS2="" \
  208.     OUT="-Fo" \
  209.     OBJ=".obj" \
  210.     OBJA="" \
  211.     DIRSEP="\\" \
  212.     AS_DIRSEP="\\"
  213.  
  214. # Watcom C/286 9.0 or higher
  215. watcom16:
  216.     $(MAKE) -f os2/makefile.os2 zips \
  217.     CC="wcl -bt=os2 -zq -ml -Ox -s" \
  218.     CFLAGS="-Zp1 -DOS2 -DNO_ASM" \
  219.     AS="wasm -bt=os2 -3p" \
  220.     ASFLAGS="" \
  221.     LDFLAGS="/\"option newfiles\" -k0x3000 -x -l=os2 -Fe=" \
  222.     LDFLAGS2="" \
  223.     OUT="-Fo" \
  224.     OBJ=".obj" \
  225.     OBJA="" \
  226.     DIRSEP="\\" \
  227.     AS_DIRSEP="\\"
  228.  
  229. # Watcom C/386 9.0 or higher, crosscompilation for DOS, DOS4GW extender
  230. watcomdos:
  231.     $(MAKE) -f os2/makefile.os2 zips \
  232.     CC="wcl386 -bt=dos4g -zq -Ox -s" \
  233.     CFLAGS="-Zp1 -DDOS -DMSDOS -DNO_ASM" \
  234.     AS="wasm -bt=dos4g -3p" \
  235.     ASFLAGS="" \
  236.     LDFLAGS="-k0x50000 -x -l=dos4g -Fe=" \
  237.     LDFLAGS2="" \
  238.     OUT="-Fo" \
  239.     OBJ=".obj" \
  240.     OBJA="" \
  241.     OBJ2="msdos.obj" \
  242.     OBJU2="msdos_.obj" \
  243.     OSDEP_H="msdos/osdep.h" \
  244.     ZIPUP_H="msdos/zipup.h" \
  245.     DIRSEP="\\" \
  246.     AS_DIRSEP="\\"
  247.  
  248. # Watcom C/386 9.0 or higher, crosscompilation for DOS, PMODE/W extender
  249. pmodew:
  250.     $(MAKE) -f os2/makefile.os2 zips \
  251.     CC="wcl386 -bt=dos4g -zq -Ox -s" \
  252.     CFLAGS="-Zp1 -DDOS -DMSDOS -DASM_CRC" \
  253.     AS="wasm -bt=dos4g -3p" \
  254.     ASFLAGS="" \
  255.     LDFLAGS="-k0x50000 -x -l=pmodew -Fe=" \
  256.     LDFLAGS2="" \
  257.     OUT="-Fo" \
  258.     OBJ=".obj" \
  259.     CRC32="crc_i386" \
  260.     OBJA="match32.obj" \
  261.     OBJ2="msdos.obj" \
  262.     OBJU2="msdos_.obj" \
  263.     OSDEP_H="msdos/osdep.h" \
  264.     ZIPUP_H="msdos/zipup.h" \
  265.     DIRSEP="\\" \
  266.     AS_DIRSEP="\\"
  267.  
  268. # Watcom C/286 9.0 or higher, crosscompilation for DOS
  269. watcom16dos:
  270.     $(MAKE) -f os2/makefile.os2 zips \
  271.     CC="wcl -bt=dos -zq -ml -Ox -s" \
  272.     CFLAGS="-Zp1 -DDOS -DMSDOS -DDYN_ALLOC -DNO_ASM" \
  273.     AS="wasm -bt=dos -3p" \
  274.     ASFLAGS="-DDYN_ALLOC" \
  275.     LDFLAGS="-k0x2000 -x -l=dos -Fe=" \
  276.     LDFLAGS2="" \
  277.     OUT="-Fo" \
  278.     OBJ=".obj" \
  279.     OBJA="" \
  280.     OBJ2="msdos.obj" \
  281.     OBJU2="msdos_.obj" \
  282.     OSDEP_H="msdos/osdep.h" \
  283.     ZIPUP_H="msdos/zipup.h" \
  284.     DIRSEP="\\" \
  285.     AS_DIRSEP="\\"
  286.  
  287. # MetaWare High C/C++ 3.2
  288. metaware:
  289.     $(MAKE) -f os2/makefile.os2 zips \
  290.     CC="hc -O2" \
  291.     CFLAGS="-D__32BIT__ -DOS2 -DNO_ASM" \
  292.     AS="ml -nologo -c -Zm -Cp" \
  293.     ASFLAGS="" \
  294.     LDFLAGS="-o " \
  295.     LDFLAGS2="" \
  296.     OUT="-o ./" \
  297.     OBJ=".obj" \
  298.     DEF="-Hdef=os2/zip.def"
  299.  
  300. # Borland C++
  301. borland:
  302.     $(MAKE) -f os2/makefile.os2 zips \
  303.     CC="bcc -O" \
  304.     CFLAGS="-w- -DOS2 -DDYN_ALLOC -DNO_ASM" \
  305.     AS="ml -nologo -c -Zm -Cp" \
  306.     ASFLAGS="" \
  307.     LDFLAGS="-e" \
  308.     LDFLAGS2="" \
  309.     OUT="-o" \
  310.     OBJ=".obj" \
  311.     OBJA="" \
  312.     DEF="-sDos2/zip.def"
  313.  
  314. # emx 0.9c, gcc, OMF format, statically linked C runtime and emx
  315. gcc:
  316.     $(MAKE) -f os2/makefile.os2 zips \
  317.     CC="gcc -Zomf -O -Wimplicit" \
  318.     CFLAGS="-DOS2 -DASM_CRC" \
  319.     AS="gcc -Zomf" \
  320.     ASFLAGS="-Di386" \
  321.     LDFLAGS="-o ./" \
  322.     LDFLAGS2="-Zsys -Zstack 320 -s -Zsmall-conv" \
  323.     OUT="-o" \
  324.     OBJ=".obj" \
  325.     CRC32="crc_gcc" \
  326.     OBJA="matchgcc.obj" \
  327.     DEF="os2/zip.def"
  328.  
  329. # emx 0.9c, gcc, OMF format, dynamically linked C runtime and emx
  330. gccdyn:
  331.     $(MAKE) -f os2/makefile.os2 zips \
  332.     CC="gcc -Zomf -O -Wimplicit" \
  333.     CFLAGS="-DOS2 -DASM_CRC" \
  334.     AS="gcc -Zomf" \
  335.     ASFLAGS="-Di386" \
  336.     LDFLAGS="-o ./" \
  337.     LDFLAGS2="-Zcrtdll -Zstack 320 -s" \
  338.     OUT="-o" \
  339.     OBJ=".obj" \
  340.     CRC32="crc_gcc" \
  341.     OBJA="matchgcc.obj" \
  342.     DEF="os2/zip.def"
  343.  
  344. # emx 0.9c, gcc, a.out format, with debug info for gdb
  345. gccdebug:
  346.     $(MAKE) -f os2/makefile.os2 zips \
  347.     CC="gcc -g -Wimplicit" \
  348.     CFLAGS="-DOS2 -DASM_CRC" \
  349.     AS="gcc" \
  350.     ASFLAGS="-Di386" \
  351.     LDFLAGS="-o ./" \
  352.     LDFLAGS2="" \
  353.     OUT="-o" \
  354.     OBJ=".o" \
  355.     CRC32="crc_gcc" \
  356.     OBJA="matchgcc.o" \
  357.     DEF="os2/zip.def"
  358.  
  359. # emx 0.9c, gcc, a.out format, for MS-DOS
  360. gccdos:
  361.     $(MAKE) -f os2/makefile.os2 zips \
  362.     CC="gcc -O -Wimplicit" \
  363.     CFLAGS="-DDOS -DMSDOS -DASM_CRC -DNO_MKTIME" \
  364.     AS="gcc" \
  365.     ASFLAGS="-Di386" \
  366.     LDFLAGS="-o ./" \
  367.     LDFLAGS2="-s -Zsmall-conv" \
  368.     OUT="-o" \
  369.     OBJ=".o" \
  370.     CRC32="crc_gcc" \
  371.     OBJA="matchgcc.o" \
  372.     OBJ2="msdos.o" \
  373.     OBJU2="msdos_.o" \
  374.     OSDEP_H="msdos/osdep.h" \
  375.     ZIPUP_H="msdos/zipup.h"
  376.  
  377. # emx 0.9c, gcc, RSXNT 1.3, cross-compilation for Win32
  378. gccwin32:
  379.     $(MAKE) -f os2/makefile.os2 zips \
  380.     CC="gcc -Zwin32 -O -m486 -Wall" \
  381.     CFLAGS="-DWIN32 -DASM_CRC" \
  382.     AS="gcc -Zwin32" \
  383.     ASFLAGS="-Di386" \
  384.     LDFLAGS="-o ./" \
  385.     LDFLAGS2="-s -Zsmall-conv" \
  386.     OUT="-o" \
  387.     OBJ=".o" \
  388.     CRC32="crc_gcc" \
  389.     OBJA="matchgcc.o" \
  390.     OBJ2="win32zip.o win32.o nt.o" \
  391.     OBJU2="win32_.o" \
  392.     OSDEP_H="win32/osdep.h" \
  393.     ZIPUP_H="win32/zipup.h" \
  394.     DEF="win32/zip.def"
  395.  
  396. # VPATH = .;os2
  397.  
  398. # variables
  399.  
  400. #default settings for target dependent macros:
  401. DIRSEP = /
  402. AS_DIRSEP = /
  403. # LOCAL_OPTS =
  404. CCFLAGS = $(CFLAGS) $(LOCAL_OPTS)
  405.  
  406. OSDEP_H = os2/osdep.h
  407. ZIPUP_H = os2/os2zip.h os2/zipup.h
  408. CRC32   = crc32
  409.  
  410.  
  411. OBJZ =  zip$(OBJ) zipfile$(OBJ) zipup$(OBJ) fileio$(OBJ) util$(OBJ) \
  412.         $(CRC32)$(OBJ) crctab$(OBJ) globals$(OBJ) \
  413.     deflate$(OBJ) trees$(OBJ) bits$(OBJ) crypt$(OBJ) ttyio$(OBJ)
  414. OBJ2 =    os2zip$(OBJ) os2$(OBJ) os2acl$(OBJ)
  415.  
  416. OBJU =  zipfile_$(OBJ) fileio_$(OBJ) util_$(OBJ) globals$(OBJ)
  417. OBJU2 = os2zip_$(OBJ)
  418.  
  419. OBJN =  zipnote$(OBJ) $(OBJU) $(OBJU2)
  420. OBJS =  zipsplit$(OBJ) $(OBJU) $(OBJU2)
  421. OBJC =  zipcloak$(OBJ) crctab$(OBJ) crypt_$(OBJ) ttyio$(OBJ) $(OBJU) $(OBJU2)
  422.  
  423. ZIP_H = zip.h ziperr.h tailor.h $(OSDEP_H)
  424.  
  425. # rules
  426.  
  427. .SUFFIXES: .c $(OBJ)
  428.  
  429. .c$(OBJ):
  430.     $(CC) -c -I. $(CCFLAGS) $<
  431.  
  432. .asm$(OBJ):
  433.     $(AS) $(ASFLAGS) $< $(ASEOL)
  434.  
  435. # targets
  436.  
  437. zips:    zip.exe zipnote.exe zipsplit.exe zipcloak.exe
  438.  
  439. zip$(OBJ):    zip.c $(ZIP_H) revision.h crypt.h ttyio.h
  440. zipfile$(OBJ):    zipfile.c $(ZIP_H)
  441. zipup$(OBJ):    zipup.c $(ZIP_H) revision.h crypt.h $(ZIPUP_H)
  442. fileio$(OBJ):    fileio.c $(ZIP_H)
  443. util$(OBJ):    util.c $(ZIP_H)
  444. globals$(OBJ):    globals.c $(ZIP_H)
  445. deflate$(OBJ):    deflate.c $(ZIP_H)
  446. trees$(OBJ):    trees.c $(ZIP_H)
  447. bits$(OBJ):    bits.c $(ZIP_H) crypt.h
  448. crc32$(OBJ):    crc32.c $(ZIP_H)
  449. crctab$(OBJ):    crctab.c $(ZIP_H)
  450. crypt$(OBJ):    crypt.c $(ZIP_H) crypt.h ttyio.h
  451. ttyio$(OBJ):    ttyio.c $(ZIP_H) crypt.h ttyio.h
  452.  
  453. os2zip$(OBJ):    os2/os2zip.c $(ZIP_H) os2/os2zip.h os2/os2acl.h
  454.     $(CC) -c -I. $(CCFLAGS) os2$(DIRSEP)os2zip.c
  455.  
  456. os2$(OBJ):    os2/os2.c $(ZIP_H) os2/os2zip.h
  457.     $(CC) -c -I. $(CCFLAGS) os2$(DIRSEP)os2.c
  458.  
  459. os2acl$(OBJ):    os2/os2acl.c os2/os2acl.h
  460.     $(CC) -c -I. $(CCFLAGS) os2$(DIRSEP)os2acl.c
  461.  
  462. msdos$(OBJ):    msdos/msdos.c $(ZIP_H)
  463.     $(CC) -c -I. $(CCFLAGS) msdos$(DIRSEP)msdos.c
  464.  
  465. win32zip$(OBJ):    win32/win32zip.c $(ZIP_H) win32/win32zip.h win32/nt.h
  466.     $(CC) -c -I. $(CCFLAGS) win32$(DIRSEP)win32zip.c
  467.  
  468. win32$(OBJ):    win32/win32.c $(ZIP_H) win32/win32zip.h
  469.     $(CC) -c -I. $(CCFLAGS) win32$(DIRSEP)win32.c
  470.  
  471. nt$(OBJ):    win32/nt.c win32/nt.h
  472.     $(CC) -c -I. $(CCFLAGS) win32$(DIRSEP)nt.c
  473.  
  474. crc_i86$(OBJ):    msdos/crc_i86.asm                # 16bit only
  475.     $(AS) $(ASFLAGS) msdos$(AS_DIRSEP)crc_i86.asm $(ASEOL)
  476.  
  477. crc_i386$(OBJ):    win32/crc_i386.asm                # 32bit, MASM
  478.     $(AS) $(ASFLAGS) win32$(AS_DIRSEP)crc_i386.asm $(ASEOL)
  479.  
  480. crc_gcc$(OBJ):    crc_i386.S                    # 32bit, GNU AS
  481.     $(AS) $(ASFLAGS) -x assembler-with-cpp -c -o $@ crc_i386.S
  482.  
  483. match$(OBJ):    msdos/match.asm
  484.     $(AS) $(ASFLAGS) msdos$(AS_DIRSEP)match.asm $(ASEOL)
  485.  
  486. match32$(OBJ):    win32/match32.asm
  487.     $(AS) $(ASFLAGS) win32$(AS_DIRSEP)match32.asm
  488.  
  489. matchgcc$(OBJ):    match.S
  490.     $(AS) $(ASFLAGS) -x assembler-with-cpp -c -o $@ match.S
  491.  
  492. zipcloak$(OBJ):    zipcloak.c $(ZIP_H) revision.h crypt.h ttyio.h
  493. zipnote$(OBJ):    zipnote.c $(ZIP_H) revision.h
  494. zipsplit$(OBJ): zipsplit.c $(ZIP_H) revision.h
  495.  
  496. zipfile_$(OBJ):    zipfile.c $(ZIP_H)
  497.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ zipfile.c
  498.  
  499. fileio_$(OBJ):    fileio.c $(ZIP_H)
  500.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ fileio.c
  501.  
  502. util_$(OBJ):    util.c $(ZIP_H) os2/os2zip.h
  503.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ util.c
  504.  
  505. crypt_$(OBJ):    crypt.c $(ZIP_H) crypt.h ttyio.h
  506.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ crypt.c
  507.  
  508. os2zip_$(OBJ):    os2/os2zip.c $(ZIP_H) os2/os2zip.h
  509.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ os2$(DIRSEP)os2zip.c
  510.  
  511. msdos_$(OBJ):    msdos/msdos.c $(ZIP_H)
  512.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ msdos$(DIRSEP)msdos.c
  513.  
  514. win32_$(OBJ):    win32/win32.c $(ZIP_H) win32/win32zip.h
  515.     $(CC) -c -I. $(CCFLAGS) -DUTIL $(OUT)$@ win32$(DIRSEP)win32.c
  516.  
  517. zip.exe: $(OBJZ) $(OBJ2) $(OBJA)
  518.     $(CC) $(LDFLAGS)$@ $(DEF) $(OBJZ) $(OBJ2) $(OBJA) $(LDFLAGS2)
  519.  
  520. zipcloak.exe: $(OBJC)
  521.     $(CC) $(LDFLAGS)$@ $(DEF) $(OBJC) $(LDFLAGS2)
  522.  
  523. zipnote.exe: $(OBJN)
  524.     $(CC) $(LDFLAGS)$@ $(DEF) $(OBJN) $(LDFLAGS2)
  525.  
  526. zipsplit.exe: $(OBJS)
  527.     $(CC) $(LDFLAGS)$@ $(DEF) $(OBJS) $(LDFLAGS2)
  528.