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