GMakefile 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. # Makefile for Zip, ZipNote, ZipCloak and ZipSplit
  2. # add -g to CC to debug
  3. # add -d to BIND to debug
  4. CC = gcc -mlibscl
  5. BIND = $(CC)
  6. AS = $(CC) -c
  7. ASM = AS
  8. SQUEEZE = squeeze -v
  9. E =
  10. # flags
  11. # CFLAGS flags for C compile
  12. # LFLAGS1 flags after output file spec, before obj file list
  13. # LFLAGS2 flags after obj file list (libraries, etc)
  14. #
  15. LIB =
  16. CFLAGS = -O2 -mthrowback -DASMV
  17. ASMFLAGS = -throwback -objasm -upper
  18. LFLAGS1 =
  19. LFLAGS2 = $(LIB)
  20. # Uncomment the following line to enable support for Unix
  21. # Extra Field (Timezone)
  22. #CFLAGS = $(CFLAGS) -DUSE_EF_UT_TIME
  23. # object file lists
  24. OBJZ = o.zip o.zipfile o.zipup o.fileio o.util o.globals o.crc32 \
  25. o.crypt o.ttyio o.riscos o.acornzip o.swiven
  26. OBJI = o.deflate o.trees
  27. OBJA = o.match o.sendbits
  28. OBJU = o.zipfile_ o.fileio_ o.util_ o.globals o.riscos o.acornzip_ o.swiven
  29. OBJN = o.zipnote $(OBJU)
  30. OBJC = o.zipcloak $(OBJU) o.crc32_ o.crypt_ o.ttyio
  31. OBJS = o.zipsplit $(OBJU)
  32. ZIP_H = h.zip h.ziperr h.tailor acorn.h.osdep acorn.h.riscos acorn.h.swiven
  33. all: zip zipnote zipsplit zipcloak
  34. install: %.zip %.zipnote %.zipsplit %.zipcloak %.acorn.zipsfx \
  35. zip zipnote zipsplit zipcloak acorn.zipsfx
  36. $(SQUEEZE) zip %.zip
  37. $(SQUEEZE) zipnote %.zipnote
  38. $(SQUEEZE) zipsplit %.zipsplit
  39. $(SQUEEZE) zipcloak %.zipcloak
  40. copy acorn.zipsfx %.zipsfx ~CVF
  41. # rules for zip, zipnote, zipcloak and zipsplit
  42. o.api: c.api
  43. $(CC) $(CFLAGS) -c c.api -o o.api
  44. o.crc32: c.crc32 $(ZIP_H) h.crc32
  45. $(CC) $(CFLAGS) -c c.crc32 -o o.crc32
  46. o.crypt: c.crypt $(ZIP_H) h.crypt h.crc32 h.ttyio
  47. $(CC) $(CFLAGS) -c c.crypt -o o.crypt
  48. o.deflate: c.deflate $(ZIP_H)
  49. $(CC) $(CFLAGS) -c c.deflate -o o.deflate
  50. o.fileio: c.fileio $(ZIP_H) h.crc32
  51. $(CC) $(CFLAGS) -c c.fileio -o o.fileio
  52. o.globals: c.globals $(ZIP_H)
  53. $(CC) $(CFLAGS) -c c.globals -o o.globals
  54. o.mktime: c.mktime
  55. $(CC) $(CFLAGS) -c c.mktime -o o.mktime
  56. o.trees: c.trees $(ZIP_H)
  57. $(CC) $(CFLAGS) -c c.trees -o o.trees
  58. o.ttyio: c.ttyio $(ZIP_H) h.crypt
  59. $(CC) $(CFLAGS) -c c.ttyio -o o.ttyio
  60. o.util: c.util $(ZIP_H)
  61. $(CC) $(CFLAGS) -c c.util -o o.util
  62. o.zip: c.zip $(ZIP_H) h.crc32 h.crypt h.revision h.ttyio
  63. $(CC) $(CFLAGS) -c c.zip -o o.zip
  64. o.zipcloak: c.zipcloak $(ZIP_H) h.crc32 h.crypt h.revision h.ttyio
  65. $(CC) $(CFLAGS) -c c.zipcloak -o o.zipcloak
  66. o.zipfile: c.zipfile $(ZIP_H) h.crc32
  67. $(CC) $(CFLAGS) -c c.zipfile -o o.zipfile
  68. o.zipnote: c.zipnote $(ZIP_H) h.revision
  69. $(CC) $(CFLAGS) -c c.zipnote -o o.zipnote
  70. o.zipsplit: c.zipsplit $(ZIP_H) h.revision
  71. $(CC) $(CFLAGS) -c c.zipsplit -o o.zipsplit
  72. o.zipup: c.zipup $(ZIP_H) h.crc32 h.crypt h.revision
  73. $(CC) $(CFLAGS) -c c.zipup -o o.zipup
  74. o.crc32_: c.crc32 $(ZIP_H) h.crc32
  75. $(CC) $(CFLAGS) -DUTIL -c c.crc32 -o o.crc32_
  76. o.crypt_: c.crypt $(ZIP_H) h.crypt h.crc32 h.ttyio
  77. $(CC) $(CFLAGS) -DUTIL -c c.crypt -o o.crypt_
  78. o.util_: c.util $(ZIP_H)
  79. $(CC) $(CFLAGS) -DUTIL -c c.util -o o.util_
  80. o.fileio_: c.fileio $(ZIP_H) h.crc32
  81. $(CC) $(CFLAGS) -DUTIL -c c.fileio -o o.fileio_
  82. o.zipfile_: c.zipfile $(ZIP_H) h.crc32
  83. $(CC) $(CFLAGS) -DUTIL -c c.zipfile -o o.zipfile_
  84. o.acornzip_: acorn.c.acornzip $(ZIP_H)
  85. $(CC) $(CFLAGS) -I@ -DUTIL -c acorn.c.acornzip -o o.acornzip_
  86. o.riscos: acorn.c.riscos acorn.h.riscos $(ZIP_H)
  87. $(CC) $(CFLAGS) -I@ -c acorn.c.riscos -o o.riscos
  88. o.acornzip: acorn.c.acornzip $(ZIP_H)
  89. $(CC) $(CFLAGS) -I@ -c acorn.c.acornzip -o o.acornzip
  90. o.match: acorn.s.match
  91. $(ASM) $(ASMFLAGS) -I@ acorn.s.match -o o.match
  92. o.sendbits: acorn.s.sendbits
  93. $(ASM) $(ASMFLAGS) -I@ acorn.s.sendbits -o o.sendbits
  94. o.swiven: acorn.s.swiven
  95. $(ASM) $(ASMFLAGS) -I@ acorn.s.swiven -o o.swiven
  96. zip: $(OBJZ) $(OBJI) $(OBJA)
  97. $(BIND) -o zip$(E) $(LFLAGS1) $(OBJZ) $(OBJI) $(OBJA) $(LFLAGS2)
  98. zipnote: $(OBJN)
  99. $(BIND) -o zipnote$(E) $(LFLAGS1) $(OBJN) $(LFLAGS2)
  100. zipcloak: $(OBJC)
  101. $(BIND) -o zipcloak$(E) $(LFLAGS1) $(OBJC) $(LFLAGS2)
  102. zipsplit: $(OBJS)
  103. $(BIND) -o zipsplit$(E) $(LFLAGS1) $(OBJS) $(LFLAGS2)
  104. clean:
  105. remove zip
  106. remove zipcloak
  107. remove zipsplit
  108. remove zipnote
  109. create o.!fake! 0
  110. wipe o.* ~cf
  111. # end of Makefile