home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 2: PC / frozenfish_august_1995.bin / bbs / amigalib.mk next >
Makefile  |  1995-07-09  |  3KB  |  101 lines

  1. # Amiga Library Services - CD Administration Makefile
  2.  
  3. CONTENTSFMT =    "==========\n\n%N    %V    %S\n\n%d\n\nAuthor: %a\nArchive: %P\n\n"
  4. QUICKREFFMT =    "%-12.12B %8.8V %9s  %-S\n"
  5. TBBSFMT = "%-12.12B %9s %8.8T %-12.12B '' %-S\r\n"
  6.  
  7. # The order of these is significant.
  8. BUILT_FILES =    CONTENTS.PI CONTENTS.TXT QUICKREF.TXT CONTENTS.LHA FILES.BBS TBBS.DIR
  9.  
  10. # The default thing to make.
  11.  
  12. all:
  13.  
  14. # This target will rebuild all the machine generated files, after you
  15. # have done a "make clobber".
  16.  
  17. rebuild:
  18.     @for i in *; \
  19.     do \
  20.         if test -d $$i; then \
  21.             echo "Building $(BUILT_FILES) in $$i"; \
  22.             (cd $$i; $(MAKE) -f ../AMIGALIB.MK $(BUILT_FILES)); \
  23.         fi; \
  24.     done
  25.  
  26. # Build a default FILES.BBS file.  Note that the -D flag turns on
  27. # specific MS-DOS options, such as using MS-DOS BBS compatible format
  28. # for the FILES.BBS file, and naming it all uppercase.  First we
  29. # delete any existing FILES.BBS file, since the default is to append
  30. # to the file.  Note we have to sort the file after creating it.
  31. # The dependency on CONTENTS.PI is just to ensure that one always
  32. # exists before building FILES.BBS.
  33.  
  34. FILES.BBS:    CONTENTS.PI
  35.     rm -f $@
  36.     find . -name '*.PI' -print | pitool -b -D -
  37.     sort -f <$@ >/tmp/$@
  38.     cp /tmp/$@ $@
  39.  
  40. # Build a default TBBS.DIR file.  Note that the -D flag turns on
  41. # specific MS-DOS options.  First we delete any existing TBBS.DIR file,
  42. # since the default is to append to the file.  Note we have to sort the
  43. # file after creating it.  The dependency on CONTENTS.PI is just to
  44. # ensure that one always exists before building TBBS.DIR.
  45.  
  46. TBBS.DIR:    CONTENTS.PI
  47.     rm -f $@
  48.     find . -name '*.PI' -print | pitool -f TBBS.DIR -b -D -F $(TBBSFMT) -
  49.     sort -f <$@ >/tmp/$@
  50.     cp /tmp/$@ $@
  51.  
  52. # Generate a summary file called "CONTENTS.TXT".
  53.  
  54. CONTENTS.TXT:    CONTENTS.PI
  55.     echo "This file is generated automatically from the product info files" >$@
  56.     echo "included in this directory." >>$@
  57.     echo "" >>$@
  58.     find . -name '*.PI' -print \
  59.       | sort -f \
  60.       | sed "s:^./::" \
  61.       | sed "/D[0-9]*XX/d" \
  62.       | pitool -b -D -f - -F $(CONTENTSFMT) - >>$@
  63.  
  64. # Generate a quick reference file, which contains the name of the product,
  65. # the version number, and the short description; one product per line.
  66.  
  67. QUICKREF.TXT:    CONTENTS.PI
  68.     echo "This file is generated automatically from the product info files" >$@
  69.     echo "included in this directory.  See the 'CONTENTS.TXT' file for" >>$@
  70.     echo "additional information about each item." >>$@
  71.     echo "" >>$@
  72.     pitool -b -D -F $(QUICKREFFMT) -f - . \
  73.       | sort -f \
  74.       | uniq >>$@
  75.  
  76. # The dependency on CONTENTS.PI is just to ensure that there is always a
  77. # CONTENTS.PI for each CONTENTS.LHA file that is built.
  78.  
  79. CONTENTS.LHA:    CONTENTS.PI CONTENTS.TXT QUICKREF.TXT
  80.     lha -mraxeq a $@ CONTENTS.TXT QUICKREF.TXT
  81.  
  82. CONTENTS.PI:    ../CONTENTS.PIT
  83.     cp $? $@
  84.  
  85. # Clean out all the machine generated files in preparation for rebuilding them
  86. # all.
  87.  
  88. clobber:
  89.     @for i in *; \
  90.     do \
  91.         if test -d $$i; then \
  92.             echo "Making 'clobber' in $$i"; \
  93.             (cd $$i; $(MAKE) -f ../AMIGALIB.MK clobber-local);\
  94.         fi; \
  95.     done
  96.  
  97. clobber-local:
  98.     rm -f $(BUILT_FILES)
  99.  
  100.  
  101.