Skip to content
makeLinux_clx 2.75 KiB
Newer Older
Fabio Roberto Vitello's avatar
Fabio Roberto Vitello committed
#SHELL=/bin/sh

OBJS=    fly_h.o fly.o open_mpi_win.o close_mpi_win.o null.o error.o \
	sys_init.o read_params.o read_redsh.o\
         read_b_asc.o read_b_bin.o ini_bal.o init_pars.o init_ew.o \
         init_pos.o reset_pos.o inpar_dyn.o step.o step_force.o \
 	 tree_build.o tree_sort.o ch_all.o ch_dall.o \
	 tree_gen.o find_group.o \
	cell_prop.o acc_comp.o \
	 ilist_group.o force_group.o force.o ilist.o upd_pos.o upd_vel.o \
	 wr_native.o write_b_asc.o write_b_bin.o out_32.o leapf_corr.o \
         io.o ch_linee.o dt_comp.o \
	flashBlockToFlyCell.o findParticlesInCell.o density_send.o

	 
	
	
# Tunable parameters
#
# CF		Name of the fortran compiling system to use
# LDFLAGS	Flags to the loader
# LIBS		List of libraries
# CMD		Name of the executable
# PROFLIB	Library needed for profiling
#

CF = mpif90	# mpxlf90_r
LD = $(CF)
CC = mpicc	# xlc

#libraries
#LIBS= -lmass
#LIBS = -L/cineca/prod/vampir/lib -lVT -lld
#LIBS = -L/cineca/prod/mpi_trace -lmpiprof
#LIBS = -L. -lturbo2
LIBS = -CU -L/opt/gm/lib/ -L.

#OPT	=   -O4 -qstrict -qarch=pwr3 -qtune=pwr3 -qrealsize=8  -qfixed=100
#OPT	= -CU -O0 -r8 -w95 -Vaxlib -static -I/usr/local/include # -qrealsize=8 -qfixed=100
#OPT1	= -O0 -r8 -w95 -Vaxlib -static -I/usr/local/include	# -qrealsize=8 -qfixed=100
#OPT2	= -O0 -r8 -w95 -Vaxlib -static #-I/usr/local/include # -qrealsize=8 -qfixed=100

OPT     =  -O3 -tpp7  -static -xN   # -I/obpt/mpich2/1.0/intel81/include # -I/usr/local/mpich2-1.0/include # -qrealsize=8 -qfixed=132
OPT1    = -O3 -tpp7 -xN -static # -I/opt/mpich2/1.0/intel81/include # -I/usr/local/mpich2-1.0/include   # -qrealsize=8 -qfixed=132
OPT2    = -O3 -tpp7 -xN  -static



#LDFLAGS = $(OPT)  -bmaxdata:1000000000 -bmaxstack:1000000
#LDFLAGS = $(OPT)  -bmaxdata:0x70000000	#-qtbtable=full
LDFLAGS = $(OPT) 



# To perform the default compilation, use the first line
# To compile with flowtracing turned on, use the second line
# To compile giving profile additonal information, use the third line
# WARNING:  SIMULTANEOUSLY PROFILING AND FLOWTRACING IS NOT RECOMMENDED 

CMD = /scratch/inact005/ube/bin_2m/FLY_mpi_
FFLAGS = $(OPT)   #-DFLASH	# -DSTA # -DSORT
FFLAGS1 = $(OPT1) # 	-DFLASH	# -DSTA # -DSORT
FFLAGS2 = $(OPT2) # 	-DFLASH	# -DSTA # -DSORT
CFLAGS = 

# Lines from here on down should not need to be changed.  They are the
# actual rules which make uses to build a.out.
#
all:		$(CMD)
.SUFFIXES :
.SUFFIXES : .o .F90 .c

$(OBJS):   fly_h.F90 



.F90.o :  
	$(CF) $(FFLAGS) -c $<
.c.o :
	$(CC) $(CFLAGS) -c $<

$(CMD):		$(OBJS)
	$(LD) $(LDFLAGS) -o $(@) $(OBJS) $(LIBS) 

# Make the profiled version of the command and call it a.out.prof
#
$(CMD).prof:	$(OBJS)
	$(CF) $(LDFLAGS) -o $(@) $(OBJS) $(PROFLIB) $(LIBS)

clean:
	-rm -f $(OBJS)

clobber:	clean
	-rm -f $(CMD) $(CMD).prof

void:	clobber
	-rm -f $(SRCS) makefile