summaryrefslogtreecommitdiff
path: root/human68k/Makefile.gcc
blob: edf298932316452e67300414701003f1836475dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Makefile for Zip, ZipCloak, ZipNote and ZipSplit for human68k
# Written by NIIMI Satoshi <a01309@cfi.waseda.ac.jp>

VPATH = human68k

CC = gcc
AS = as

# if you are using mc68030 (or higher) based X68000,
# uncomment following defines
#CC = gcc -DUNALIGNED_OK
#AS = as -s UNALIGNED_OK

CFLAGS = -Wall -O -fomit-frame-pointer -fstrength-reduce -DASMV
LDFLAGS = -s
LIBS = -lsignal -lmb -ldos

# object file lists
OBJZ = zip.o zipfile.o zipup.o fileio.o util.o crc32.o globals.o \
	crypt.o ttyio.o

OBJI = deflate.o trees.o
OBJA = match.o human68k.o
OBJU = zipfile_.o fileio_.o util_.o globals.o human68_.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 human68k/osdep.h

all: zips

.SUFFIXES: _.o .o .c
.c_.o:
	$(CC) $(CFLAGS) -DUTIL -c $< -o $@
.c.o:
	$(CC) $(CFLAGS) -c $< -o $@

ZIPS = zip.x zipnote.x zipsplit.x zipcloak.x

zips: $(ZIPS)

zip.x: $(OBJZ) $(OBJI) $(OBJA)
	$(CC) -o zip.x $(LDFLAGS) $(OBJZ) $(OBJI) $(OBJA) $(LIBS)
zipnote.x: $(OBJN)
	$(CC) -o zipnote.x $(LDFLAGS) $(OBJN) $(LIBS)
zipcloak.x: $(OBJC)
	$(CC) -o zipcloak.x $(LDFLAGS) $(OBJC) $(LIBS)
zipsplit.x: $(OBJS)
	$(CC) -o zipsplit.x $(LDFLAGS) $(OBJS) $(LIBS)

match.o: human68k/match.s
	$(AS) -o $@ $<

human68_.o: human68k/human68k.c
	$(CC) $(CFLAGS) -DUTIL -c -o $@ $<

clean:
	rm -f *.o $(ZIPS)

zip.bfd: $(ZIPS)
	rm -f $@
	for file in $(ZIPS); do \
		bdif -A -R uploaded/$$file $$file $@; \
	done

# rules for zip, zipnote, zipcloak, 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
zipup.o: human68k/zipup.h