@@ -31,43 +31,29 @@ USESUBDIRS = @USESUBDIRS@
31
31
NVCC = @NVCC@
32
32
GPUMPICOMPILER = @GPUMPICOMPILER@
33
33
34
-
35
34
INCLUDES = @INCLUDES@
36
35
LINK = $(CCLD ) -o $@ ${LDFLAGS}
37
- LINKLIBS = ${top_builddir}/linalg/liblinalg.a \
38
- ${top_builddir}/solver/libsolver.a ${top_builddir}/io/libio.a \
39
- ${top_builddir}/buffers/libbuffers.a $(top_builddir ) /cu/libcu.a
40
36
41
37
COMPILE = ${CC} ${DEFS} ${INCLUDES} -o $@ ${CFLAGS}
42
38
43
- SMODULES = Hopping_Matrix_nocom tm_times_Hopping_Matrix Hopping_Matrix tm_operators tm_sub_Hopping_Matrix
39
+ SMODULES =
44
40
45
41
MODULES = read_input gamma hybrid_update measure_gauge_action start \
46
42
expo get_staples update_backward_gauge \
47
43
measure_rectangles get_rectangle_staples \
48
44
test/check_geometry test/check_xchange \
49
- test/overlaptests clover clover_leaf \
45
+ test/overlaptests \
50
46
invert_eo invert_doublet_eo update_gauge \
51
47
polyakov_loop getopt sighandler reweighting_factor \
52
48
source_generation boundary update_tm ranlxd \
53
- mpi_init linsolve deriv_Sb deriv_Sb_D_psi ranlxs \
54
- xchange_deri geometry_eo invert_overlap \
55
- init_moment_field init_gauge_tmp \
56
- xchange_field xchange_gauge prepare_source \
57
- init_gauge_field init_geometry_indices init_spinor_field \
58
- init_dirac_halfspinor xchange_halffield \
59
- Nondegenerate_Matrix nddetratio_monomial \
60
- chebyshev_polynomial_nd Ptilde_nd \
61
- init_chi_spinor_field reweighting_factor_nd \
62
- init_bispinor_field eigenvalues_bi D_psi \
63
- xchange_lexicfield xchange_2fields online_measurement \
64
- monomial det_monomial detratio_monomial update_momenta \
65
- integrator gauge_monomial ndpoly_monomial phmc \
66
- clover_trlog_monomial cloverdet_monomial cloverdetratio_monomial \
67
- little_D block Dov_psi operator poly_monomial measurements pion_norm Dov_proj \
68
- xchange_field_tslice temporalgauge spinor_fft X_psi P_M_eta \
69
- xchange_jacobi jacobi init_jacobi_field \
70
- fatal_error invert_clover_eo gettime @SPI_FILES@ init_omp_accumulators
49
+ mpi_init deriv_Sb deriv_Sb_D_psi ranlxs \
50
+ geometry_eo invert_overlap \
51
+ prepare_source chebyshev_polynomial_nd Ptilde_nd \
52
+ reweighting_factor_nd \
53
+ online_measurement update_momenta integrator phmc \
54
+ little_D block operator measurements pion_norm \
55
+ temporalgauge spinor_fft X_psi P_M_eta \
56
+ jacobi fatal_error invert_clover_eo gettime @SPI_FILES@
71
57
72
58
# # the GPU modules (all .cu files in $GPUDIR)
73
59
GPUSOURCES := $(wildcard $(srcdir ) /$(GPUDIR ) /* .cu)
@@ -76,7 +62,6 @@ GPUOBJECTS := $(patsubst $(srcdir)/$(GPUDIR)/%.cu, $(GPUDIR)/%.o, $(GPUSOURCES))
76
62
# GPUSOURCES_C := $(wildcard $(srcdir)/$(GPUDIR)/*.c)
77
63
# GPUOBJECTS_C := $(patsubst $(srcdir)/$(GPUDIR)/%.c, $(GPUDIR)/%.o, $(GPUSOURCES_C))
78
64
79
-
80
65
NOOPTMOD = test/check_xchange test/check_geometry
81
66
82
67
PROGRAMS = hmc_tm benchmark invert gen_sources \
@@ -88,18 +73,15 @@ SUBDIRS = ${USESUBDIRS}
88
73
# delete the default suffix rules
89
74
.SUFFIXES :
90
75
91
- all : Makefile all-recursive dep hmc_tm invert
76
+ all : Makefile dep $( SUBDIRS ) hmc_tm invert benchmark
92
77
93
- # ifneq (,$(findstring lapack,${LIBS}))
94
- # all: Makefile all-recursive dep hmc_tm invert
95
- # else
96
- # all: Makefile all-recursive dep hmc_tm invert
97
- # endif
78
+ $(SUBDIRS ) :
79
+ $(MAKE ) --directory=$@
98
80
99
81
# run the GIT-VERSION-GEN script to generate version information in git_hash.h
100
82
# making sure that we run in the correct directory
101
83
${top_srcdir}/git_hash.h :
102
- @cd @srcdir@ && sh GIT-VERSION-GEN
84
+ @ ( cd @srcdir@ && sh GIT-VERSION-GEN )
103
85
104
86
-include $(addsuffix .d,$(ALLOBJ ) )
105
87
@@ -116,9 +98,6 @@ libhmc.a: ${addsuffix .o, ${MODULES} ${SMODULES}} Makefile
116
98
@$(RANLIB ) libhmc.a
117
99
@cp libhmc.a ${top_builddir} /lib/libhmc.a
118
100
119
- # ${addsuffix .o, ${ALLOBJ}}: %.o: ${srcdir}/%.c %.d Makefile $(abs_top_builddir)/config.h
120
- # ${COMPILE} ${OPTARGS} -c $<
121
-
122
101
$(addsuffix .o,$(filter-out ${NOOPTMOD},${MODULES}) ) : % .o: ${srcdir}/% .c % .d Makefile $(abs_top_builddir ) /config.h
123
102
${COMPILE} ${OPTARGS} -c $<
124
103
@@ -132,7 +111,7 @@ ${addsuffix .o, ${SMODULES}}: %.o: ${srcdir}/%.c %.d Makefile $(abs_top_builddir
132
111
${addsuffix .o, ${PROGRAMS}} : % .o: ${srcdir}/% .c % .d Makefile $(abs_top_builddir ) /config.h ${top_srcdir}/git_hash.h
133
112
${COMPILE} ${OPTARGS} -c $<
134
113
135
- ${PROGRAMS} : % : % .o libhmc.a all-recursive
114
+ ${PROGRAMS} : % : % .o libhmc.a $( SUBDIRS )
136
115
${LINK} $@ .o $(GPUOBJECTS ) $(GPUOBJECTS_C ) $(LIBS )
137
116
138
117
# The rules for unit tests are kept in a separate file for tidyness
@@ -162,15 +141,13 @@ compile-clean: compile-clean-recursive Makefile
162
141
rm -f * .o * .d test/* .o test/* .d tests/* .o tests/* .d
163
142
164
143
clean : clean-recursive Makefile
165
- rm -f hmc_tm invert * .o * .d test/* .o test/* .d tests/* .o tests/* .d
144
+ rm -f benchmark hmc_tm invert * .o * .d test/* .o test/* .d tests/* .o tests/* .d
166
145
167
146
distclean : distclean-recursive Makefile
168
- rm -f hmc_tm hybrid * .o * .d * ~ Makefile config.log config.status fixed_volume.h
147
+ rm -f benchmark hmc_tm invert * .o * .d * ~ Makefile config.log config.status fixed_volume.h
169
148
rm -f config.h
170
149
171
- .PHONY : all ${top_srcdir}/git_hash.h clean compile-clean distclean dep install \
172
- $(PROGRAMS ) all-recursive \
173
- all-debug-recursive all-profile-recursive \
150
+ .PHONY : all ${SUBDIRS} ${top_srcdir}/git_hash.h clean compile-clean distclean dep install \
151
+ all-recursive all-debug-recursive all-profile-recursive \
174
152
clean-recursive distclean-recursive \
175
- compile-clean-recursive $(LINKLIBS ) \
176
- tests libhmc.a
153
+ compile-clean-recursive
0 commit comments