# gmake makefile for a usp program.
# Changes:
# 09/27/89	Terri Fischer
# 09/10/90	Terri Fischer	updated

# get the initialization files from .../etc

# if you are doing a debug compile be sure to use the debug gmake.init
#include ${DEPTROOT}/usp/etc/gmake.init.db

include ${DEPTROOT}/usp/etc/gmake.init
include ${DEPTROOT}/etc/gmake.mathadv

#  the libraray names (e.g. "ut") get translated into full path names
#  via the info in the initialization files above
#
#  if you are doing a workshop debug session requiring memory mapping
#  or access checking be sure to use -Bdynamic to use dynamic load libraries
#Libes		:= ${Libes} -lut ${MathAdvO} -lieeeio -lfu -Bdynamic

Libes		:= ${Libes} -lut ${MathAdvO} -lieeeio -lfu 
#
# Add an architecture library variable which may be set in one of the gmake
# rules files referenced above. Initialized with SOLARIS port.. - jmw 8/9/93
#
Libes		:=	${Libes} ${${Vendor}Libes} ${${TArchDir}Libes}

#  define compiler flags.  The default optimization levels are set in the
#  gmake rules files.  If you need to change them do so here.

CCFlags		:=	${CCFlags}

FCFlags		:=	${FCFlags}

# Warning:
# Don't leave files with the same name but different suffixes in your
# source directory, it will confuse the compilers. Make sure you
# delete any .f files associated with .F files  that may have been
# left around before trying to recompile.

F77Srcs		:= prgm_trace.F subs_trace.F

SafeFiles	:= ${AllSrcs} ${wildcard *.1} Makefile \
			README ${wildcard *.pattern}

# the ${LocalBin} entry will cause the code to appear in ~usp/bin/sun4
# which is not too useful while debugging.  To defeat this don't insert
# the ${LocalBin} until you are ready for installation of your routine in
# usp.  i.e. when you compile from ~usp/src/cmd/name, where name is the 
# name of your routine

PRGM		:= ${LocalBin}/prgm
#PRGM		:= ./prgm

targets : ${PRGM}

all :  safe clean targets remotes install

${PRGM}    :  ${F77Objs}
	${LinkF} -o $@ ${F77Objs} ${Libes}

#  do remote make (i.e. in our case the cray, hp, convex, etc...)

remotes:	RemoteCopies RemoteMakes

install:
	mancopy 1 prgm
	execopy  prgm
	shadowexec -v execopy prgm

RemoteCopies:	${SafeFiles}
	shadowcopy -v $? && touch RemoteCopies

RemoteMakes:	${SafeFiles}
	shadowexec -v ${MAKE} && touch RemoteMakes

safe:	.safe.${jdate}.Z

.safe.${jdate}.Z:	${SafeFiles}
	${MakeSafe}

include ${TArchDir}/included.files

#  generate include files
#  date stamp source

${TArchDir}/included.files: ${AllSrcs}
	usp_d_stamp
	${FindIncludes}

clean:
	-rm ${TArchDir}/included.files ${AllObjs} ${PRGM} date.h \
	RemoteCopies RemoteMakes ${wildcard ShdCpy*}
