[cig-commits] [commit] master: adapting makemake to parallel netcdf (932a337)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Fri Oct 17 05:29:43 PDT 2014


Repository : https://github.com/geodynamics/axisem

On branch  : master
Link       : https://github.com/geodynamics/axisem/compare/607f803cf074063627513d235f9ed0837fc1dd44...b6457db24acdde4a4e1c08935ae1b22adf87f5bf

>---------------------------------------------------------------

commit 932a33704c8d29ff6973858176d24fbdad5734b9
Author: martinvandriel <vandriel at erdw.ethz.ch>
Date:   Thu Oct 16 18:56:11 2014 +0200

    adapting makemake to parallel netcdf


>---------------------------------------------------------------

932a33704c8d29ff6973858176d24fbdad5734b9
 SOLVER/Makefile.TEMPLATE    |  9 ++++-----
 SOLVER/makemake.pl          | 16 +++++++++++++---
 make_axisem.macros.TEMPLATE |  2 +-
 3 files changed, 18 insertions(+), 9 deletions(-)

diff --git a/SOLVER/Makefile.TEMPLATE b/SOLVER/Makefile.TEMPLATE
index 4bef79d..7f82c99 100644
--- a/SOLVER/Makefile.TEMPLATE
+++ b/SOLVER/Makefile.TEMPLATE
@@ -63,7 +63,7 @@ all: $(PROG) utils
 $(PROG): $(OBJS)
     ifeq ($(strip $(SERIAL)),true)
         ifeq ($(strip $(USE_PAR_NETCDF)),true)
-   	    	$(error SERIAL and USE_PAR_NETCDF cannot be true at the same time)
+        	$(error SERIAL and USE_PAR_NETCDF cannot be true at the same time)
         endif
     endif
 	$(FC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
@@ -123,9 +123,8 @@ pointwise_derivatives.o: data_mesh.o data_pointwise.o data_spec.o \
 	global_parameters.o unrolled_loops.o Makefile ../make_axisem.macros 
 rotations.o: data_io.o data_mesh.o data_proc.o data_source.o \
 	global_parameters.o Makefile ../make_axisem.macros 
-seismograms.o: commun.o data_io.o data_mesh.o data_pointwise.o data_proc.o \
-	data_source.o data_time.o global_parameters.o nc_routines.o \
-	pointwise_derivatives.o rotations.o utlity.o Makefile ../make_axisem.macros 
+seismograms.o: commun.o data_io.o data_mesh.o data_proc.o data_source.o \
+	data_time.o global_parameters.o nc_routines.o rotations.o utlity.o Makefile ../make_axisem.macros 
 source.o: apply_masks.o commun.o data_io.o data_mesh.o data_proc.o \
 	data_source.o data_spec.o data_time.o global_parameters.o \
 	nc_routines.o pointwise_derivatives.o utlity.o Makefile ../make_axisem.macros 
@@ -152,7 +151,7 @@ lateral_heterogeneities.o: background_models.o commun.o data_heterogeneous.o \
 meshes_io.o: data_io.o data_matr.o data_mesh.o data_pointwise.o data_proc.o \
 	data_source.o data_spec.o global_parameters.o nc_routines.o utlity.o Makefile ../make_axisem.macros 
 nc_routines.o: clocks.o commun.o data_io.o data_mesh.o data_proc.o \
-	data_source.o data_time.o global_parameters.o Makefile ../make_axisem.macros 
+	data_source.o data_spec.o data_time.o global_parameters.o Makefile ../make_axisem.macros 
 parameters.o: attenuation.o commun.o data_comm.o data_io.o data_mesh.o \
 	data_proc.o data_source.o data_time.o global_parameters.o \
 	nc_routines.o utlity.o Makefile ../make_axisem.macros 
diff --git a/SOLVER/makemake.pl b/SOLVER/makemake.pl
index 86db3a0..503937e 100755
--- a/SOLVER/makemake.pl
+++ b/SOLVER/makemake.pl
@@ -58,7 +58,11 @@ print MAKEFILE "\n\n";
 # Define common macros
 #
 print MAKEFILE "ifeq (\$(strip \$(USE_NETCDF)),true)\n";
-print MAKEFILE "   FFLAGS += -Dunc\n";
+print MAKEFILE "   FFLAGS += -Denable_netcdf\n";
+print MAKEFILE "   ifeq (\$(strip \$(USE_PAR_NETCDF)),true)\n";
+print MAKEFILE "   	   FFLAGS += -Denable_parallel_netcdf\n";
+print MAKEFILE "   endif\n";
+print MAKEFILE "\n";
 print MAKEFILE "   ifdef NETCDF_PATH\n";
 print MAKEFILE "       LIBS = -L \$(strip \$(NETCDF_PATH))/lib -lnetcdff -Wl,-rpath,\$(strip \$(NETCDF_PATH))/lib\n";
 print MAKEFILE "       INCLUDE = -I \$(strip \$(NETCDF_PATH))/include\n";
@@ -72,8 +76,8 @@ print MAKEFILE "   INCLUDE = \n";
 print MAKEFILE "endif\n\n";
 
 print MAKEFILE "ifeq (\$(strip \$(SERIAL)),true)\n";
-print MAKEFILE "    FFLAGS += -Dserial\n";
-print MAKEFILE "    LDFLAGS += -pthread\n";
+print MAKEFILE "   FFLAGS += -Dserial\n";
+print MAKEFILE "   LDFLAGS += -pthread\n";
 print MAKEFILE "endif\n";
 
 print MAKEFILE "\n\n";
@@ -89,7 +93,13 @@ print MAKEFILE "FFLAGS += -Dsolver\n \n";
 # make
 #
 print MAKEFILE "all: \$(PROG) utils \n\n";
+
 print MAKEFILE "\$(PROG): \$(OBJS)\n";
+print MAKEFILE "    ifeq (\$(strip \$(SERIAL)),true)\n";
+print MAKEFILE "        ifeq (\$(strip \$(USE_PAR_NETCDF)),true)\n";
+print MAKEFILE "        	\$(error SERIAL and USE_PAR_NETCDF cannot be true at the same time)\n";
+print MAKEFILE "        endif\n";
+print MAKEFILE "    endif\n";
 print MAKEFILE "\t\$(", &LanguageCompiler($ARGV[1], @srcs);
 print MAKEFILE ") \$(LDFLAGS) -o \$@ \$(OBJS) \$(LIBS)\n\n";
 #
diff --git a/make_axisem.macros.TEMPLATE b/make_axisem.macros.TEMPLATE
index ab3653c..9ae3388 100644
--- a/make_axisem.macros.TEMPLATE
+++ b/make_axisem.macros.TEMPLATE
@@ -15,7 +15,7 @@ USE_PAR_NETCDF = false
 NETCDF_PATH =       # e.g. $(HOME)/local, uses /usr/include if not defined
 
 # compile without MPI (possible values: 'false', 'true')
-# make sure to build mesh with one processor
+# make sure to build mesh with one processor, USE_PAR_NETCDF needs to be false
 SERIAL = false
 
 ####################################



More information about the CIG-COMMITS mailing list