Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix make dist.
[simgrid.git] / doc / gtut-files / Makefile
1 # This works mainly on my box for now
2 export LD_LIBRARY_PATH=$(GRAS_ROOT)/lib
3 GRAS_STUB_GENERATOR=$(GRAS_ROOT)/bin/gras_stub_generator
4
5 all: 01-bones.output 02-simple.output 03-args.output 04-callback.output \
6      05-globals.output 06-logs.output 07-timers.output 08-exceptions.output \
7      09-simpledata.output 10-rpc.output 11-explicitwait.output
8
9 veryclean: clean
10         rm *.output*
11
12 # Lesson 01: simple bones of project
13 ########################################
14
15 01-bones.output: 01-bones_client 01-bones_server 01-bones_simulator
16         echo '$$ ./test_client'                           > $@ 
17         ./01-bones_client                                 >> $@ 2>&1
18         echo '$$ ./test_server'                          >> $@
19         ./01-bones_server                                 >> $@ 2>&1
20         echo '$$'                                        >> $@ 
21         echo '$$ ./test_simulator platform.xml test.xml' >> $@ 
22         ./01-bones_simulator gtut-platform.xml test.xml   >> $@ 2>&1
23         echo '$$'                                        >> $@ 
24
25 01-bones_client 01-bones_server 01-bones_simulator: _01-bones_client.c _01-bones_server.c _01-bones_simulator.c
26         make -f 01-bones.mk
27
28 _01-bones_client.c _01-bones_server.c _01-bones_simulator.c: 01-bones.c test.xml
29         $(GRAS_STUB_GENERATOR) 01-bones test.xml >/dev/null
30
31 clean::
32         if [ -e 01-bones.mk ] ; then make -f 01-bones.mk clean; fi
33         rm -f _01-bones_client.c _01-bones_server.c _01-bones_simulator.c 01-bones.trace 01-bones.mk
34
35 # Lesson 02: simple message exchange
36 ########################################
37
38 02-simple.output: 02-simple_client 02-simple_server 02-simple_simulator
39         echo '$$ ./test_simulator platform.xml test.xml'  > $@
40         ./02-simple_simulator gtut-platform.xml test.xml  >> $@ 2>&1
41         echo '$$'                                        >> $@ 
42
43 02-simple_client 02-simple_server 02-simple_simulator: _02-simple_client.c _02-simple_server.c _02-simple_simulator.c
44         make -f 02-simple.mk
45
46 _02-simple_client.c _02-simple_server.c _02-simple_simulator.c: 02-simple.c test.xml
47         $(GRAS_STUB_GENERATOR) 02-simple test.xml >/dev/null
48
49 clean::
50         if [ -e 02-simple.mk ] ; then make -f 02-simple.mk clean; fi
51         rm -f _02-simple_client.c _02-simple_server.c _02-simple_simulator.c 02-simple.trace 02-simple.mk
52
53 # Lesson 03: passing args to processes
54 ########################################
55
56 03-args.output: 03-args_client 03-args_server 03-args_simulator
57         echo '$$ ./test_server 12345 & ./test_client 127.0.0.1 12345'  > $@ 
58         ./03-args_server 12345                                         >> $@ 2>&1&
59         ./03-args_client 127.0.0.1 12345                               >> $@ 2>&1
60         sleep 1
61         echo '$$'                                                     >> $@
62         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
63         ./03-args_simulator gtut-platform.xml 03-args.xml               >> $@ 2>&1
64         echo '$$'                                                     >> $@ 
65         killall 03-args_server 03-args_client 2>/dev/null || true
66
67 03-args_client 03-args_server 03-args_simulator: _03-args_client.c _03-args_server.c _03-args_simulator.c
68         make -f 03-args.mk
69
70 _03-args_client.c _03-args_server.c _03-args_simulator.c: 03-args.c 03-args.xml
71         $(GRAS_STUB_GENERATOR) 03-args 03-args.xml >/dev/null
72
73 clean::
74         if [ -e 03-args.mk ] ; then make -f 03-args.mk clean; fi
75         rm -f _03-args_client.c _03-args_server.c _03-args_simulator.c 03-args.trace 03-args.mk
76
77 # Lesson 4: callbacks
78 ########################################
79
80 04-callback.output: 04-callback_client 04-callback_server 04-callback_simulator
81         echo '$$ ./test_server 23451 & ./test_client 127.0.0.1 23451'  > $@ 
82         ./04-callback_server 23451                                     >> $@ 2>&1&
83         ./04-callback_client 127.0.0.1 23451                           >> $@ 2>&1
84         sleep 1
85         echo '$$'                                                     >> $@
86         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
87         ./04-callback_simulator gtut-platform.xml 03-args.xml           >> $@ 2>&1
88         echo '$$'                                                     >> $@
89         killall 04-callback_server 04-callback_client 2>/dev/null || true
90
91 04-callback_client 04-callback_server 04-callback_simulator: _04-callback_client.c _04-callback_server.c _04-callback_simulator.c
92         make -f 04-callback.mk
93
94 _04-callback_client.c _04-callback_server.c _04-callback_simulator.c: 04-callback.c 03-args.xml
95         $(GRAS_STUB_GENERATOR) 04-callback 03-args.xml >/dev/null
96
97 clean::
98         if [ -e 04-callback.mk ] ; then make -f 04-callback.mk clean; fi
99         rm -f _04-callback_client.c _04-callback_server.c _04-callback_simulator.c 04-callback.trace 04-callback.mk
100
101 # Lesson 5: globals
102 ########################################
103
104 05-globals.output: 05-globals_client 05-globals_server 05-globals_simulator
105         echo '$$ ./test_server 12345 & ./test_client 127.0.0.1 12345'  > $@ 
106         ./05-globals_server 12345                                      >> $@ 2>&1&
107         ./05-globals_client 127.0.0.1 12345                            >> $@ 2>&1
108         sleep 1
109         echo '$$'                                                     >> $@
110         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
111         ./05-globals_simulator gtut-platform.xml 03-args.xml            >> $@ 2>&1
112         echo '$$'                                                     >> $@ 
113         killall 05-globals_server 05-globals_client 2>/dev/null || true
114
115 05-globals_client 05-globals_server 05-globals_simulator: _05-globals_client.c _05-globals_server.c _05-globals_simulator.c
116         make -f 05-globals.mk
117
118 _05-globals_client.c _05-globals_server.c _05-globals_simulator.c: 05-globals.c 03-args.xml
119         $(GRAS_STUB_GENERATOR) 05-globals 03-args.xml >/dev/null
120
121 clean::
122         if [ -e 05-globals.mk ] ; then make -f 05-globals.mk clean; fi
123         rm -f _05-globals_client.c _05-globals_server.c _05-globals_simulator.c 05-globals.trace 05-globals.mk
124
125 # Lesson 6: logs
126 ########################################
127
128 06-logs.output: 06-logs_client 06-logs_server 06-logs_simulator \
129         06-logs.output.fmt 06-logs.output.fmt-bt 06-logs.output.verbose 06-logs.output.error
130         echo '$$ ./test_server 12345 & ./test_client 127.0.0.1 12345'  > $@ 
131         ./06-logs_server 12345                             2>&1 |sed s/06-logs/test/  >> $@ 2>&1&
132         ./06-logs_client 127.0.0.1 12345                   2>&1 |sed s/06-logs/test/  >> $@ 2>&1
133         sleep 1
134         echo '$$'                                                     >> $@
135         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
136         ./06-logs_simulator gtut-platform.xml 03-args.xml   2>&1 |sed s/06-logs/test/  >> $@ 2>&1
137         echo '$$'                                                     >> $@ 
138         killall 06-logs_server 06-logs_client 2>/dev/null || true
139
140 06-logs.output.fmt: 06-logs_client 06-logs_server 06-logs_simulator 
141         echo '$$ ./test_server 12345 --log=test.fmt:%m%n & ./test_client 127.0.0.1 12345 --log=test.fmt:%m%n'  > $@
142         ./06-logs_server 12345  --log=test.fmt:%m%nn          2>&1 |sed s/06-logs/test/  >> $@ 2>&1&
143         ./06-logs_client 127.0.0.1 12345 --log=test.fmt:%m%n 2>&1 |sed s/06-logs/test/  >> $@ 2>&1
144         sleep 1
145         echo '$$'                                                     >> $@
146         echo '$$ ./test_simulator platform.xml test.xml --log=test.fmt:%m%n'              >> $@
147         ./06-logs_simulator gtut-platform.xml 03-args.xml  --log=test.fmt:%m%n 2>&1 |sed s/06-logs/test/  >> $@ 2>&1
148         echo '$$'                                                     >> $@ 
149         killall 06-logs_server 06-logs_client 2>/dev/null || true
150
151 06-logs.output.fmt-bt: 06-logs_client 06-logs_server 06-logs_simulator 
152         echo '$$ ./test_server 12345 --log=test.fmt:"[%r] %m%n%b%n%n" & ./test_client 127.0.0.1 12345 --log=test.fmt:"[%r] %m%n%b%n%n"'  > $@
153         ./06-logs_server 12345  --log=test.fmt:[%r]%m%n%b%n%n          2>&1 |sed s/06-logs/test/  >> $@ 2>&1&
154         ./06-logs_client 127.0.0.1 12345 --log=test.fmt:[%r]%m%n%b%n%n 2>&1 |sed s/06-logs/test/  >> $@ 2>&1
155         sleep 1
156         echo '$$'                                                     >> $@
157         echo '$$ ./test_simulator platform.xml test.xml --log=test.fmt:[%r]%m%n%b%n%n'              >> $@
158         ./06-logs_simulator gtut-platform.xml 03-args.xml  --log=test.fmt:[%r]%m%n%b%n%n 2>&1 |sed s/06-logs/test/  >> $@ 2>&1
159         echo '$$'                                                     >> $@ 
160         killall 06-logs_server 06-logs_client 2>/dev/null || true
161
162 06-logs.output.verbose: 06-logs_client 06-logs_server 06-logs_simulator
163         echo '$$ ./test_server 12345 --log=test.thres:verbose & ./test_client 127.0.0.1 12345 --log=test.thres:verbose'  > $@
164         ./06-logs_server 12345 --log=test.thres:verbose                            2>&1 |sed s/06-logs/test/  >> $@ 2>&1&
165         ./06-logs_client 127.0.0.1 12345 --log=test.thres:verbose                  2>&1 |sed s/06-logs/test/  >> $@ 2>&1
166         sleep 1
167         echo '$$'                                                     >> $@
168         echo '$$ ./test_simulator platform.xml test.xml --log=test.thres:verbose'              >> $@
169         ./06-logs_simulator gtut-platform.xml 03-args.xml --log=test.thres:verbose  2>&1 |sed s/06-logs/test/  >> $@ 2>&1
170         echo '$$'                                                     >> $@ 
171         killall 06-logs_server 06-logs_client 2>/dev/null || true
172
173 06-logs.output.error: 06-logs_client 06-logs_server 06-logs_simulator
174         echo '$$ ./test_server 12345 --log=root.thres:error & ./test_client 127.0.0.1 12345 --log=root.thres:error'  > $@
175         ./06-logs_server 12345 --log=root.thres:error                            2>&1 |sed s/06-logs/test/  >> $@ 2>&1&
176         ./06-logs_client 127.0.0.1 12345 --log=root.thres:error                  2>&1 |sed s/06-logs/test/  >> $@ 2>&1
177         sleep 1
178         echo '$$'                                                     >> $@
179         echo '$$ ./test_simulator platform.xml test.xml --log=root.thres:error'              >> $@
180         ./06-logs_simulator gtut-platform.xml 03-args.xml --log=root.thres:error  2>&1 |sed s/06-logs/test/  >> $@ 2>&1
181         echo '$$'                                                     >> $@ 
182         killall 06-logs_server 06-logs_client 2>/dev/null || true
183
184
185 06-logs_client 06-logs_server 06-logs_simulator: _06-logs_client.c _06-logs_server.c _06-logs_simulator.c
186         make -f 06-logs.mk
187
188 _06-logs_client.c _06-logs_server.c _06-logs_simulator.c: 06-logs.c 03-args.xml
189         $(GRAS_STUB_GENERATOR) 06-logs 03-args.xml >/dev/null
190
191 clean::
192         if [ -e 06-logs.mk ] ; then make -f 06-logs.mk clean; fi
193         rm -f _06-logs_client.c _06-logs_server.c _06-logs_simulator.c 06-logs.trace 06-logs.mk
194
195
196 # Lesson 7: timers
197 ########################################
198
199 07-timers.output: 07-timers_client 07-timers_server 07-timers_simulator
200         echo '$$ ./test_server 12345 & ./test_client 127.0.0.1 12345'  > $@ 
201         ./07-timers_server 12345                             2>&1 |sed s/07-timers/test/  >> $@ 2>&1&
202         ./07-timers_client 127.0.0.1 12345                   2>&1 |sed s/07-timers/test/  >> $@ 2>&1
203         sleep 1
204         echo '$$'                                                     >> $@
205         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
206         ./07-timers_simulator gtut-platform.xml 03-args.xml   2>&1 |sed s/07-timers/test/  >> $@ 2>&1
207         echo '$$'                                                     >> $@ 
208         killall 07-timers_server 07-timers_client 2>/dev/null || true
209
210 07-timers_client 07-timers_server 07-timers_simulator: _07-timers_client.c _07-timers_server.c _07-timers_simulator.c
211         make -f 07-timers.mk
212
213 _07-timers_client.c _07-timers_server.c _07-timers_simulator.c: 07-timers.c 03-args.xml
214         $(GRAS_STUB_GENERATOR) 07-timers 03-args.xml >/dev/null
215
216 clean::
217         if [ -e 07-timers.mk ] ; then make -f 07-timers.mk clean; fi
218         rm -f _07-timers_client.c _07-timers_server.c _07-timers_simulator.c 07-timers.trace 07-timers.mk
219
220 # Lesson 8: exceptions
221 ########################################
222
223 08-exceptions.output: 08-exceptions_client 08-exceptions_server 08-exceptions_simulator
224         echo '$$ ./test_server & ./test_client 127.0.0.1 '             > $@
225         ./08-exceptions_server                                   2>&1 |sed s/08-exceptions/test/  >> $@ 2>&1&
226         ./08-exceptions_client 127.0.0.1                         2>&1 |sed s/08-exceptions/test/  >> $@ 2>&1
227         sleep 1
228         echo '$$'                                                     >> $@
229         echo '$$ ./test_server --cheat & ./test_client 127.0.0.1 '    >> $@
230         ./08-exceptions_server --cheat                           2>&1 |sed s/08-exceptions/test/  >> $@ 2>&1&
231         ./08-exceptions_client 127.0.0.1                         2>&1 |sed s/08-exceptions/test/  >> $@ 2>&1
232         sleep 1
233         echo '$$ killall test_server'                                 >> $@
234         killall 08-exceptions_server 08-exceptions_client 2>/dev/null || true
235         echo '$$'                                                     >> $@
236         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
237         ./08-exceptions_simulator gtut-platform.xml 03-args.xml   2>&1 |sed s/08-exceptions/test/  >> $@ 2>&1
238         echo '$$'                                                     >> $@ 
239
240 08-exceptions_client 08-exceptions_server 08-exceptions_simulator: _08-exceptions_client.c _08-exceptions_server.c _08-exceptions_simulator.c
241         make -f 08-exceptions.mk
242
243 _08-exceptions_client.c _08-exceptions_server.c _08-exceptions_simulator.c: 08-exceptions.c 03-args.xml
244         $(GRAS_STUB_GENERATOR) 08-exceptions 03-args.xml >/dev/null
245
246 clean::
247         if [ -e 08-exceptions.mk ] ; then make -f 08-exceptions.mk clean; fi
248         rm -f _08-exceptions_client.c _08-exceptions_server.c _08-exceptions_simulator.c 08-exceptions.trace 08-exceptions.mk 08-exceptions.output
249
250 # Lesson 9: simple data exchange
251 ########################################
252 09-datatype-dump: 09-datatype-dump.c
253         gcc -I$(GRAS_ROOT)/include -lgras -L$(GRAS_ROOT)/lib $^ -o $@ 
254
255 clean::
256         rm -f 09-datatype-dump.o 09-datatype-dump
257
258 09-simpledata.output: 09-simpledata_client 09-simpledata_server 09-simpledata_simulator
259         echo '$$ ./test_server 12345 & ./test_client 127.0.0.1 12345'  > $@ 
260         ./09-simpledata_server 12345                             2>&1 |sed s/09-simpledata/test/  >> $@ 2>&1&
261         ./09-simpledata_client 127.0.0.1 12345                   2>&1 |sed s/09-simpledata/test/  >> $@ 2>&1
262         sleep 1
263         echo '$$'                                                     >> $@
264         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
265         ./09-simpledata_simulator gtut-platform.xml 03-args.xml   2>&1 |sed s/09-simpledata/test/  >> $@ 2>&1
266         echo '$$'                                                     >> $@ 
267         killall 09-simpledata_server 09-simpledata_client 2>/dev/null || true
268
269 09-simpledata_client 09-simpledata_server 09-simpledata_simulator: _09-simpledata_client.c _09-simpledata_server.c _09-simpledata_simulator.c
270         make -f 09-simpledata.mk
271
272 _09-simpledata_client.c _09-simpledata_server.c _09-simpledata_simulator.c: 09-simpledata.c 03-args.xml
273         $(GRAS_STUB_GENERATOR) 09-simpledata 03-args.xml >/dev/null
274
275 clean::
276         if [ -e 09-simpledata.mk ] ; then make -f 09-simpledata.mk clean; fi
277         rm -f _09-simpledata_client.c _09-simpledata_server.c _09-simpledata_simulator.c 09-simpledata.trace 09-simpledata.mk
278
279 # Lesson 10: RPC
280 ########################################
281 10-rpc.output: 10-rpc_client 10-rpc_server 10-rpc_simulator
282         echo '$$ ./test_server & ./test_client 127.0.0.1 '             > $@
283         ./10-rpc_server 12345                             2>&1 |sed s/10-rpc/test/  >> $@ 2>&1&
284         ./10-rpc_client 127.0.0.1 12345                   2>&1 |sed s/10-rpc/test/  >> $@ 2>&1
285         sleep 1
286         echo '$$'                                                     >> $@
287         echo '$$ killall test_server'                                 >> $@
288         killall 10-rpc_server 10-rpc_client 2>/dev/null || true
289         echo '$$'                                                     >> $@
290         echo '$$ ./test_simulator platform.xml test.xml'              >> $@
291         ./10-rpc_simulator gtut-platform.xml 03-args.xml   2>&1 |sed s/10-rpc/test/  >> $@ 2>&1
292         echo '$$'                                                     >> $@ 
293
294 10-rpc_client 10-rpc_server 10-rpc_simulator: _10-rpc_client.c _10-rpc_server.c _10-rpc_simulator.c
295         make -f 10-rpc.mk
296
297 _10-rpc_client.c _10-rpc_server.c _10-rpc_simulator.c: 10-rpc.c 03-args.xml
298         $(GRAS_STUB_GENERATOR) 10-rpc 03-args.xml >/dev/null
299
300 clean::
301         if [ -e 10-rpc.mk ] ; then make -f 10-rpc.mk clean; fi
302         rm -f _10-rpc_client.c _10-rpc_server.c _10-rpc_simulator.c 10-rpc.trace 10-rpc.mk
303
304
305 # Lesson 11: Explicit wait
306 ########################################
307 11-explicitwait.output: 11-explicitwait_client 11-explicitwait_server 11-explicitwait_simulator
308         (echo '$$ ./test_server & ./test_client 127.0.0.1 12345 & ./test_client 127.0.0.1 12345 '; \
309          ./11-explicitwait_client 127.0.0.1 12345            & \
310          ./11-explicitwait_client 127.0.0.1 12345            & \
311          ./11-explicitwait_server 12345                        \
312         ) 2>&1 | sed s/11-explicitwait/test/ > $@
313         sleep 1
314         echo '$$'                                                     >> $@
315         killall 11-explicitwait_server 11-explicitwait_client 2>/dev/null || true
316         echo '$$'                                                     >> $@
317         echo '$$ ./test_simulator platform-3nodes.xml test.xml'              >> $@
318         ./11-explicitwait_simulator gtut-platform-3nodes.xml 11-explicitwait.xml   2>&1 |sed s/11-explicitwait/test/  >> $@ 2>&1
319         echo '$$'                                                     >> $@ 
320
321 11-explicitwait_client 11-explicitwait_server 11-explicitwait_simulator: _11-explicitwait_client.c _11-explicitwait_server.c _11-explicitwait_simulator.c
322         make -f 11-explicitwait.mk
323
324 _11-explicitwait_client.c _11-explicitwait_server.c _11-explicitwait_simulator.c: 11-explicitwait.c 03-args.xml
325         $(GRAS_STUB_GENERATOR) 11-explicitwait 03-args.xml >/dev/null
326
327 clean::
328         if [ -e 11-explicitwait.mk ] ; then make -f 11-explicitwait.mk clean; fi
329         rm -f _11-explicitwait_client.c _11-explicitwait_server.c _11-explicitwait_simulator.c 11-explicitwait.trace 11-explicitwait.mk
330
331