[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