Makefile Example

Following is a Makefile example used to compile the "/ralph/local/sources/transputer/control/source/nonlin3.c" control source file to produce the executable nonlin3.btl


 
SHELL   = /bin/sh
 
#compulsory 
HOSTLIBS        = startup.lnk
 
#used for from_adc.lku nonlin3.lku to_dac.lku 
REMOTELIBS      = controlr.lnk
 
 
#setup directory
 
ARCH=T805
#DEBUG=
 
ICFLAGS         = $(DEBUG) -$(ARCH)
ILDFLAGS        = -$(ARCH)
 
ICC             = icc
ILINK           = ilink
ICOLLECT        = icollect
ICONFIG         = icconf
IUSER           = user
 
 
ADCLIB = /ralph/local/ictools/libs/analogio.lib
 
all:    nonlin3.btl 
 
nonlin3.btl: nonlin3.cfb 
        $(ICOLLECT) nonlin3.cfb -o nonlin3.btl
 
nonlin3.cfb: nonlin3.cfs from_adc.lku to_dac.lku nonlin3.lku user.lku
        $(ICONFIG) -o nonlin3.cfb nonlin3.cfs
 
from_adc.lku: from_adc.tco from_adc.c
        $(ILINK) from_adc.tco $(ADCLIB) -f $(REMOTELIBS) -o $@ $(ILDFLAGS)
 
to_dac.lku: to_dac.tco
        $(ILINK) to_dac.tco $(ADCLIB) -f $(REMOTELIBS)  -o $@ $(ILDFLAGS)
 
nonlin3.lku: nonlin3.tco nonlin3.c
          $(ILINK) nonlin3.tco -f $(REMOTELIBS) -o $@ $(ILDFLAGS)
 
user.lku: user.tco user.c
          $(ILINK) user.tco -f $(HOSTLIBS) -o $@ $(ILDFLAGS)
 
########################
 
nonlin3.tco: nonlin3.c
        $(ICC) nonlin3.c -o $@ $(ICFLAGS)
 
user.tco: user.c
        $(ICC) user.c -o $@ $(ICFLAGS)
 
from_adc.tco: from_adc.c
        $(ICC) from_adc.c -o $@ $(ICFLAGS)
 
to_dac.tco: to_dac.c
        $(ICC) to_dac.c -o $@ $(ICFLAGS)