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

OBJS=    fly_h.o fly.o  null.o error.o \
	sys_init.o read_params.o read_redsh.o\
         read_b_asc.o read_b_bin.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  \
	 tree_gen.o find_group.o \
	 cell_prop.o acc_comp.o acc_ex.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  dt_comp.o read_s_bin.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 = ifort
# CF = /opt/share/mvapich2_Working_4GB/bin/mpif90
 CF = mpif90
# CF = pgf90
# CF = /opt/share/mpich2/bin/mpif90
 #CF = /opt/share/pgi/linux86/6.2/bin/pgf90
# CC = pgcc
 CC = mpicc
# LIBS =-L/opt/share/mvapich2/lib -lmpich -lfmpich -lmpichf90 -lmpichcxx  -L.
# LIBS =-L/opt/share/mpich2_pgi_01-02/lib -lmpich -lfmpich -lmpichf90 -lmpichcxx

# LDFLAGS= -L/opt/share/intel/fc/9.1.036/lib -L/opt/share/intel/cc/9.1.042/lib -L/opt/share/mpich2/lib
# LDFLAGS= -L/opt/share/mvapich2_Working_4GB/lib
# LDFLAGS= -L/opt/share/mvapich2/lib
# LDFLAGS= -L/opt/share/intel/fc/9.1.036/lib -L/opt/share/intel/cc/9.1.042/lib -L/opt/share/mvapich2/lib
# LDFLAGS= -L/opt/share/mpich2_pgi_01-02/lib

# CMD = ../bin_16mlu/FLY_mpif90_1 # compilato con mpich2 -> mpich2_intel_gb/
# CMD = ../bin_16mlu/FLY_mpif90_1_1 # compilato con mpich2 -> mpich2_intel_gb/ compiltore ifort diretto
# CMD = ../bin_test/FLY_mpif90_2 # compilato con  mpich2-31-01/
# CMD = ../bin_test/FLY_mpif90_3 # compilato con  mpich2_pgi_01-02
# CMD = ../bin_test/FLY_mpif90_3_1 # compilato con  mpich2_pgi_01-02 -fastsse
#                      -O3 -fastsse -Mprefetch=w -Msmart -tp k8-32 -Mipa=fast -Minline
# CMD = ../bin_test/FLY_mpif90_3_2 # compilato con  mpich2_pgi_01-02 -fastsse
# CMD = ../bin_16mlu/FLY_mpif90_3 # compilato con  mpich2_pgi_01-02 
# CMD = ../bin_16mlu/FLY_mpi_ifort # compilato con  mpich2 + ifort
# CMD = /gpfs/FLY/bin_big_40/FLY_mpi # compilato con  mpif90 new ver
# CMD = /gpfs/FLY/bin_big/FLY_mpi_file # compilato con  acc_comp_file
# CMD = /home01/ube/FLY_4/bin_2m/FLY_mpi4 # compilato con  acc_comp_noall
# CMD = /gpfs/FLY/bin_16mlu/FLY_mpi # compilato con  acc_comp_noall
# CMD = /gpfs/FLY/bin_big/FLY_mpi_simp # compilato con  acc_comp_nodlb_gr
  CMD= FLY_mpi
# CMD = ../bin_test/FLY_mpif90_4 # compilato con  mvapich2_try4
# CMD = ../bin_test/FLY_mpif90_5 # compilato con  mvapich2.tcp
# CMD = ../bin_test/FLY_mpif90_6 # compilato con  mvapich2.vapi
# CMD = ../bin_test/FLY_mpif90_7 # compilato con  mvapich2_pgi_01-02

# CMD = /gpfs/FLY/bin_big/FLY_mpi
 
# FFLAGS = -quiet -O0 -r8 -w95  -I/opt/share/mpich2/include/ -I/usr/local/include
# FFLAGS = -O3 -w95 -r8 -I/opt/share/mpich2/include/ -I/usr/local/include -I/usr/include
# FFLAGS = -O3  -I/opt/share/mpich2/include/ -I/usr/local/include -I/usr/include
# FFLAGS = -O3 -fast -Mprefetch=w -Msmart -tp amd64 -Mipa=fast -Minline
# FFLAGS = -O0 -check all
 FFLAGS = -O3 
# FFLAGS = "-mcmodel=medium" 
# FFLAGS = -O3  -I/opt/share/mpich2/include/ 
# FFLAGS = -O3 -I/opt/share/mvapich2/include/ -I/usr/include -I/usr/local/topspin/include -I/usr/local/topspin/include/vapi
#FFLAGS = -O3 -Bstatic -I./include
#FFLAGS = -fast -O3 -I./include
#FFLAGS = -fastsse -Mprefetch -tp amd64e  -Mprefetch=w -Msmart -Mipa=fast -Minline **QUI
#FFLAGS1 = -O0 -w95 -r8 -I/o8pt/share/mpich2/include/ -I/usr/local/include -I/usr/include
#FFLAGS1 = -O0  -I/opt/share/mvapich2/include/ -I/usr/include -I/usr/local/topspin/include -I/usr/local/topspin/include/vapi
 #FFLAGS1 = -O0 -Bstatic -I./include
 #FFLAGS1 = -fast -O0 -I./include
#####FFLAGS1 =  -O0  -I/opt/share/mpich2/include/ -I/usr/local/include -I/usr/include
# FFLAGS1 = -O3

#FFLAGS1 = "-mcmodel=medium"
 
 CFLAGS = -O3    
 
 
LD = $(CF)

# 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 

#read_b_bin.o : read_b_bin.F90 $(CF) $(FFLAGS1) -c $<

read_b_bin.o : read_b_bin.F90 
	$(CF) $(FFLAGS1) -c $<

read_redsh.o : read_redsh.F90
	$(CF) $(FFLAGS1) -c $<

.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