-
Notifications
You must be signed in to change notification settings - Fork 0
/
bootstrap
executable file
·130 lines (109 loc) · 3.48 KB
/
bootstrap
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
#!/bin/sh
## Make ignores the next lines, but shell not -*- mode: makefile -*- \
argv0=$0; \
exec make -f "$argv0" "$@"
AUTORECONF = autoreconf
AUTORECONFFLAGS = -Wall --no-recursive
LOCAL_CONFIGURES = \
configure \
build-backend/configure \
build-frontend/configure \
build-mpi/configure \
build-shmem/configure \
build-gcc-plugin/configure \
build-llvm-plugin/configure \
build-xray-plugin/configure \
build-score/configure \
build-libwrap/configure
EXTERNAL_COMPONENTS = \
vendor/opari2 \
vendor/otf2 \
vendor/cubelib\
vendor/cubew
.PHONY: all local $(LOCAL_CONFIGURES) $(EXTERNAL_COMPONENTS) clean clean-local clean-externals
all: local $(EXTERNAL_COMPONENTS)
local: $(LOCAL_CONFIGURES)
$(LOCAL_CONFIGURES): clean-local
$(EXTERNAL_COMPONENTS):
@test -x $@/bootstrap && $(MAKE) -C $@ -f bootstrap AUTORECONF=$(AUTORECONF) || :
configure:
$(AUTORECONF) --install $(AUTORECONFFLAGS) .
# automake needs src/config-backend-for-frontend.h.in, but this is generated,
# out of the src/config-backend.h.in which itself is generated by autoheader
# to break this circle, touch an emtpy file
build-backend/configure: configure
@: >src/config-backend-for-frontend.h.in
cd build-backend; $(AUTORECONF) --install $(AUTORECONFFLAGS)
@echo "scorep-autoheader: \`src/config-backend-for-frontend.h.in' is created"; \
build-config/common/generate-config-backend-for-frontend.sh \
src/config-backend.h.in \
>src/config-backend-for-frontend.h.in
build-frontend/configure: build-backend/configure
cd build-frontend; $(AUTORECONF) $(AUTORECONFFLAGS)
build-mpi/configure: build-backend/configure
cd build-mpi; $(AUTORECONF) $(AUTORECONFFLAGS)
build-shmem/configure: build-backend/configure
cd build-shmem; $(AUTORECONF) $(AUTORECONFFLAGS)
build-gcc-plugin/configure: build-backend/configure
cd build-gcc-plugin; $(AUTORECONF) $(AUTORECONFFLAGS)
build-llvm-plugin/configure: build-backend/configure
cd build-llvm-plugin; $(AUTORECONF) $(AUTORECONFFLAGS)
build-xray-plugin/configure: build-backend/configure
cd build-xray-plugin; $(AUTORECONF) $(AUTORECONFFLAGS)
build-score/configure: build-backend/configure
cd build-score; $(AUTORECONF) $(AUTORECONFFLAGS)
build-libwrap/configure: build-backend/configure
cd build-libwrap; $(AUTORECONF) $(AUTORECONFFLAGS)
clean: clean-local clean-externals
clean-externals:
@list="$(EXTERNAL_COMPONENTS)"; for build in $$list; do \
test -x $$build/bootstrap && $(MAKE) -C $$build -f bootstrap clean || :; \
done
clean_files = \
autom4te.cache/ \
configure \
aclocal.m4 \
Makefile.in \
Makefile \
user_provided_configure_args \
confdefs.h \
config.log \
config.status \
config.summary* \
scorep.summary \
libtool \
.deps/ \
.libs/
sub_builds = \
backend \
mpi \
shmem \
frontend \
score \
gcc-plugin \
llvm-plugin \
xray-plugin \
libwrap
config_headers = \
backend \
backend-mpi \
backend-shmem \
frontend \
backend-for-frontend \
score \
gcc-plugin \
llvm-plugin \
xray-plugin \
libwrap
clean-local:
@rm -rf $(clean_files)
@cd build-config; rm -f compile config.sub install-sh config.guess depcomp ltmain.sh missing ylwrap ar-lib test-driver
@cd build-config/m4; rm -f libtool.m4 ltsugar.m4 lt~obsolete.m4 ltoptions.m4 ltversion.m4
@for build in $(sub_builds); do \
( cd build-$$build; rm -rf $(clean_files); ); \
done
@rm -f build-config/REVISION
@for header in $(config_headers); do \
rm -f src/config-$$header.h.in src/config-$$header.h; \
done
@rm -f src/config-common.h