summaryrefslogtreecommitdiff
path: root/acorn/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'acorn/makefile')
-rw-r--r--acorn/makefile115
1 files changed, 115 insertions, 0 deletions
diff --git a/acorn/makefile b/acorn/makefile
new file mode 100644
index 0000000..323ffca
--- /dev/null
+++ b/acorn/makefile
@@ -0,0 +1,115 @@
+# Makefile for Zip, ZipNote, ZipCloak and ZipSplit
+
+# add -g to CC to debug
+# add -d to BIND to debug
+CC = cc
+BIND = link
+AS = $(CC) -c
+ASM = objasm
+SQUEEZE = squeeze -v
+E =
+
+# flags
+# CFLAGS flags for C compile
+# LFLAGS1 flags after output file spec, before obj file list
+# LFLAGS2 flags after obj file list (libraries, etc)
+#
+LIB =
+CBASE = -throwback -wn -DASMV -apcs 3/26
+CFLAGS = $(CBASE) -IC:,@.
+ASMFLAGS = -Throwback -Stamp -NoCache -CloseExec -quit -apcs 3/26
+LFLAGS1 =
+LFLAGS2 = $(LIB) C:o.Stubs
+
+# Uncomment the following line to enable support for Unix
+# Extra Field (Timezone)
+#CFLAGS = $(CFLAGS) -DUSE_EF_UT_TIME
+
+# object file lists
+OBJZ = zip.o zipfile.o zipup.o fileio.o util.o globals.o crc32.o \
+ crypt.o ttyio.o riscos.o acornzip.o swiven.o
+
+OBJI = deflate.o trees.o
+OBJA = match.o sendbits.o
+OBJU = zipfile_.o fileio_.o util_.o globals.o riscos.o acornzip_.o swiven.o
+OBJN = zipnote.o $(OBJU)
+OBJC = zipcloak.o $(OBJU) crc32_.o crypt_.o ttyio.o
+OBJS = zipsplit.o $(OBJU)
+
+ZIP_H = zip.h ziperr.h tailor.h acorn/osdep.h acorn/riscos.h acorn/swiven.h
+
+all: zip zipnote zipsplit zipcloak
+
+
+install: %.zip %.zipnote %.zipsplit %.zipcloak %.zipsfx \
+ zip zipnote zipsplit zipcloak zipsfx
+ $(SQUEEZE) zip %.zip
+ $(SQUEEZE) zipnote %.zipnote
+ $(SQUEEZE) zipsplit %.zipsplit
+ $(SQUEEZE) zipcloak %.zipcloak
+ copy acorn.zipsfx %.zipsfx ~CVF
+
+# suffix rules
+.SUFFIXES: _.o .o .c
+.c_.o:
+ $(CC) $(CFLAGS) -DUTIL -c $*.c -o $*_.o
+.c.o:
+ $(CC) $(CFLAGS) -c $<
+.s.o:
+ $(ASM) $(ASMFLAGS) -from @*.s -to @*.o
+
+# rules for zip, zipnote, zipcloak and zipsplit
+$(OBJZ): $(ZIP_H)
+$(OBJI): $(ZIP_H)
+$(OBJN): $(ZIP_H)
+$(OBJS): $(ZIP_H)
+$(OBJC): $(ZIP_H)
+zip.o crc32.o crypt.o fileio.o zipfile.o zipup.o: crc32.h
+zipcloak.o crc32_.o crypt_.o fileio_.o zipfile_.o: crc32.h
+zip.o zipup.o crypt.o ttyio.o zipcloak.o crypt_.o: crypt.h
+zip.o zipup.o zipnote.o zipcloak.o zipsplit.o: revision.h
+zip.o crypt.o ttyio.o zipcloak.o crypt_.o: ttyio.h
+
+crc32_.o: crc32.c
+ $(CC) $(CFLAGS) -DUTIL -c c.crc32 -o o.crc32_
+crypt_.o: crypt.c
+ $(CC) $(CFLAGS) -DUTIL -c c.crypt -o o.crypt_
+util_.o: util.c
+ $(CC) $(CFLAGS) -DUTIL -c c.util -o o.util_
+fileio_.o: fileio.c
+ $(CC) $(CFLAGS) -DUTIL -c c.fileio -o o.fileio_
+zipfile_.o: zipfile.c
+ $(CC) $(CFLAGS) -DUTIL -c c.zipfile -o o.zipfile_
+acornzip_.o: acorn/acornzip.c $(ZIP_H)
+ $(CC) $(CFLAGS) -DUTIL -c acorn/acornzip.c -o o.acornzip_
+
+riscos.o: acorn/riscos.c acorn/riscos.h
+ $(CC) $(CFLAGS) -c acorn/riscos.c
+
+acornzip.o: acorn/acornzip.c $(ZIP_H)
+ $(CC) $(CFLAGS) -c acorn/acornzip.c
+
+match.o: acorn/match.s
+ $(ASM) $(ASMFLAGS) -from acorn.s.match -to o.match
+
+sendbits.o: acorn/sendbits.s
+ $(ASM) $(ASMFLAGS) -from acorn.s.sendbits -to o.sendbits
+
+swiven.o: acorn/swiven.s
+ $(ASM) $(ASMFLAGS) -from acorn.s.swiven -to o.swiven
+
+zip: $(OBJZ) $(OBJI) $(OBJA)
+ $(BIND) -o zip$(E) $(LFLAGS1) $(OBJZ) $(OBJI) $(OBJA) $(LFLAGS2)
+zipnote: $(OBJN)
+ $(BIND) -o zipnote$(E) $(LFLAGS1) $(OBJN) $(LFLAGS2)
+zipcloak: $(OBJC)
+ $(BIND) -o zipcloak$(E) $(LFLAGS1) $(OBJC) $(LFLAGS2)
+zipsplit: $(OBJS)
+ $(BIND) -o zipsplit$(E) $(LFLAGS1) $(OBJS) $(LFLAGS2)
+
+clean: ;remove zip; remove zipcloak;
+ remove zipsplit; remove zipnote;
+ create o.!fake! 0
+ wipe o.* ~cf
+
+# end of Makefile