Makefile.dax File Reference

Sub-Makefile for all not Data Acquisition or Analysis Programs #. More...


Detailed Description

Sub-Makefile for all not Data Acquisition or Analysis Programs #.

# # # # Dependencies:
# application Makefile --> Makefile.dax --> Makefile.<application>
#
# Supported Host Platforms: Alpha/OSF1, I686/Linux, DS5000/Ultrix
# Supported Target Platforms: Alpha/OSF1, I686/Linux, DS5000/Ultrix, m68k/VxWorks #

Author:
Kurt Huber; Strahlenzentrum J.L.-Universitaet GIESSEN #
Date:
08.04.2004 #
Version:
15.08.2008 #
# modification history
# --------------------
# 15aug08 kHu	DOXYGEN comments added 
# 08apr04 kHu	new from Makefile.dan
# 
#
#

DATE = `date +%d%b%y`
DIR = `pwd`
HOSTNAME = `hostname`
PROGS = /usr/exp/ex_prog/

PARAM = PNAM=$(PNAM) \
	PLIB=$(PLIB) ALIB=$(ALIB) DLIB=$(DLIB) ELIB=$(ELIB)


# Alpha/OSF1 platform
CCxx   =  "c89 -c -msg_enable level3 \
		-DOSF1 -DMYNAME=$(PNAM) -DSIGNAT=$(SIGNAT) \
		-DCONFIG=\\\"$(PNAM).conf\\\" \
		-I./ -I$(ALIB) -I$(DLIB) -I$(ELIB)"
LDxx   =  "c89"
LFxx   =  "-lm"

# I686/Linux platform
CCll   =  "gcc -c -Wall \
		-DLINUX -DMYNAME=$(PNAM) -DSIGNAT=$(SIGNAT) \
		-DCONFIG=\\\"$(PNAM).conf\\\" \
		-I./ -I$(ALIB) -I$(DLIB) -I$(ELIB)"
LDll   =  "gcc"
LFll   =  "-lm"

# DS5000/Ultrix platform
CCuu   =  "c89 -c -msg_enable level3 \
		-DULTRIX -DMYNAME=$(PNAM) -DSIGNAT=$(SIGNAT) \
		-DCONFIG=\\\"$(PNAM).conf\\\" \
		-I./ -I$(ALIB) -I$(DLIB) -I$(ELIB)"
LDuu   =  "c89"
LFuu   =  "-lm"

# m68k/VxWorks platform cross compiled on DS5000/Ultrix
CCuv   =  "/usr/users/vxmaster/gnu/decmips.68k/bin/cc68k \
		-c -Wall \
		-DCPU=MC68040 -DVXWORKS -DSIGNAT=$(SIGNAT) \
		-DMYNAME=$(PNAM) -DCONFIG=\\\"$(PNAM).conf\\\" \
		-I./ -I$(ALIB) -I$(DLIB) -I$(ELIB) \
		-I/usr/users/vxmaster/vw/h"
LDuv   =  "/usr/users/vxmaster/gnu/decmips.68k/bin/ld68k"
LFuv   =  "-r"

# m68k/VxWorks platform cross compiled on I686/Linux
CClv   =  "/home/huber/Tornado/host/linux/bin/cc68k \
		-Wall \
		-c -fno-builtin -nostdinc \
		-DCPU=MC68040 -m68020-60 -DVXWORKS -DSIGNAT=$(SIGNAT) \
		-DMYNAME=$(PNAM) -DCONFIG=\\\"$(PNAM).conf\\\" \
		-I./ -I$(ALIB) -I$(DLIB) -I$(ELIB) \
		-I/home/huber/Tornado/target/h"
LDlv   =  "/home/huber/Tornado/host/linux/bin/cc68k"
LFlv   =  "-r"



help: gotoDEFAULT


build: bld$(h)$(t)

bld--: build--

bld-x: build-x

bld-l: build-l

bld-u: build-u

bld-v: build-v

bld-a: build-x build-l build-u build-v

bldx-: buildxx

bldxx: buildxx

bldl-: buildll

bldll: buildll

bldlv: buildlv

bldu-: builduu

blduu: builduu

blduv: builduv



build--: 
	@echo ""
	@if test `uname` = OSF1; then \
	    echo "*** Making program $(TNAM) ($(PNAM)osf) for Alpha OSF1 ***"; \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CCxx) LD=$(LDxx) LF=$(LFxx) OBJ=xx.o EXE=osf; \
	elif test `uname` = Linux; then \
	    echo "*** Making program $(TNAM) ($(PNAM)lnx) for i686 Linux ***"; \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CClv) LD=$(LDlv) LF=$(LFlv) OBJ=lv.o EXE=v.o; \
	elif test `uname` = ULTRIX; then \
	    echo "*** Making program $(TNAM) ($(PNAM)ult) for DS5000 Ultrix ***"; \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CCuv) LD=$(LDuv) LF=$(LFuv) OBJ=uv.o EXE=v.o; \
	else \
	    echo "*** Making program $(TNAM) on host $(HOSTNAME) not supported ***"; \
	fi

build-x buildxx: 
	@echo ""
	@echo "*** Making program $(TNAM) ($(PNAM)osf) for Alpha OSF1 ***"
	@if test `uname` = OSF1; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CCxx) LD=$(LDxx) LF=$(LFxx) OBJ=xx.o EXE=osf; \
	else \
	    echo "*** on host Servix via RSH ***"; \
	    rsh servix "cd $(DIR); \
		make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC='$(CCxx)' LD='$(LDxx)' LF='$(LFxx)' OBJ=xx.o EXE=osf"; \
	fi

build-l buildll: 
	@echo ""
	@echo "*** Making program $(TNAM) ($(PNAM)lnx) for i686 Linux ***"
	@if test `uname` = Linux; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		 CC=$(CCll) LD=$(LDll) LF=$(LFll) OBJ=ll.o EXE=lnx; \
	else \
	    echo "*** on host Atomix via RSH ***"; \
	    rsh atomix "cd $(DIR); \
		make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC='$(CCll)' LD='$(LDll)' LF='$(LFll)' OBJ=ll.o EXE=lnx"; \
	fi

build-u builduu: 
	@echo ""
	@echo "*** Making program $(TNAM) ($(PNAM)ult) for DS5000 Ultrix ***"
	@if test `uname` = ULTRIX; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CCuu) LD=$(LDuu) LF=$(LFuu) OBJ=uu.o EXE=ult; \
	else \
	    echo "*** on host Tutnix via RSH ***"; \
	    rsh tutnix "cd $(DIR); \
		make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC='$(CCuu)' LD='$(LDuu)' LF='$(LFuu)' OBJ=uu.o EXE=ult"; \
	fi

build-v: 
	@echo ""
	@echo "*** Making program $(TNAM) ($(PNAM)v.o) for MVME162/172 VxWorks ***"
	@if test `uname` = ULTRIX; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CCuv) LD=$(LDuv) LF=$(LFuv) OBJ=uv.o EXE=v.o; \
	elif test `uname` = Linux; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CClv) LD=$(LDlv) LF=$(LFlv) OBJ=lv.o EXE=v.o; \
	else \
	    echo "*** on host Atomix via RSH ***"; \
	    rsh atomix "cd $(DIR); \
		make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC='$(CClv)' LD='$(LDlv)' LF='$(LFlv)' OBJ=lv.o EXE=v.o"; \
	fi

buildlv: 
	@echo ""
	@echo "*** Making program $(TNAM) ($(PNAM)v.o) for MVME162/172 VxWorks ***"
	@if test `uname` = Linux; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CClv) LD=$(LDlv) LF=$(LFlv) OBJ=lv.o EXE=v.o; \
	else \
	    echo "*** on host Atomix via RSH ***"; \
	    rsh atomix "cd $(DIR); \
		make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC='$(CClv)' LD='$(LDlv)' LF='$(LFlv)' OBJ=lv.o EXE=v.o"; \
	fi

builduv: 
	@echo ""
	@echo "*** Making program $(TNAM) ($(PNAM)v.o) for MVME162/172 VxWorks ***"
	@if test `uname` = ULTRIX; then \
	    echo "*** on host $(HOSTNAME) ***"; \
	    make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC=$(CCuv) LD=$(LDuv) LF=$(LFuv) OBJ=uv.o EXE=v.o; \
	else \
	    echo "*** on host Tutnix via RSH ***"; \
	    rsh tutnix "cd $(DIR); \
		make -f Makefile.$(PNAM) $(PNAM) $(PARAM) \
		CC='$(CCuv)' LD='$(LDuv)' LF='$(LFuv)' OBJ=uv.o EXE=v.o"; \
	fi


install: inst$(t)

inst-: install-

instx: installx

instl: installl

instu: installu

instv: installv

insta: installx installl installu installv

install-: 
	@echo ""
	@if test `uname` = OSF1; then \
	    echo "*** Installing program $(TNAM) for Alpha OSF1 ***"; \
	    if test -f $(PROGS)$(PNAM)osf -a ! -f $(PROGS)$(PNAM)osf.$(DATE); then \
	    	mv $(PROGS)$(PNAM)osf $(PROGS)$(PNAM)osf.$(DATE); \
	    fi; \
	    cp $(PNAM)osf $(PROGS); \
	    chmod 755 $(PROGS)$(PNAM)osf; \
	elif test `uname` = Linux; then \
	    echo "*** Installing program $(TNAM) for i686 Linux ***"; \
	    if test -f $(PROGS)$(PNAM)lnx -a ! -f $(PROGS)$(PNAM)lnx.$(DATE); then \
	    	mv $(PROGS)$(PNAM)lnx $(PROGS)$(PNAM)lnx.$(DATE); \
	    fi; \
	    cp $(PNAM)lnx $(PROGS); \
	    chmod 755 $(PROGS)$(PNAM)lnx; \
	elif test `uname` = ULTRIX; then \
	    echo "*** Installing program $(TNAM) for DS5000 Ultrix ***"; \
	    if test -f $(PROGS)$(PNAM)ult -a ! -f $(PROGS)$(PNAM)ult.$(DATE); then \
	    	mv $(PROGS)$(PNAM)ult $(PROGS)$(PNAM)ult.$(DATE); \
	    fi; \
	    cp $(PNAM)ult $(PROGS); \
	    chmod 755 $(PROGS)$(PNAM)ult; \
	else \
	    echo "*** Installing $(TNAM) on host $(HOSTNAME) not supported ***"; \
	fi

installx: 
	@echo ""
	@echo "*** Installing program $(TNAM) for Alpha OSF1 ***"
	@if test -f $(PROGS)$(PNAM)osf -a ! -f $(PROGS)$(PNAM)osf.$(DATE); then \
	    mv $(PROGS)$(PNAM)osf $(PROGS)$(PNAM)osf.$(DATE); \
	fi
	cp $(PNAM)osf $(PROGS)
	@chmod 755 $(PROGS)$(PNAM)osf

installl: 
	@echo ""
	@echo "*** Installing program $(TNAM) for i686 Linux ***"
	@if test -f $(PROGS)$(PNAM)lnx -a ! -f $(PROGS)$(PNAM)lnx.$(DATE); then \
	    mv $(PROGS)$(PNAM)lnx $(PROGS)$(PNAM)lnx.$(DATE); \
	fi
	cp $(PNAM)lnx $(PROGS)
	@chmod 755 $(PROGS)$(PNAM)lnx

installu: 
	@echo ""
	@echo "*** Installing program $(TNAM) for DS5000 Ultrix ***"
	@if test -f $(PROGS)$(PNAM)ult -a ! -f $(PROGS)$(PNAM)ult.$(DATE); then \
	    mv $(PROGS)$(PNAM)ult $(PROGS)$(PNAM)ult.$(DATE); \
	fi
	cp $(PNAM)ult $(PROGS)
	@chmod 755 $(PROGS)$(PNAM)ult

installv: 
	@echo ""
	@echo "*** Installing program $(TNAM) for MVME162/172 VxWorks ***"
	@if test -f $(PROGS)$(PNAM)v.o -a ! -f $(PROGS)$(PNAM)v.o.$(DATE); then \
	    mv $(PROGS)$(PNAM)v.o $(PROGS)$(PNAM)v.o.$(DATE); \
	fi
	cp $(PNAM)v.o $(PROGS)
	@chmod 644 $(PROGS)$(PNAM)v.o


clean: cln$(t)

cln-: clean-

clnx: cleanx

clnl: cleanl

clnu: cleanu

clnv: cleanv

clna: cleanx cleanl cleanu cleanv

clean-: 
	@echo ""
	@if test `uname` = OSF1; then \
	    echo "*** Cleanup $(TNAM) for Alpha OSF1 ***"; \
	    make -f Makefile.$(PNAM) clean OBJ=xx.o; \
	elif test `uname` = Linux; then \
	    echo "*** Cleanup $(TNAM) for i686 Linux ***"; \
	    make -f Makefile.$(PNAM) clean OBJ=ll.o; \
	elif test `uname` = ULTRIX; then \
	    echo "*** Cleanup $(TNAM) for DS5000 Ultrix ***"; \
	    make -f Makefile.$(PNAM) clean OBJ=uu.o; \
	else \
	    echo "*** Cleanup $(TNAM) on host $(HOSTNAME) not supported ***"; \
	fi

cleanx: 
	@echo ""
	@echo "*** Cleanup $(TNAM) for Alpha OSF1 ***"
	@make -f Makefile.$(PNAM) clean OBJ=xx.o

cleanl: 
	@echo ""
	@echo "*** Cleanup $(TNAM) for i686 Linux ***"
	@make -f Makefile.$(PNAM) clean OBJ=ll.o

cleanu: 
	@echo ""
	@echo "*** Cleanup $(TNAM) for DS5000 Ultrix ***"
	@make -f Makefile.$(PNAM) clean OBJ=uu.o

cleanv: 
	@echo ""
	@echo "*** Cleanup $(TNAM) for MVME162/172 VxWorks ***"
	@make -f Makefile.$(PNAM) clean OBJ=uv.o
	@make -f Makefile.$(PNAM) clean OBJ=lv.o


.DEFAULT:
	@echo ""
	@echo "Usage:"
	@echo "make help			(this help)"
	@echo "make $(PNAM) h=<h> t=<t>		(build program $(TNAM))"
	@echo "make install h=<h> t=<t>	(install program $(TNAM))"
	@echo "make clean h=<h> t=<t>		(clean program $(TNAM))"
	@echo "make all h=<h> t=<t>		(build, install, clean)"
	@echo "make info			(build INFO files)"
	@echo "<h>: host system to make program $(TNAM) on"
	@echo "h=-: find applicable host (default)"
	@echo "h=x: Alpha/OSF1"
	@echo "h=l: I686/Linux"
	@echo "h=u: DS5000/Ultrix"
	@echo "<t>: target system to make program $(TNAM) for"
	@echo "t=-: target = host (default)"
	@echo "t=x: Alpha/OSF1"
	@echo "t=l: I686/Linux"
	@echo "t=u: DS5000/Ultrix"
	@echo "t=v: m68k/VxWorks"
	@echo "t=a: all targets"
	@echo ""
	@echo "Supported host/target combinations:"
	@echo "h/t  -  x  l  u  v  a"
	@echo "-    *  *  *  *  *  *"
	@echo "x    *  *  -  -  -  -"
	@echo "l    *  -  *  -  *  -"
	@echo "u    *  -  -  *  *  -"
	@echo ""

# 

Generated on Wed Oct 15 16:17:23 2008 for Experiment-Software by  doxygen 1.5.6