From 493305ce2bdb00ed985498fcc6fa55bc6c7b70b7 Mon Sep 17 00:00:00 2001
From: Douglas Guptill <douglas.guptill@dal.ca>
Date: Sat, 22 Jan 2011 15:28:01 +0000
Subject: [PATCH] it now works

---
 src/Makefile.inc.geodyncomp | 61 +++++++++++++++++++++++++++----------
 1 file changed, 45 insertions(+), 16 deletions(-)

diff --git a/src/Makefile.inc.geodyncomp b/src/Makefile.inc.geodyncomp
index 66ffe167..14abe9a0 100644
--- a/src/Makefile.inc.geodyncomp
+++ b/src/Makefile.inc.geodyncomp
@@ -2,28 +2,55 @@
 #
 # on geodyncomp, the defaults are OpenMPI (1.4.3), 
 # built with the GNU compilers
-F90 = mpif90
-F77 = mpif90
-cc  = mpicc
+# F90 = mpif90
+# F77 = mpif90
+# cc  = mpicc
+# on geodyncomp, we also have an intel compiler
+F90 = ifort
+F77 = ifort
+cc = icc
 
 # we take the standard ar
-AR=ar
+# AR=ar
+AR=xiar
 
 # There are no BITS
-BITS=
+BITS=-ifort-dbg-openmpi
 
 # no MKL
 # IMKL = /scinet/gpc/intel/Compiler/11.1/056/mkl/include
 # IMKL = /scinet/gpc/intel/Compiler/11.1/072/mkl/include
 # INCLUDE=-I$(IMKL)
 
+# Define MPI include files for ifort.
+# these should match the build of wsmp; see below.
+# for openmpi, these work
+MPI_INC=-I /opt/openmpi/include
+MPI_LIB=-L/opt/openmpi/lib -lmpi -lmpi_f77 -lmpi_f90
+# for mpich2
+# MPI_INC=-I /opt/mpich2/gnu/include
+# MPI_LIB=-L/opt/mpich2/gnu/lib -lmpichf90 -lfmpich -lmpich
+
+INCLUDE = $(MPI_INC)
+
 # Define FORTRAN compiler flags.......................
 #
-F90FLAGS=-ffree-line-length-0
-
+GFORTRAN_FLAGS = -ffree-line-length-0
+# This gives us, at run time,
+# error while loading shared libraries: libimf.so: cannot open shared object file
+# No such file or directory
+# IFORT_FLAGS = -O2 -fp-model strict -mcmodel=large -shared-intel
+# IFORT_FLAGS = -fast
+IFORT_FLAGS = -O2
+IFORT_DEBUG = -g -warn all -check all -debug all
+# IFORT_DEBUG =
+F90FLAGS = ${IFORT_FLAGS} ${IFORT_DEBUG}
+F77FLAGS = ${IFORT_FLAGS} ${IFORT_DEBUG}
+FFLAGS=${F90FLAGS}
 # Define C compiler flags.............................
 #
-CFLAGS=
+ICC_FLAGS = 
+CFLAGS = -O2 ${ICC_FLAGS}
 
 # no Intel MKL library
 #
@@ -35,10 +62,10 @@ CFLAGS=
 
 # WSMP Library
 #
-# WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64/lib/Intel
-# WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64-MPI2
-# WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64-IMPI
+# wsmp, with gnu and openMPI
 WSMP = -L/opt/wsmp/wsmp-Linux64/lib/GNU/openmpi -lpwsmp64
+# wsmp, with intel and mpich2
+# WSMP = -L/opt/wsmp/wsmp-Linux64/lib/Intel/mpich2 -lpwsmp64
 
 # Not using Google's TCMalloc
 # TCML   = /home/dwhipp/software/tcml
@@ -49,7 +76,9 @@ LIBS = \
  -LNN -lnn_c$(BITS) \
  -LCASCADE -lcascade$(BITS) \
  -LRESAMPLE -lresample$(BITS) \
- $(WSMP) -lpthread
+ $(WSMP) -lblas \
+ $(MPI_LIB) \
+ -lpthread
 
 # The Makefiles look at compile output with this
 PAGER=more
@@ -61,13 +90,13 @@ COMPILE_OUT=$(NAME)$(BITS).compile
 .SUFFIXES: .o .c .f .f90
 .f90.o:
 	@echo "--"                                   >>$(COMPILE_OUT) 2>&1
-	@echo "$(F90) $(F90FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1
-	$(F90) $(F90FLAGS) $(INCLUDES) -c $<         >>$(COMPILE_OUT) 2>&1
+	@echo "$(F90) $(F90FLAGS) $(INCLUDE) -c $<" >>$(COMPILE_OUT) 2>&1
+	$(F90) $(F90FLAGS) $(INCLUDE) -c $<         >>$(COMPILE_OUT) 2>&1
 
 .f.o:
 	@echo "--"                                   >>$(COMPILE_OUT) 2>&1
-	@echo "$(F77) $(F77FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1
-	$(F77) $(F77FLAGS) $(INCLUDES) -c $<         >>$(COMPILE_OUT) 2>&1
+	@echo "$(F77) $(F77FLAGS) $(INCLUDE) -c $<" >>$(COMPILE_OUT) 2>&1
+	$(F77) $(F77FLAGS) $(INCLUDE) -c $<         >>$(COMPILE_OUT) 2>&1
 
 .c.o:
 	@echo "--"                                 >>$(COMPILE_OUT) 2>&1
-- 
GitLab