-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.am
356 lines (311 loc) · 14.3 KB
/
Makefile.am
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
# -*- mode: makefile -*-
##
## This file is part of the Score-P software (http://www.score-p.org)
##
## Copyright (c) 2009-2013,
## RWTH Aachen University, Germany
##
## Copyright (c) 2009-2013,
## Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany
##
## Copyright (c) 2009-2013, 2019-2020,
## Technische Universitaet Dresden, Germany
##
## Copyright (c) 2009-2013,
## University of Oregon, Eugene, USA
##
## Copyright (c) 2009-2015, 2017, 2020, 2022-2023,
## Forschungszentrum Juelich GmbH, Germany
##
## Copyright (c) 2009-2013,
## German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany
##
## Copyright (c) 2009-2013,
## Technische Universitaet Muenchen, Germany
##
## This software may be modified and distributed under the terms of
## a BSD-style license. See the COPYING file in the package base
## directory for details.
##
## The SUBDIRS variable holds a list of subdirectories automake (recursivly)
## must build.
SUBDIRS = $(subdirs) $(ax_config_subdirs)
## Options passed to aclocal to specify local macro directories. Although
## ACLOCAL_AMFLAGS should be replaced by AC_CONFIG_MACRO_DIRS, aclocal-1.13.4
## doesn't honor the paths provided to AC_CONFIG_MACRO_DIRS. See
## https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21352
ACLOCAL_AMFLAGS = -I build-config/m4 -I build-config/common/m4
include build-config/common/Makefile.inc.am
include doc/Makefile.inc.am
include build-config/common/platforms.am
## Still, sometimes there are files that must be distributed, but which are not
## covered in the automatic rules. These files should be listed in the
## EXTRA_DIST variable. You can mention files from subdirectories in EXTRA_DIST.
##
## You can also mention a directory in EXTRA_DIST. In this case the entire
## directory will be recursively copied into the distribution. Please note that
## this will also copy everything in the directory, including CVS/RCS version
## control files. We recommend against using this feature.
EXTRA_DIST += $(srcdir)/CITATION.cff \
$(srcdir)/OPEN_ISSUES \
$(srcdir)/README.md \
$(srcdir)/THANKS \
$(srcdir)/build-config/downloads \
$(srcdir)/doc/doxygen-user/main_1.dox.in \
$(srcdir)/doc/doxygen-user/main_10.dox.in \
$(srcdir)/doc/doxygen-user/main_11.dox.in \
$(srcdir)/doc/doxygen-user/main_12.dox.in \
$(srcdir)/doc/doxygen-user/main_2.dox.in \
$(srcdir)/doc/doxygen-user/main_3.dox.in \
$(srcdir)/doc/doxygen-user/main_4.dox.in \
$(srcdir)/doc/doxygen-user/main_5.dox.in \
$(srcdir)/doc/doxygen-user/main_6.dox.in \
$(srcdir)/doc/doxygen-user/main_7.dox.in \
$(srcdir)/doc/doxygen-user/main_8.dox.in \
$(srcdir)/doc/doxygen-user/main_9.dox.in \
$(srcdir)/doc/doxygen-user/scorep_backend_info_help.dox.in \
$(srcdir)/doc/doxygen-user/scorep_backend_info_usage.dox.in \
$(srcdir)/doc/doxygen-user/scorep_config_usage.dox.in \
$(srcdir)/doc/doxygen-user/scorep_info_confvars_help.md \
$(srcdir)/doc/doxygen-user/scorep_info_ldaudit_help.md \
$(srcdir)/doc/doxygen-user/scorep_score_usage.dox.in \
$(srcdir)/doc/doxygen-user/scorep_usage.dox.in \
$(srcdir)/doc/images/project_logo.svg \
$(srcdir)/share/bg-gnu/README \
$(srcdir)/share/bg-gnu/platform-backend-user-provided \
$(srcdir)/share/bg-gnu/platform-frontend-user-provided \
$(srcdir)/share/bg-gnu/platform-mpi-user-provided \
$(srcdir)/share/bg-gnu/platform-shmem-user-provided \
$(srcdir)/share/scorep.errors \
$(srcdir)/src/adapters/include/SCOREP_Fortran_Wrapper.h \
$(srcdir)/src/config-custom.h \
$(srcdir)/src/config.h
if ! CROSS_BUILD
## This EXTRA_DIST is deliberately inside this conditional block
EXTRA_DIST += $(srcdir)/build-frontend/configure.ac \
$(srcdir)/build-frontend/aclocal.m4 \
$(srcdir)/build-frontend/Makefile.am \
$(srcdir)/build-frontend/Makefile.in \
$(srcdir)/build-frontend/configure \
$(srcdir)/src/config-frontend.h.in
endif
pkgdata_DATA = @[email protected] \
share/scorep.spec \
$(srcdir)/doc/doxygen-user/scorep_info_confvars_help.md \
$(srcdir)/doc/doxygen-user/scorep_info_ldaudit_help.md
doc_DATA = $(srcdir)/ChangeLog \
$(srcdir)/CITATION.cff \
$(srcdir)/COPYING \
$(srcdir)/OPEN_ISSUES
profiledocdir = $(docdir)/profile
dist_profiledoc_DATA = $(DOC_SRC_DIR)/profile/scorep_metrics.html \
$(DOC_SRC_DIR)/profile/Imbalance.png \
$(DOC_SRC_DIR)/profile/Imbal_Bypass.png \
$(DOC_SRC_DIR)/profile/Imbal_Overload.png \
$(DOC_SRC_DIR)/profile/Imbal_Single.png \
$(DOC_SRC_DIR)/profile/Imbal_Singularity.png \
$(DOC_SRC_DIR)/profile/Imbal_Underload.png \
$(DOC_SRC_DIR)/profile/OMPIdle.png \
$(DOC_SRC_DIR)/profile/OMPLimitedParallelism.png
install-data-local: doxygen-user-install
$(AM_V_at)$(MKDIR_P) $(DESTDIR)$(docdir)/profile; \
$(INSTALL_DATA) $(DOC_SRC_DIR)/images/project_logo.svg \
$(DESTDIR)$(docdir)/profile/project_logo.svg
install-data-hook:
$(AM_V_at)for target in $(TARGETS)""; do \
if test -n "$$target" && test -f $(pkgdatadir)/$$target/@[email protected]; then \
echo >> $(DESTDIR)$(pkgdatadir)/@[email protected] ; \
echo >> $(DESTDIR)$(pkgdatadir)/@[email protected] ; \
echo "=====[ Target: $$target ]====================" >> $(DESTDIR)$(pkgdatadir)/@[email protected] ; \
echo >> $(DESTDIR)$(pkgdatadir)/@[email protected] ; \
cat $(pkgdatadir)/$$target/@[email protected] >> $(DESTDIR)$(pkgdatadir)/@[email protected] ; \
fi \
done
uninstall-hook: doxygen-uninstall common-uninstall
dist-hook: doc/doxygen-user/main.dox doxygen-user-generate prohibit-make-dist append-to-citation-cff
prohibit-make-dist:
@$(am__tty_colors); \
if test "x$(PROHIBIT_MAKE_DIST)" != "x"; then \
echo "$${red}error: Cannot create distribution because of disabled components or use of$$std"; \
echo " $${red}external packages. Rerun configure with these flags to ensure a$$std"; \
echo " $${red}self-contained distribution:$$std"; \
echo; \
echo " $${blu}$(PROHIBIT_MAKE_DIST)$$std"; \
echo; \
exit 1; \
fi
clean-local: doxygen-user-clean
CLEANFILES += doc/doxygen-user/main.dox
if GIT_CONTROLLED
if CROSS_BUILD
INFO_TOOL_BUILD=build-frontend
else !CROSS_BUILD
INFO_TOOL_BUILD=build-backend
endif !CROSS_BUILD
scorep-info-command:
@$(am__cd) $(INFO_TOOL_BUILD) && $(MAKE) $(AM_MAKEFLAGS) scorep-info
CLEANFILES += doc/doxygen-user/scorep_info_usage.dox.in
doc/doxygen-user/scorep_info_usage.dox.in: scorep-info-command
$(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
./$(INFO_TOOL_BUILD)/scorep-info --help >$@
CLEANFILES += doc/doxygen-user/confvars.dox.in
doc/doxygen-user/confvars.dox.in: scorep-info-command
$(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
./$(INFO_TOOL_BUILD)/scorep-info config-vars --doxygen >$@
scorep-wrapper-command:
@$(am__cd) build-backend && $(MAKE) $(AM_MAKEFLAGS) scorep-wrapper
CLEANFILES += doc/doxygen-user/scorep_wrapper_usage.md
doc/doxygen-user/scorep_wrapper_usage.md: scorep-wrapper-command
$(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
./build-backend/scorep-wrapper --help | \
sed '$$d' >[email protected] && \
( \
sed -e '/^Wrapper Instances$$/q' [email protected]; \
echo "================="; \
echo ""; \
echo "The installation provides wrapper instances based on the compilers used to"; \
echo "build Score-P. Run \`scorep-wrapper --help\` to see a listing of all"; \
echo "default instances of the used Score-P installation."; \
echo ""; \
echo "Additional wrapper instances can be created with \`scorep-wrapper --create\`."; \
echo ""; \
sed -n -e '/^Examples$$/,$$p' [email protected]; \
) >$@ && \
doc/doxygen-user/main.dox: $(srcdir)/doc/doxygen-user/main_1.dox.in \
$(srcdir)/doc/doxygen-user/scorep_usage.dox.in \
$(srcdir)/doc/doxygen-user/main_2.dox.in \
$(srcdir)/doc/doxygen-user/scorep_config_usage.dox.in \
$(srcdir)/doc/doxygen-user/main_3.dox.in \
doc/doxygen-user/scorep_info_usage.dox.in \
$(srcdir)/doc/doxygen-user/main_4.dox.in \
$(srcdir)/doc/doxygen-user/scorep_score_usage.dox.in \
$(srcdir)/doc/doxygen-user/main_5.dox.in \
$(srcdir)/doc/doxygen-user/scorep_backend_info_usage.dox.in \
$(srcdir)/doc/doxygen-user/scorep_backend_info_help.dox.in \
$(srcdir)/doc/doxygen-user/main_6.dox.in \
$(srcdir)/doc/doxygen-user/scorep_info_confvars_help.md \
$(srcdir)/doc/doxygen-user/main_7.dox.in \
doc/doxygen-user/confvars.dox.in \
$(srcdir)/doc/doxygen-user/main_12.dox.in \
$(srcdir)/doc/doxygen-user/scorep_info_ldaudit_help.md \
$(srcdir)/doc/doxygen-user/main_8.dox.in \
doc/doxygen-user/scorep_wrapper_usage.md \
$(srcdir)/doc/doxygen-user/main_9.dox.in \
$(srcdir)/src/tools/libwrap_init/README.md \
$(srcdir)/doc/doxygen-user/main_10.dox.in \
$(srcdir)/doc/doxygen-user/main_11.dox.in
$(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
cat $^ >$@
else !GIT_CONTROLLED
doc/doxygen-user/main.dox:
$(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
touch $@
endif !GIT_CONTROLLED
if CROSS_BUILD
CHECK_TARGETS = \
build-frontend:check-serial \
build-frontend:check-omp \
build-backend:check-serial \
build-backend:check-omp
if HAVE_SCOREP_MPI
CHECK_TARGETS += \
build-mpi:check-mpi \
build-mpi:check-mpi-omp
endif HAVE_SCOREP_MPI
if HAVE_SCOREP_SHMEM
CHECK_TARGETS += \
build-shmem:check-shmem
endif HAVE_SCOREP_SHMEM
else !CROSS_BUILD
CHECK_TARGETS = \
build-backend:check-serial \
build-backend:check-omp
if HAVE_SCOREP_MPI
CHECK_TARGETS += \
build-mpi:check-mpi \
build-mpi:check-mpi-omp
endif HAVE_SCOREP_MPI
if HAVE_SCOREP_SHMEM
CHECK_TARGETS += \
build-shmem:check-shmem
endif HAVE_SCOREP_SHMEM
endif !CROSS_BUILD
check-local:
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
list='$(CHECK_TARGETS)'; for subcheck in $$list; do \
subdir=$${subcheck%:*}; \
target=$${subcheck#*:}; \
echo "Making $$target in $$subdir"; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$target) \
|| eval $$failcom; \
done; test -z "$$fail"
DISTCLEANFILES += \
src/utils/include/SCOREP_ErrorCodes.h \
src/utils/include/scorep_error_decls.gen.h
BUILT_SOURCES += \
src/utils/include/SCOREP_ErrorCodes.h \
src/utils/include/scorep_error_decls.gen.h
src/utils/include/SCOREP_ErrorCodes.h: $(srcdir)/share/scorep.errors
src/utils/include/scorep_error_decls.gen.h: $(srcdir)/share/scorep.errors
## bitten targets, intended to be used from bitten only
# Copy installcheck binaries, i.e., all files in a directory named bin
# under <builddir>/installcheck, to a persistent directory
# $(INSTALLCHECKS_PERSIST_DIR) (to be executed later on). On systems
# with low quota, disable copying of installcheck binaries by
# providing $(INSTALLCHECKS_PERSIST_DIR) = no form bitten-slave.
if HAVE_LOCKFILE_PROGS
# Save version, user can lock $(INSTALLCHECKS_PERSIST_DIR) to execute
# installchecks, new installchecks will not overwrite existing ones.
bitten-persist-installchecks:
installchecks_persist_dir="$(INSTALLCHECKS_PERSIST_DIR)"; \
if test "$${installchecks_persist_dir:-no}" != no ; then \
$(MKDIR_P) `dirname $(INSTALLCHECKS_PERSIST_DIR)`; \
lockfile-check $(INSTALLCHECKS_PERSIST_DIR); \
if test $$? -eq 0; then exit 0; fi; \
lockfile-create $(INSTALLCHECKS_PERSIST_DIR) || exit 1; \
lockfile-touch $(INSTALLCHECKS_PERSIST_DIR) & \
lockfile_touch_pid="$$!"; \
rm -rf $(INSTALLCHECKS_PERSIST_DIR); \
$(MKDIR_P) $(INSTALLCHECKS_PERSIST_DIR) || exit 1; \
cd installcheck || exit 1; \
find . -type d -name bin -exec cp --parents -r '{}' $(INSTALLCHECKS_PERSIST_DIR)/ \; || exit 1; \
cd .. || exit 1; \
echo $(REVISION) > $(INSTALLCHECKS_PERSIST_DIR)/REVISION || exit 1; \
kill "$${lockfile_touch_pid}"; \
lockfile-remove $(INSTALLCHECKS_PERSIST_DIR) || exit 1; \
fi
else !HAVE_LOCKFILE_PROGS
# Unsafe version, user has to take care that no bitten-slave will
# override $(INSTALLCHECKS_PERSIST_DIR) while processing inside
# $(INSTALLCHECKS_PERSIST_DIR).
bitten-persist-installchecks:
installchecks_persist_dir="$(INSTALLCHECKS_PERSIST_DIR)"; \
if test "$${installchecks_persist_dir:-no}" != no ; then \
rm -rf $(INSTALLCHECKS_PERSIST_DIR); \
$(MKDIR_P) $(INSTALLCHECKS_PERSIST_DIR) || exit 1; \
cd installcheck || exit 1; \
find . -type d -name bin -exec cp --parents -r '{}' $(INSTALLCHECKS_PERSIST_DIR)/ \; || exit 1; \
cd .. || exit 1; \
echo $(REVISION) > $(INSTALLCHECKS_PERSIST_DIR)/REVISION || exit 1; \
fi
endif !HAVE_LOCKFILE_PROGS
include doc/examples/Makefile.inc.am
# Temporary fix for make distcheck failure introduced by r4404, see
# also configure.ac. Obsolete once #741 is completed.
DISTCHECK_CONFIGURE_FLAGS = triggered_by_make_distcheck=yes
# On MIC, install config.summary also in $pkgdatadir/mic
if PLATFORM_MIC
micpkgdatadir = $(pkgdatadir)/mic
micpkgdata_DATA = @[email protected]
else !PLATFORM_MIC
TARGETS = mic
endif !PLATFORM_MIC
# non-color automake only provides $(am__tty_colors) if tests are in use
TESTS =