1# Makefile for UnZip 5.53+ using QDOS/xtc68 and GNU make 2# 3# This makefile is a makefile for the xtc68 cross-compiler on Linux; 4# conversion to a native c68 makefile should be trivial. This builds 5# native QDOS binaries. 6# 7# Last modified: 25 Dec 06 8 9include /etc/ql.mak 10CFLAGS = -O -I. -I./qdos/ 11 12OBJS = unzip.o process.o crypt.o envargs.o explode.o \ 13 unshrink.o extract.o zipinfo.o inflate.o match.o unreduce.o \ 14 ubz2err.o ttyio.o fileio.o list.o globals.o qdos.o config.o crc32.o 15 16FOBJS = funzip.o ttyio.o crypt.fo inflate.fo globals.fo config.o crc32.fo qdos.fo 17 18XOBJS = unzip.xo process.xo crypt.xo extract.xo fileio.xo \ 19 ttyio.xo inflate.xo match.xo globals.xo ubz2err.xo \ 20 qdos.xo config.o crc32.xo 21 22all : unzip unzipsfx funzip makesfx callstub 23 24# xtc68/cc is brain dead !! 25 26%.xo : %.c 27 qcpp -DSFX -DSFX_EXDIR -I. -I./qdos/ $*.c $*.i 28 c68 -O $*.i $*.s 29 as68 $*.s $*.xo 30 rm -f $*.s $*.i 31 32%.fo : %.c 33 qcpp -DFUNZIP -I. -I./qdos/ $*.c $*.i 34 c68 -O $*.i $*.s 35 as68 $*.s $*.fo 36 rm -f $*.s $*.i 37 38u : unzip 39 40f : funzip 41 42x : unzipsfx 43 44m : makesfx 45 46unzip : $(OBJS) 47 $(LD) $(LDFLAGS) -o$@ $(OBJS) $(LDLIBS) 48 49unzipsfx : $(XOBJS) 50 $(LD) $(LDFLAGS) -o$@ $(XOBJS) $(LDLIBS) 51 52funzip : $(FOBJS) 53 $(LD) $(LDFLAGS) -o$@ $(FOBJS) $(LDLIBS) 54 55makesfx : qdos/makesfx.c 56 cp qdos/makesfx.c . 57 $(CC) $(CFLAGS) -o makesfx makesfx.c 58 rm -f makesfx.c 59 60callstub : qdos/callstub.c 61 cp qdos/callstub.c . 62 $(CC) -screspr.o $(CFLAGS) -o callstub callstub.c 63 rm -f callstub.c 64 65clean : 66 rm *.o *.xo *.fo 67 68cleaner : clean 69 rm unzip funzip unzipsfx makesfx 70 71 72$(OBJS) $(XOBJS) $(FOBJS) : unzip.h unzpriv.h globals.h \ 73 qdos/izqdos.h 74 75crc32.o crc32.fo crc32.xo : zip.h 76crypt.o crypt.fo crypt.xo ttyio.o ttyio.fo ttyio.xo : zip.h 77 78inflate.o inflate.fo inflate.xo : inflate.h 79 80fileio.o fileio.xo : ebcdic.h 81 82funzip.o : crc32.h 83crc32.o crc32.fo crc32.xo crypt.o crypt.fo crypt.xo : crc32.h 84fileio.o fileio.xo extract.o extract.xo process.o process.xo : crc32.h 85 86 87crypt.o crypt.fo crypt.xo ttyio.o ttyio.fo ttyio.xo : crypt.h 88unzip.o unzip.xo funzip.o : crypt.h 89fileio.o fileio.xo extract.o extract.xo : crypt.h 90inflate.o inflate.fo inflate.xo : crypt.h 91 92crypt.o crypt.fo crypt.xo ttyio.o ttyio.fo ttyio.xo : ttyio.h 93funzip.o fileio.o fileio.xo : ttyio.h 94 95unzip.o unzip.xo : unzvers.h consts.h 96 97 98# Special case object files: 99 100qdos.o: qdos/qdos.c 101 cp qdos/qdos.c . 102 $(CC) -c -oqdos.o $(CFLAGS) $*.c 103 rm -f qdos.c 104 105config.o: qdos/config.S 106 cp qdos/config.S . 107 $(CC) -c $*.S 108 rm -f config.S 109 110qdos.xo: qdos/qdos.c 111 cp qdos/qdos.c . 112 qcpp -DSFX -DSFX_EXDIR -I. -I./qdos/ qdos.c qdos.i 113 c68 qdos.i qdos.s 114 as68 qdos.s qdos.xo 115 rm -f qdos.s qdos.i 116 rm -f qdos.c 117 118qdos.fo: qdos/qdos.c 119 cp qdos/qdos.c . 120 qcpp -DFUNZIP -I. -I./qdos/ qdos.c qdos.i 121 c68 qdos.i qdos.s 122 as68 qdos.s qdos.fo 123 rm -f qdos.s qdos.i 124 rm -f qdos.c 125 126install: unzip unzipsfx funzip makesfx callstub 127 qcp unzip /ql/exe/ 128 qcp unzipsfx /ql/exe/ 129 qcp funzip /ql/exe/ 130 qcp makesfx /ql/exe/ 131 cp callstub /ql/exe/ 132