Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  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.  
  9. include /etc/ql.mak
  10. CFLAGS = -O -I. -I./qdos/
  11.  
  12. OBJS = 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.  
  16. FOBJS = funzip.o ttyio.o crypt.fo inflate.fo globals.fo config.o crc32.fo qdos.fo
  17.  
  18. XOBJS = 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.  
  22. all : 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.  
  38. u : unzip
  39.  
  40. f : funzip
  41.  
  42. x : unzipsfx
  43.  
  44. m : makesfx
  45.  
  46. unzip :     $(OBJS)
  47.         $(LD) $(LDFLAGS) -o$@ $(OBJS) $(LDLIBS)
  48.  
  49. unzipsfx :  $(XOBJS)
  50.         $(LD) $(LDFLAGS) -o$@ $(XOBJS) $(LDLIBS)
  51.  
  52. funzip :    $(FOBJS)
  53.         $(LD) $(LDFLAGS) -o$@ $(FOBJS) $(LDLIBS)
  54.  
  55. makesfx : qdos/makesfx.c
  56.         cp qdos/makesfx.c .
  57.         $(CC) $(CFLAGS) -o makesfx makesfx.c
  58.         rm -f makesfx.c
  59.  
  60. callstub : qdos/callstub.c
  61.         cp qdos/callstub.c .
  62.         $(CC) -screspr.o $(CFLAGS) -o callstub callstub.c
  63.         rm -f callstub.c
  64.  
  65. clean :
  66.         rm *.o *.xo *.fo
  67.  
  68. cleaner : clean
  69.         rm unzip funzip unzipsfx makesfx
  70.  
  71.  
  72. $(OBJS) $(XOBJS) $(FOBJS) : unzip.h unzpriv.h globals.h \
  73.                              qdos/izqdos.h
  74.  
  75. crc32.o crc32.fo crc32.xo : zip.h
  76. crypt.o crypt.fo crypt.xo ttyio.o ttyio.fo ttyio.xo : zip.h
  77.  
  78. inflate.o inflate.fo inflate.xo : inflate.h
  79.  
  80. fileio.o fileio.xo : ebcdic.h
  81.  
  82. funzip.o : crc32.h
  83. crc32.o crc32.fo crc32.xo crypt.o crypt.fo crypt.xo : crc32.h
  84. fileio.o fileio.xo extract.o extract.xo process.o process.xo : crc32.h
  85.  
  86.  
  87. crypt.o crypt.fo crypt.xo ttyio.o ttyio.fo ttyio.xo : crypt.h
  88. unzip.o unzip.xo funzip.o : crypt.h
  89. fileio.o fileio.xo extract.o extract.xo : crypt.h
  90. inflate.o inflate.fo inflate.xo : crypt.h
  91.  
  92. crypt.o crypt.fo crypt.xo ttyio.o ttyio.fo ttyio.xo : ttyio.h
  93. funzip.o fileio.o fileio.xo : ttyio.h
  94.  
  95. unzip.o unzip.xo : unzvers.h consts.h
  96.  
  97.  
  98. # Special case object files:
  99.  
  100. qdos.o: qdos/qdos.c
  101.         cp qdos/qdos.c .
  102.         $(CC) -c -oqdos.o $(CFLAGS) $*.c
  103.         rm -f qdos.c
  104.  
  105. config.o: qdos/config.S
  106.         cp qdos/config.S .
  107.         $(CC) -c $*.S
  108.         rm -f config.S
  109.  
  110. qdos.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.  
  118. qdos.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.  
  126. install:  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.