home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 8
/
FreshFishVol8-CD2.bin
/
bbs
/
gnu
/
gnu-misc-src.lha
/
GNU
/
AmigaLib.mk
next >
Wrap
Makefile
|
1995-01-29
|
4KB
|
101 lines
# Amiga Library Services - CD Administration Makefile
#
# This Makefile goes in the root directory of the GNU tree.
CONTENTS_FORMAT = "==========\n\n%N %V %S\n\n%d\n\nAuthor: %a\nPath: %P\n\n"
INDEX_FORMAT = "%-16.16N %8.8V %-S\n"
LOCATE_FORMAT = "%-16.16N %8.8V %P\n"
SHELL = /bin/sh
MAKE = make
MAKEFILE = AmigaLib.mk
# The "base name" of this CD set. Supply a default value here that is
# typically overridden by an upper level make, or else passed as a command
# line arg.
CDNAME = FreshFish-Vol8
# This is the root directory for the BBS tree. Typically it is assigned
# a value like "FreshFish-Vol8-2:BBS" via a command line arg to Make, or
# else is passed in by an upper level make.
BBSROOT = $(CDNAME)-2:BBS
SCRATCHDIR = /tmp
FLAGS_TO_PASS = \
"MAKE=$(MAKE)" \
"MAKEFILE=$(MAKEFILE)" \
"CDNAME=$(CDNAME)" \
"BBSROOT=$(BBSROOT)" \
"SCRATCHDIR=$(SCRATCHDIR)"
all: CONTENTS INDEX LOCATE AllList
release:
# Generate a summary file called "CONTENTS". Note that the entries in the
# contents are generated in pathname sorted, case independent, order.
CONTENTS: AllList
@echo >$@ "This file is generated automatically from the product info files"
@echo >>$@ "included in this tree."
@echo >>$@ ""
egrep "/Product-Info$$|\.pi$$" <AllList | \
pitool -f - -b -F $(CONTENTS_FORMAT) - >>$@
@if test -f $@.info; then true; else echo "WARNING - missing $@.info"; fi
# Generate a quick reference file, which contains the name of the product,
# the version number, and the short description; one product per line.
INDEX: AllList
@echo >$@ "This file is generated automatically from the product info files"
@echo >>$@ "included in this tree. See the 'CONTENTS' file for additional"
@echo >>$@ "information about each item."
@echo >>$@ ""
egrep "/Product-Info$$|\.pi$$" <AllList | \
pitool -b -F $(INDEX_FORMAT) -f - - | sort -f | uniq >>$@
@if test -f $@.info; then true; else echo "WARNING - missing $@.info"; fi
# Generate a quick reference file, which contains the name of the product,
# the version number, and the short description; one product per line.
LOCATE: AllList
# @echo >$@ "This file is generated automatically from the product info files"
# @echo >>$@ "included in this tree. See the 'CONTENTS' file for additional"
# @echo >>$@ "information about each item."
# @echo >>$@ ""
# egrep "/Product-Info$$|\.pi$$" <AllList | \
# pitool -b -F $(LOCATE_FORMAT) -f - - | sort -f | uniq >>$@
# @if test -f $@.info; then true; else echo "WARNING - missing $@.info"; fi
# Generate a list of all files and directories rooted at this point in the
# file tree. This target is only rebuilt when it does not exist, so the only
# way to get rid of it is to either make "clobber" or manually delete it.
AllList:
find . -print | sort -f | sed "s:^./::" >/tmp/all.tmp
cp /tmp/all.tmp $@
# Build archives in the BBS section of the CD using various parts of the GNU tree.
# In general, there are three archives per program, one for the source, one for
# the binaries, and one for the diffs of the amiga source against the baseline
# source. The packing script requires the name of the BBS directory as a command
# line argument. A default value is provided in BBSROOT, but this can be (and
# normally is) overridden by the upper level makefile that calls this one.
BBS:
(cd src/amiga && $(MAKE) -f $(MAKEFILE) $(FLAGS_TO_PASS) $@)
(cd src/baseline && $(MAKE) -f $(MAKEFILE) $(FLAGS_TO_PASS) $@)
$(SHELL) PackGNU.sh $(BBSROOT) $(SCRATCHDIR)
# Clean up this directory.
clean:
rm -f *!
clobber: clean
rm -f CONTENTS INDEX