[cig-commits] [commit] QA: build: Add module dependencies to rules. (8a7bed3)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Fri Jan 17 04:27:54 PST 2014
Repository : ssh://geoshell/specfem3d
On branch : QA
Link : https://github.com/geodynamics/specfem3d/compare/6c327a1cde359cefa65f66e5b7981bfe995f92e3...4359ed56c14ef8f87387f46c8b705a1d395a40ba
>---------------------------------------------------------------
commit 8a7bed3a125fdb30098e411ab38a19344ee13560
Author: Elliott Sales de Andrade <esalesde at physics.utoronto.ca>
Date: Mon Jan 13 19:23:30 2014 -0500
build: Add module dependencies to rules.
This should fix parallel builds by ensuring modules are created before
they are used by any source files.
Fixes #84.
>---------------------------------------------------------------
8a7bed3a125fdb30098e411ab38a19344ee13560
Makefile.in | 10 +++---
src/generate_databases/Makefile.in | 40 ++++++++++++++++++++++
src/meshfem3D/Makefile.in | 9 +++++
src/specfem3D/Makefile.in | 68 ++++++++++++++++++++++++++++++++++++++
4 files changed, 122 insertions(+), 5 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index fe4e84a..76fdcdb 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -58,9 +58,9 @@ RANLIB = ranlib
# default targets for the pure Fortran version
@COND_PYRE_FALSE at DEFAULT = \
@COND_PYRE_FALSE@ xdecompose_mesh \
- at COND_PYRE_FALSE@ meshfem3D \
- at COND_PYRE_FALSE@ generate_databases \
- at COND_PYRE_FALSE@ specfem3D \
+ at COND_PYRE_FALSE@ xmeshfem3D \
+ at COND_PYRE_FALSE@ xgenerate_databases \
+ at COND_PYRE_FALSE@ xspecfem3D \
@COND_PYRE_FALSE@ $(EMPTY_MACRO)
@@ -103,10 +103,10 @@ xmeshfem3D:
$(MAKE) -C src/meshfem3D
xspecfem3D:
- $(MAKE) -C src/specfem3D specfem3D
+ $(MAKE) -C src/specfem3D xspecfem3D
xgenerate_databases:
- $(MAKE) -C src/generate_databases generate_databases
+ $(MAKE) -C src/generate_databases xgenerate_databases
xdecompose_mesh:
$(MAKE) -C src/decompose_mesh
diff --git a/src/generate_databases/Makefile.in b/src/generate_databases/Makefile.in
index 5606e56..85d5c86 100644
--- a/src/generate_databases/Makefile.in
+++ b/src/generate_databases/Makefile.in
@@ -212,6 +212,46 @@ $L/libgendatabases.a: $(libgendatabases_a_OBJECTS)
#######################################
###
+### Module dependencies
+###
+
+$O/calc_jacobian.o: $O/generate_databases_par.o
+$O/create_mass_matrices.o: $O/generate_databases_par.o
+$O/fault_generate_databases.o: $O/generate_databases_par.o
+$O/finalize_databases.o: $O/generate_databases_par.o
+$O/get_absorbing_boundary.o: $O/generate_databases_par.o
+$O/get_coupling_surfaces.o: $O/generate_databases_par.o
+$O/get_model.o: $O/generate_databases_par.o
+$O/get_MPI.o: $O/generate_databases_par.o
+$O/memory_eval.o: $O/generate_databases_par.o
+$O/model_1d_cascadia.o: $O/generate_databases_par.o
+$O/model_1d_prem.o: $O/generate_databases_par.o
+$O/model_1d_socal.o: $O/generate_databases_par.o
+$O/model_default.o: $O/generate_databases_par.o
+$O/model_external_values.o: $O/generate_databases_par.o
+$O/model_gll.o: $O/generate_databases_par.o
+$O/model_gll_adios.o: $O/generate_databases_par.o
+$O/model_ipati.o: $O/generate_databases_par.o
+$O/model_ipati_adios.o: $O/generate_databases_par.o
+$O/model_salton_trough.o: $O/generate_databases_par.o
+$O/pml_set_local_dampingcoeff.o: $O/generate_databases_par.o
+$O/read_partition_files.o: $O/generate_databases_par.o
+$O/read_partition_files_adios.o: $O/generate_databases_par.o
+$O/save_arrays_solver.o: $O/generate_databases_par.o
+$O/setup_color_perm.o: $O/generate_databases_par.o
+$O/setup_mesh.o: $O/generate_databases_par.o
+
+$O/create_regions_mesh.o: $O/generate_databases_par.o $O/fault_generate_databases.o
+
+$O/model_tomography.o: $O/generate_databases_par.o $O/tomography_par.o
+
+$O/generate_databases.o: $O/generate_databases_par.o $(ADIOS_PREOBJECTS)
+$O/save_arrays_solver_adios.o: $O/generate_databases_par.o $(ADIOS_PREOBJECTS)
+$O/save_moho_adios.o: $O/generate_databases_par.o $(ADIOS_PREOBJECTS)
+
+$O/generate_databases_adios_stubs.o: $(ADIOS_PREOBJECTS)
+
+###
### ADIOS compilation
###
diff --git a/src/meshfem3D/Makefile.in b/src/meshfem3D/Makefile.in
index f72164a..0e600b5 100644
--- a/src/meshfem3D/Makefile.in
+++ b/src/meshfem3D/Makefile.in
@@ -193,6 +193,15 @@ $L/libmeshfem.a: $(libmeshfem_a_OBJECTS)
#######################################
###
+### Module dependencies
+###
+
+$O/meshfem3D_adios_stubs.o: $O/adios_manager_stubs.shared_noadios.o
+$O/meshfem3D.o: $O/create_regions_mesh.o $O/read_mesh_parameter_file.o
+$O/save_databases.o: $O/safe_alloc_mod.shared.o $(ADIOS_PREOBJECTS)
+$O/create_regions_mesh.o: $(ADIOS_PREOBJECTS)
+
+###
### ADIOS compilation
###
diff --git a/src/specfem3D/Makefile.in b/src/specfem3D/Makefile.in
index b7c7454..7e79791 100644
--- a/src/specfem3D/Makefile.in
+++ b/src/specfem3D/Makefile.in
@@ -440,6 +440,74 @@ $L/libspecfem.a: $(libspecfem_a_OBJECTS)
####
###
+### Module dependencies
+###
+
+$O/check_stability.o: $O/specfem3D_par.o
+$O/compute_add_sources_acoustic.o: $O/specfem3D_par.o
+$O/compute_add_sources_poroelastic.o: $O/specfem3D_par.o
+$O/compute_add_sources_viscoelastic.o: $O/specfem3D_par.o
+$O/compute_boundary_kernel.o: $O/specfem3D_par.o
+$O/compute_forces_poroelastic_calling_routine.o: $O/specfem3D_par.o
+$O/compute_forces_poro_fluid_part.o: $O/specfem3D_par.o
+$O/compute_forces_poro_solid_part.o: $O/specfem3D_par.o
+$O/compute_kernels.o: $O/specfem3D_par.o
+$O/compute_stacey_viscoelastic.o: $O/specfem3D_par.o
+$O/create_color_image.o: $O/specfem3D_par.o
+$O/detect_mesh_surfaces.o: $O/specfem3D_par.o
+$O/fault_solver_common.o: $O/specfem3D_par.o
+$O/gravity_perturbation.o: $O/specfem3D_par.o
+$O/locate_source.o: $O/specfem3D_par.o
+$O/model_update.o: $O/specfem3D_par.o
+$O/pml_par.o: $O/specfem3D_par.o
+$O/setup_GLL_points.o: $O/specfem3D_par.o
+$O/setup_movie_meshes.o: $O/specfem3D_par.o
+$O/setup_sources_receivers.o: $O/specfem3D_par.o
+$O/specfem3D.o: $O/specfem3D_par.o
+$O/save_adjoint_kernels.o: $O/specfem3D_par.o
+$O/save_external_bin_m_up.o: $O/specfem3D_par.o
+$O/write_movie_output.o: $O/specfem3D_par.o
+$O/write_output_SU.o: $O/specfem3D_par.o
+$O/write_seismograms.o: $O/specfem3D_par.o
+
+$O/compute_coupling_acoustic_el.o: $O/pml_par.o
+$O/compute_coupling_viscoelastic_ac.o: $O/pml_par.o
+
+$O/compute_forces_acoustic_calling_routine.o: $O/specfem3D_par.o $O/pml_par.o
+$O/compute_forces_acoustic_Dev.o: $O/specfem3D_par.o $O/pml_par.o
+$O/compute_forces_acoustic_noDev.o: $O/specfem3D_par.o $O/pml_par.o
+$O/compute_total_energy.o: $O/specfem3D_par.o $O/pml_par.o
+$O/pml_allocate_arrays.o: $O/specfem3D_par.o $O/pml_par.o
+$O/pml_compute_accel_contribution.o: $O/specfem3D_par.o $O/pml_par.o
+$O/pml_compute_memory_variables.o: $O/specfem3D_par.o $O/pml_par.o
+$O/pml_output_VTKs.o: $O/specfem3D_par.o $O/pml_par.o
+$O/read_forward_arrays_adios.o: $O/specfem3D_par.o $O/pml_par.o
+$O/read_mesh_databases_adios.o: $O/specfem3D_par.o $O/pml_par.o
+$O/read_mesh_databases.o: $O/specfem3D_par.o $O/pml_par.o
+$O/update_displacement_scheme.o: $O/specfem3D_par.o $O/pml_par.o
+
+$O/fault_solver_dynamic.o: $O/specfem3D_par.o $O/fault_solver_common.o
+$O/fault_solver_kinematic.o: $O/specfem3D_par.o $O/fault_solver_common.o
+
+$O/compute_forces_viscoelastic_Dev.o: $O/specfem3D_par.o $O/pml_par.o $O/fault_solver_dynamic.o
+$O/compute_forces_viscoelastic_noDev.o: $O/specfem3D_par.o $O/pml_par.o $O/fault_solver_dynamic.o
+
+$O/compute_forces_viscoelastic_calling_routine.o: $O/specfem3D_par.o $O/pml_par.o $O/fault_solver_dynamic.o $O/fault_solver_kinematic.o
+
+$O/iterate_time.o: $O/specfem3D_par.o $O/gravity_perturbation.o
+
+$O/prepare_timerun.o: $O/specfem3D_par.o $O/pml_par.o $O/fault_solver_dynamic.o $O/fault_solver_kinematic.o $O/gravity_perturbation.o
+
+$O/initialize_simulation.o: $O/specfem3D_par.o $(ADIOS_PRESTUBS)
+$O/save_kernels_adios.o: $O/specfem3D_par.o $(ADIOS_PRESTUBS)
+
+$O/save_forward_arrays_adios.o: $O/specfem3D_par.o $O/pml_par.o $(ADIOS_PRESTUBS)
+
+$O/finalize_simulation.o: $O/specfem3D_par.o $O/pml_par.o $O/gravity_perturbation.o $(ADIOS_PRESTUBS)
+
+$O/specfem3D_adios_stubs.o: $O/adios_manager_stubs.shared_noadios.o
+
+###
### optimized flags (not dependent on values from mesher anymore)
###
#######################################
More information about the CIG-COMMITS
mailing list