#!smake
#RCS ID: $Id: test_bin_makefile 887 2006-03-01 18:21:01Z rcatwood $
OBJECT_STYLE = N32_M4
DFLAGS = 
REG_LCDEFS =   -DGLOBAL_UND_GRO -DAV_DIFF_COEFF -DNOSOLID -DCELL_DIFF_COEFF -DSINGLESLICE -DC_LIQ_OUTPUT -DNLM_FORMULA  -DHISTO_NUC  -DALWAYS_NUC -DRANSLEY -DSILICON -DCLOCK  -DTB
#REG_LCDEFS =  -DAV_DIFF_COEFF -DNOSOLID -DCELL_DIFF_COEFF -DSINGLESLICE -DC_LIQ_OUTPUT -DNLM_FORMULA  -DHISTO_NUC   -DALWAYS_NUC -DRANSLEY -DSILICON -DTEST_LINE_INT -DWRITE_BLOCK
#REG_LCDEFS =  -DAV_DIFF_COEFF -DNOSOLID -DDEBUG_PORE -DCELL_DIFF_COEFF -DSINGLESLICE -DC_LIQ_OUTPUT -DNLM_FORMULA  -DHISTO_NUC  -DSILICON -DPORE_EXIT  -DALWAYS_NUC -DRANSLEY
#REG_LCDEFS = -DSTAT_ONLY -DAV_DIFF_COEFF -DNOSOLID -DDEBUG_PORE -DCELL_DIFF_COEFF -DSINGLESLICE -DC_LIQ_OUTPUT -DNLM_FORMULA  -DHISTO_NUC  -DSILICON -DPORE_EXIT  -DALWAYS_NUC -DRANSLEY
#REG_LCDEFS =  -DAV_DIFF_COEFF -DNOSOLID -DDEBUG_PORE -DCELL_DIFF_COEFF -DSINGLESLICE -DC_LIQ_OUTPUT -DNLM_FORMULA  -DHISTO_NUC  -DSILICON -DPORE_EXIT -DXRAY_PORES

LCOPTS =   -DSGI 
LWOFF = ,134,85,1009,1174,1552
include $(ROOT)/usr/include/make/commondefs
s = '$'
CC = cc
FC = f90
CVERSION=
TARGETS	= ca_tb 
DTARG = ca_deb

## note that you must use -g option for cvd!
#ifmake ca_deb
OPTIMIZER = -g
LCDEFS = ${DFLAGS} ${REG_LCDEFS}
#else
OPTIMIZER = -O3 #-IPA -s
LCDEFS = ${REG_LCDEFS}
#endif
#ifmake ca_dbm
OPTIMIZER = -g
LCDEFS = -DDBM $(REG_LCDEFS)
#endif
LFFLAGS = -extend_source


P_RES = aux_progs/p_res.c  

IFILES = oriented.inc 


#FFILES = findroot.f

CFILES = test_binblocks.c test_bin_casolid.c\
        bigblock.c subblock.c \
	readgeoplus.c readmat.c read_ctrl.c getxyz.c\
	output_ex.c output_img.c find_max.c freeblock.c\
	read_cap_ca.c sb_nuc.c sb_temp_calc.c \
	sb_ca_step.c initface.c fcopymat.c icopymat.c \
	init_sb_neigh.c initcube.c rcs_id.c\
	fidap_interp_init.c  checkblock.c\
	thermo_trace_init.c thermo_trace_calc.c nbhd_def.c  \
        sb_boundary.c recr_extra.c props.c\
        open_sb.c sb_diffuse_gas.c sb_diffuse_alloy.c read_sb.c calc_sb.c\
	T_var_read.c trans_interp_calc.c wfact_r_calc.c pnuc_function.c\
	wfact_z_calc.c p_growth.c castats.c nuc_lookup.c nuc_functions.c\
	gaussdev.c rand_step.c rand_square.c ca_histo.c write_header_ctrl.c\
	write_grain_histo.c  pore_setup_multi.c pore_routines.c pore_multi.c\
	find_nmols.c findroot.c checks.c sb_line_int.c pr_lookup.c close_sb.c \
        window_move.c sb_decentred_step.c sb_diffuse_alloy_decentred.c alloc_bb.c alloc_sb.c\
	 safeopen.c write_blocks.c read_blocks.c

HFILES = ca_matrix.h blocks.h fem.h machine.h writeblocks.h\
	readgeoplus.h readmat.h  read_sb.h\
	matprops.h nucprops.h read_ctrl.h find_max.h\
	colour.h temprops.h solprops.h cube.h \
	grain.h fidap.h output.h tcpl.h nbhd.h\
        sb_diffuse.h pore.h constants.h rcs_id.h\
	interp.h nearnode.h castats.h nuc_lookup.h\
	pr_struct.h nuc_functions.h nucfuncs.h props.h gaussdev.h\
	ca_histo.h  histo_struct.h rand_step.h rand_square.h pore_routines.h checks.h



FIXFILES =  

ALLFILES = $(CFILES) $(HFILES)  $(IFILES) $(P_RES)\
            prop_wrapper.c Makefile localrules files.txt
## if SGI use below
#ifmake ca_deb
#uncomment the desired debug or default malloc library
#use seperate target ca_dbm to use dbmalloc with header file included
#     SGI speedshop malloc version - remember to set environment variables also
#LLDLIBS	= -lfastm -lm -lmalloc_ss
#       Electric Fence malloc version (use with caution)
LLDLIBS	= -lfastm -lm -lz -L/mount/mpg2/rcatwood/efence -lefence
#       default malloc version
#LLDLIBS	=  -lfastm -lm  -lz
#else
#       default malloc version
LLDLIBS	=  -lfastm -lm  -lz
#endif


#
default: ${TARGETS}

p_res:
	$(CC) -o p_res $(P_RES)

filelist:
	ls $(ALLFILES) > filelist

lint:
	lint -c $(LCDEFS)  -v ${CFILES} ${LLDLIBS} > lintout.txt



include $(COMMONRULES)
#note shell script line to copy compilation flags into one-line include file
#this file gets included in the main wrapper (ca_wrapper)

debug:  clean;echo "Cflags = strdup(\"DEBUG: ${DFLAGS} REG: ${CFLAGS}\"); " > getcflags.inc;make ${DTARG}

ca_deb:	$(OBJECTS)
	${CC} ${CFLAGS} -o $(DTARG) ${OBJECTS} ${LDFLAGS}
#	cp $@ /mount/mpg2/rcatwood/cacur/ca_ex
	echo $@;echo $(DTARG)

ca_dbm:	$(OBJECTS)
	${CC} ${CFLAGS} -o ca_dbm ${OBJECTS} ${LDFLAGS} -L/mount/mpg2/rcatwood/dbMalloc/lib -ldbmalloc
	echo $@;echo ca_dbm

new:	clean;echo "Cflags = strdup(\"${CFLAGS} ** ${LLDLIBS}\"); " > getcflags.inc ;make

${TARGETS}: ${OBJECTS}
	${CC} $(CFLAGS) -o $@ ${OBJECTS} ${LDFLAGS}
	echo $@
#	cp $@ /mount/mpg2/rcatwood/cacur/ca_ex

tar:	$(CFILES) 
	tar -cLovf cafiles.tar $(ALLFILES)
#	compress -f cafiles.tar

#RCS Log:$Log$
#RCS Log:Revision 11.1  2006/03/01 18:20:40  rcatwood
#RCS Log:Merging polycomponent and gas with meltback
#RCS Log:
#RCS Log:Revision 10.2  2005/12/01 14:38:02  rcatwood
#RCS Log:Merged xly_05 changes into the main trunk
#RCS Log:Primarily involving melt-back
#RCS Log:
#RCS Log:Revision 10.1.2.2  2005/11/23 18:18:53  rcatwood
#RCS Log:Result of merging mould_source and xly meltback+curvature 2d versions
#RCS Log:
#RCS Log:Revision 10.1  2005/11/03 11:56:47  rcatwood
#RCS Log:New version number -- using mould_src as base
#RCS Log:
#RCS Log:Revision 8.1.16.2  2005/11/02 11:55:06  rcatwood
#RCS Log:Fixing up the revision nubmer after loss of repository
#RCS Log:
#RCS Log:Revision 9.1  2003/08/14 14:38:40  rcatwood
#RCS Log:Working merge with decentered/porosity/procast, also including
#RCS Log:Ali Chirazi's multicomponent (not tested in this version)
#RCS Log:
#RCS Log:Revision 8.1  2002/10/17 17:01:04  rcatwood
#RCS Log:New version number! for decentered/porosity merge! Alpha Version!
#RCS Log:
#RCS Log:Revision 7.1  2002/10/17 16:52:38  rcatwood
#RCS Log:Merge from branch: combined Robert (porosity) and Wei (decentered octahedron) versions
#RCS Log:
#RCS Log:Revision 1.1.4.5  2002/09/17 20:51:08  rcatwood
#RCS Log:Rearranged so that read/write leave the memory clean
#RCS Log:Added signal 16 (SIGUSR1) catching for trapping after finishing the current timestep.
#RCS Log:
#RCS Log:Revision 1.1.4.4  2002/09/16 18:11:54  rcatwood
#RCS Log:Added read/write pores to read-blocks routines
#RCS Log:
#RCS Log:Revision 1.1.4.3  2002/09/13 11:02:17  rcatwood
#RCS Log:added file position pointer for each subblock data location
#RCS Log:de-linted the program a bit
#RCS Log:
#RCS Log:Revision 1.1.4.2  2002/09/13 09:10:18  rcatwood
#RCS Log:only alloc C_E if decentered mode is on
#RCS Log:started write_block for pore data - just a stub!
#RCS Log:
#RCS Log:Revision 1.1.4.1  2002/09/03 13:31:59  rcatwood
#RCS Log:Merged with reorganized allocation routines, and adjusted nucleation to compartmentalize
#RCS Log:the grain information assignment.
#RCS Log:
#RCS Log:Revision 7.35.2.3  2002/08/30 19:18:24  rcatwood
#RCS Log:split bigblock and subblock allocation into seperate subroutines
#RCS Log:from bigblock.c and open_sb.c: added alloc_bb.c and alloc_sb.c
#RCS Log:
#RCS Log:Revision 7.35.2.2  2002/08/22 15:13:43  ww1
#RCS Log:Merge of Wei Wang's decentered octahedron/square method
#RCS Log:
#RCS Log:Revision 7.35.2.1  2002/07/08 14:40:55  ww1
#RCS Log:Test of cvs
#RCS Log:
#RCS Log:Revision 7.35  2002/07/08 14:31:21  ww1
#RCS Log:Fixed touch line in Makefile
#RCS Log:
#RCS Log:Revision 7.34  2002/06/26 17:45:51  rcatwood
#RCS Log:removed wfiles from Makefile
#RCS Log:
#RCS Log:Revision 7.33  2002/06/26 16:08:20  chirazi
#RCS Log:test multiuser cvs
#RCS Log:
#RCS Log:Revision 7.32  2002/06/18 18:16:50  rcatwood
#RCS Log:changed pore output: just pore P_ONLY file and .por list file
#RCS Log:$Log$
#RCS Log:Revision 11.1  2006/03/01 18:20:40  rcatwood
#RCS Log:Merging polycomponent and gas with meltback
#RCS Log:
#RCS Log:Revision 10.2  2005/12/01 14:38:02  rcatwood
#RCS Log:Merged xly_05 changes into the main trunk
#RCS Log:Primarily involving melt-back
#RCS Log:
#RCS Log:Revision 10.1.2.2  2005/11/23 18:18:53  rcatwood
#RCS Log:Result of merging mould_source and xly meltback+curvature 2d versions
#RCS Log:
#RCS Log:Revision 10.1  2005/11/03 11:56:47  rcatwood
#RCS Log:New version number -- using mould_src as base
#RCS Log:
#RCS Log:Revision 8.1.16.2  2005/11/02 11:55:06  rcatwood
#RCS Log:Fixing up the revision nubmer after loss of repository
#RCS Log:
#RCS Log:Revision 9.1  2003/08/14 14:38:40  rcatwood
#RCS Log:Working merge with decentered/porosity/procast, also including
#RCS Log:Ali Chirazi's multicomponent (not tested in this version)
#RCS Log:
#RCS Log:Revision 8.1  2002/10/17 17:01:04  rcatwood
#RCS Log:New version number! for decentered/porosity merge! Alpha Version!
#RCS Log:
#RCS Log:Revision 7.1  2002/10/17 16:52:38  rcatwood
#RCS Log:Merge from branch: combined Robert (porosity) and Wei (decentered octahedron) versions
#RCS Log:
#RCS Log:Revision 1.1.4.5  2002/09/17 20:51:08  rcatwood
#RCS Log:Rearranged so that read/write leave the memory clean
#RCS Log:Added signal 16 (SIGUSR1) catching for trapping after finishing the current timestep.
#RCS Log:
#RCS Log:Revision 1.1.4.4  2002/09/16 18:11:54  rcatwood
#RCS Log:Added read/write pores to read-blocks routines
#RCS Log:
#RCS Log:Revision 1.1.4.3  2002/09/13 11:02:17  rcatwood
#RCS Log:added file position pointer for each subblock data location
#RCS Log:de-linted the program a bit
#RCS Log:
#RCS Log:Revision 1.1.4.2  2002/09/13 09:10:18  rcatwood
#RCS Log:only alloc C_E if decentered mode is on
#RCS Log:started write_block for pore data - just a stub!
#RCS Log:
#RCS Log:Revision 1.1.4.1  2002/09/03 13:31:59  rcatwood
#RCS Log:Merged with reorganized allocation routines, and adjusted nucleation to compartmentalize
#RCS Log:the grain information assignment.
#RCS Log:
#RCS Log:Revision 1.1.2.1  2002/07/08 17:26:12  rcatwood
#RCS Log:added test routine for write blocks to cvs repository
#RCS Log:
#RCS Log:Revision 7.31  2002/05/27 17:08:35  rcatwood
#RCS Log:improved dbMalloc flag usage in Makefile
#RCS Log:
#RCS Log:Revision 7.30  2002/05/23 17:28:01  rcatwood
#RCS Log:Used dbmalloc to eliminate all memory leaks!
#RCS Log:Started close-sb routine to improve multiblock
#RCS Log:
#RCS Log:Revision 7.29  2002/04/22 16:09:03  rcatwood
#RCS Log:Added compression for bin files
#RCS Log:
#RCS Log:Revision 7.28  2002/02/14 13:15:01  rcatwood
#RCS Log:Added write_block option instead of cpp definintion.
#RCS Log:
#RCS Log:Revision 7.27  2002/01/28 14:00:01  rcatwood
#RCS Log:After thesis
#RCS Log:
#RCS Log:Revision 7.26  2001/12/18 17:40:45  rcatwood
#RCS Log:After thesis
#RCS Log:
#RCS Log:Revision 7.25  2001/08/28 19:08:51  rcatwood
#RCS Log:thesis version
#RCS Log:
#RCS Log:Revision 7.24  2001/07/12 17:41:49  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 7.23  2001/07/06 15:18:04  rcatwood
#RCS Log:fixed another bug which caused seg fault when no pore mode selected
#RCS Log:
#RCS Log:Revision 7.22  2001/06/27 11:42:13  rcatwood
#RCS Log:added #IFDEF GLOBAL_UND_GRO or NUC cpp option.
#RCS Log:
#RCS Log:Revision 7.21  2001/06/26 15:55:08  rcatwood
#RCS Log:fix xegfault in ca_solid
#RCS Log:
#RCS Log:Revision 7.20  2001/06/11 18:12:55  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 7.19  2001/06/05 13:39:23  rcatwood
#RCS Log:Improve version , flag and help output in wrapper (needs proper Makefile)
#RCS Log:
#RCS Log:Revision 7.18  2001/05/09 18:33:04  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 7.17  2001/04/10 12:20:22  rcatwood
#RCS Log:improved commenting for compilation flags script
#RCS Log:
#RCS Log:Revision 7.16  2001/04/10 12:17:21  rcatwood
#RCS Log: added listing of compilation flags to control header output (requres Makefile modification)
#RCS Log:
#RCS Log:Revision 7.15  2001/04/06 11:56:19  rcatwood
#RCS Log:added header info for RANSLEY/IMAB
#RCS Log:
#RCS Log:Revision 7.14  2001/03/27 11:31:49  rcatwood
#RCS Log:Protected error messages from excessive numbers
#RCS Log:
#RCS Log:Revision 7.13  2001/03/23 18:56:07  rcatwood
#RCS Log:added choice list and minimum H to pore routines.
#RCS Log:
#RCS Log:Revision 7.12  2001/03/13 10:36:45  rcatwood
#RCS Log:Ready to Merge with anchou version
#RCS Log:Fixed not-casting problems,
#RCS Log:seperate pore stats file.
#RCS Log:
#RCS Log:Revision 7.11  2001/03/05 11:40:35  rcatwood
#RCS Log:Fixed not-casting problems -- hopefully
#RCS Log:Gas diffusion was exiting without updating the array pointer,
#RCS Log:and pores could multiply in the mould area!
#RCS Log:
#RCS Log:Revision 7.10  2001/02/22 13:00:23  rcatwood
#RCS Log:Included pore reallocation and stop temp (as cpp macro)
#RCS Log:fixed x-y bug in line intercept routine
#RCS Log:
#RCS Log:Revision 7.9  2001/02/19 21:35:25  rcatwood
#RCS Log:fixed more histo,
#RCS Log:also found memory allocation bug, not sur eif it is fixed.
#RCS Log:
#RCS Log:Revision 7.8  2001/02/19 19:28:46  rcatwood
#RCS Log:fixed histo
#RCS Log:for grains
#RCS Log:
#RCS Log:and also make TcTrace mode override const. cooling rate
#RCS Log:
#RCS Log:Revision 7.7  2001/02/16 20:30:49  rcatwood
#RCS Log:Added some commenting for DAS and Limrad
#RCS Log:Removed some JUNK
#RCS Log:
#RCS Log:Revision 7.8  2001/02/16 20:29:17  rcatwood
#RCS Log:Added comments to show DAS and Limrad areas.
#RCS Log:Removed some ifdef JUNK sections
#RCS Log:
#RCS Log:Revision 7.7  2001/02/16 16:15:19  rcatwood
#RCS Log:Non-stat_only version
#RCS Log:
#RCS Log:Revision 7.6  2001/02/16 16:11:26  rcatwood
#RCS Log:Makfeil tweek
#RCS Log:
#RCS Log:Revision 7.5  2001/02/15 19:36:40  rcatwood
#RCS Log:Improved stat-only mode. Added routine for max and min extent of each pore.
#RCS Log:Also some command line improvement in ca wrapper.
#RCS Log:
#RCS Log:Revision 7.6  2001/02/15 15:15:51  rcatwood
#RCS Log:Improved STAT_ONLY mode. Added pore extent output.
#RCS Log:
#RCS Log:Revision 7.5  2001/01/30 19:11:26  acy97
#RCS Log:Removed magnesium flag.
#RCS Log:
#RCS Log:Revision 7.4  2001/01/30 12:51:44  rcatwood
#RCS Log:before moving to CVS source control
#RCS Log:
#RCS Log:Revision 7.3  2000/11/07 16:06:54  rcatwood
#RCS Log:still more missing h files
#RCS Log:
#RCS Log:Revision 7.2  2000/11/07 16:04:49  rcatwood
#RCS Log:fixed some co glitches
#RCS Log:
#RCS Log:Revision 7.1  2000/11/07 16:01:34  rcatwood
#RCS Log:fixed missing h file
#RCS Log:
#RCS Log:Revision 7.0  2000/11/07 15:57:47  rcatwood
#RCS Log:Multi cell pore version
#RCS Log:
#RCS Log:Revision 6.1  2000/09/28 17:39:07  rcatwood
#RCS Log:fixed h file list. Updated localrules
#RCS Log:
#RCS Log:Revision 6.1  2000/09/28 17:36:26  rcatwood
#RCS Log:fixed h files list
#RCS Log:
#RCS Log:Revision 6.0  2000/09/25 18:12:13  rcatwood
#RCS Log:After PORE_00 and NLM
#RCS Log:
#RCS Log:Revision 5.6  2000/04/11 14:42:35  rcatwood
#RCS Log:seperated stat routines into castats.c castats.h
#RCS Log:
#RCS Log:Revision 5.5  2000/04/11 14:36:42  rcatwood
#RCS Log:added chmod -w to checkout command make co
#RCS Log:
#RCS Log:Revision 5.5  2000/04/11 10:15:23  xxu
#RCS Log:Added chmod -w in make co check-out command.
#RCS Log:
#RCS Log:Revision 5.4  2000/03/23 19:02:12  rcatwood
#RCS Log:Particle growth added. Check-in for Yehia version make ciy added to Makefile
#RCS Log:
#RCS Log:Revision 5.4  2000/03/23 17:20:37  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 5.3  2000/03/15 19:42:24  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 5.2  2000/03/08 11:16:48  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 5.1  2000/03/02 16:12:09  rcatwood
#RCS Log:Improved makefile for merged version
#RCS Log:
#RCS Log:Revision 4.13  2000/03/02 16:05:35  rcatwood
#RCS Log:Improved makefile for merged version
#RCS Log:
#RCS Log:Revision 2.0  2000/03/02 13:27:09  rcatwood
#RCS Log:Improved makefile for merged version
#RCS Log:
#RCS Log:Revision 4.12  2000/03/01 16:46:43  rcatwood
#RCS Log:Improved makefiel
#RCS Log:
#RCS Log:Revision 4.11  2000/03/01 16:22:05  rcatwood
#RCS Log:Improved makefiel
#RCS Log:
#RCS Log:Revision 1.1.1.1  2000/02/22 14:53:43  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 1.1  2000/02/22 14:52:19  rcatwood
#RCS Log:Initial revision
#RCS Log:
#RCS Log:Revision 4.10  1999/12/20 13:11:23  rcatwood
#RCS Log:Alloy and Gas outputs
#RCS Log:
#RCS Log:Revision 4.9  1999/12/16 19:30:06  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 4.8  1999/12/16 19:29:18  rcatwood
#RCS Log:*** empty log message ***
#RCS Log:
#RCS Log:Revision 4.7  1999/12/16 19:15:48  rcatwood
#RCS Log:Improved RCS use
#RCS Log:
#RCS Log:Revision 4.6  1999/12/16 13:33:44  rcatwood
#RCS Log:Improved RCS use
#RCS Log:
# DO NOT DELETE THIS LINE -- make depend uses it
