home *** CD-ROM | disk | FTP | other *** search
Makefile | 1993-06-16 | 3.9 KB | 149 lines |
- ## $Source: WB_2.1:homes/rkr/prog/sercli/src/RCS/dmakefile,v $
- ## $Author: rkr $
- ## $Revision: 1.13 $
- ## $Locker: rkr $
- ## $State: Exp $
- ## $Date: 1993/06/16 23:34:36 $
- ##
- ## sercli (an Amiga .device <-> FIFO interface tool)
- ## Copyright (C) 1993 Richard Rauch
- ##
- ## See /doc/sercli.doc and /COPYING for use and distribution license.
- ##
-
- ## Can't easily make it all -mRR, right now, since there is no @BeginIO()
- ## for register arg entry (also fifo stuff doesn't look like it will
- ## support it).
- ##
-
-
- ## $(name) is relatively constant
- ## $(version) we _could_ export to another file, but
- ## $(symbol) is closely tied to $(version), and _has_ to be available here.
- ## (I suppose we might get away with using an ENV/shell var...)
- ##
- name = sercli
- version = v1.10
- symbol = sercli_v1_10
-
-
- ## od == temp place to put objects during compilation
- ## exe == The primary target of all of this
- ## srcs == Compilables (given to the C compiler)
- ## objs == Intended output of the C compiler
- ## hdrs == list of all header files (#?.h) that $(srcs) need
- ##
- od = dtmp:sercli/
- exe = /bin/sercli
- srcs = serial.c sercli.c misc.c config.c sercli-config.c rexx.c keywords.c errors.c
- objs = $(srcs:"*.c":"$(od)%1.o")
- hdrs = config.h keywords.h sercli-config.h ser_supp.h misc.h rexx.h defs.h errors.h fifo_pragmas.h fifo.h
-
-
- ## allfiles == every non-changes file that is manually written in this dir
- ## rcsfiles == set of RCS files for $(allfiles)
- ##
- allfiles= $(srcs) $(hdrs) dmakefile
- rcsfiles= $(allfiles:"*":"rcs/%1,v")
-
-
- ## chgs == the changes list (in changes/ relative to this dir)
- ## ch_dummy == non-existant files; $(chgs) are all always out of date
- ## ch_text == end-user changes doc (needs trimming)
- ##
- chgs = $(allfiles:"*":"changes/%1")
- ch_dummy= $(chgs:"*":"no-such-file-%1")
- ch_text = /doc/changes.text
-
-
- cflags = -no-env -r -2.0 -// -c -proto
- lflags = -no-env -r -2.0
- comp = dcc $(cflags)
- link = dcc $(lflags)
-
-
- ## Make everything
- ##
- all : version.h $(exe) tags
-
-
- ## Clear out object code...(and executable?)
- ##
- clean :
- delete $(od)#?
-
-
- ## To make a release, we pro'ly want to update the changes text and do a
- ## full RCS checkin/symbolic bind. The order is important since the RCS
- ## target can find straglers that haven't been checked in, so it Types the
- ## appropriate changes file before doing the ci.
- ##
- release : changes rcs
-
-
- ## Optional; update this when making a release.
- ##
- changes : $(ch_dummy) $(ch_text)
- echo "*n-- Finished updating $(ch_text).*N You may wish to prune it manually."
-
-
- ## rx addlog t:version_changes
- ##
- $(ch_text) :
- echo > t:version $(name) $(version) ($(symbol))
- echo >> t:version ""
- join t:version t:changes /doc/changes.text as t:u2
- copy t:u2 /doc/changes.text
- join t:version t:changes as t:version_changes
- delete t:version t:changes t:u2 t:version_changes
-
-
- ## Update $(ch_text) (log of changes)
- ##
- $(ch_dummy) : $(chgs)
- type >> t:changes %(right)
- echo >> t:changes ""
- echo > %(right) noline
-
-
- ## Create version.h file...
- ##
- version.h :
- echo > version.h "#define NAME *"$(name)*""
- echo >> version.h "#define VERSION *"$(version)*""
-
-
- ## make sure all are checked in, then set the RCS symbolic name
- ##
- rcs : $(rcsfiles)
- rcs -N$(symbol): rcs/#?,v
-
-
- ## For each file in $(allfiles), make sure it's checked in. changes/#?
- ## files FORMERLY were used to to fetch a list of changed info. Now that
- ## checkins are done independant of this makefile, the work is to simply
- ## make sure the latest version of each file is checked in.
- ##
- $(rcsfiles) : $(allfiles)
- echo %(right) appears newer than its RCS file.
- rlog -r %(right)
- type changes/%(right)
- rcsdiff %(right) %(left)
- ci -l %(right)
-
-
- ## Can't do this w/o ctags
- ## delete tags
- ##
- tags : $(srcs)
- echo "No tags to do this: ctags $(srcs)"
-
-
- ## $(link) -o $(exe) $(objs) -l fifos -l rexxglue.o
- $(exe) : $(objs)
- $(link) -o $(exe) $(objs) -l fifos
-
-
- $(objs) : $(srcs)
- $(comp) -o %(left) %(right)
-