Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Rewrite smpi build scripts to deal with file names containing spaces.
[simgrid.git] / buildtools / Cmake / DefinePackages.cmake
1 ### define source packages
2
3 set(EXTRA_DIST
4   include/xbt/win32_ucontext.h
5   src/bindings/java/MANIFEST.MF
6   src/include/instr/instr_interface.h
7   src/include/mc/datatypes.h
8   src/include/mc/mc.h
9   src/include/simgrid/platf_interface.h
10   src/include/simgrid/sg_config.h
11   src/include/smpi/smpi_interface.h
12   src/include/surf/datatypes.h
13   src/include/surf/maxmin.h
14   src/include/surf/random_mgr.h
15   src/include/surf/surf.h
16   src/include/surf/surf_resource.h
17   src/include/surf/surf_resource_lmm.h
18   src/include/surf/surfxml_parse_values.h
19   src/include/surf/trace_mgr.h
20   src/include/xbt/wine_dbghelp.h
21   src/include/xbt/xbt_os_time.h
22   src/mk_supernovae.pl
23   src/msg/msg_mailbox.h
24   src/msg/msg_private.h
25   src/portable.h
26   src/simdag/dax.dtd
27   src/simdag/dax_dtd.c
28   src/simdag/dax_dtd.h
29   src/simdag/private.h
30   src/simix/smx_host_private.h
31   src/simix/smx_io_private.h
32   src/simix/smx_network_private.h
33   src/simix/smx_private.h
34   src/simix/smx_process_private.h
35   src/simix/smx_smurf_private.h
36   src/simix/smx_synchro_private.h
37   src/smpi/README
38   src/smpi/colls/colls.h
39   src/smpi/colls/colls_private.h
40   src/smpi/colls/coll_tuned_topo.h
41   src/smpi/private.h
42   src/smpi/smpi_mpi_dt_private.h
43   src/surf/cpu_cas01_private.h
44   src/surf/cpu_ti_private.h
45   src/surf/gtnets/gtnets_interface.h
46   src/surf/gtnets/gtnets_simulator.h
47   src/surf/gtnets/gtnets_topology.h
48   src/surf/maxmin_private.h
49   src/surf/network_gtnets_private.h
50   src/surf/network_ns3_private.h
51   src/surf/network_private.h
52   src/surf/ns3/my-point-to-point-helper.h
53   src/surf/ns3/ns3_interface.h
54   src/surf/ns3/ns3_simulator.h
55   src/surf/ns3/red-queue.h
56   src/surf/platf_generator_private.h
57   src/surf/simgrid.dtd
58   src/surf/simgrid_dtd.c
59   src/surf/storage_private.h
60   src/surf/surf_private.h
61   src/surf/surf_routing_private.h
62   src/surf/surfxml_parse.c
63   src/surf/trace_mgr_private.h
64   src/win32/config.h
65   src/xbt/automaton/automaton_lexer.yy.c
66   src/xbt/automaton/parserPromela.lex
67   src/xbt/automaton/parserPromela.tab.cacc
68   src/xbt/automaton/parserPromela.tab.hacc
69   src/xbt/automaton/parserPromela.yacc
70   src/xbt/backtrace_dummy.c
71   src/xbt/backtrace_linux.c
72   src/xbt/backtrace_windows.c
73   src/xbt/dict_private.h
74   src/xbt/ex_interface.h
75   src/xbt/fifo_private.h
76   src/xbt/graph_private.h
77   src/xbt/graphxml.c
78   src/xbt/graphxml.dtd
79   src/xbt/graphxml_parse.c
80   src/xbt/heap_private.h
81   src/xbt/log_private.h
82   src/xbt/mallocator_private.h
83   src/xbt/mmalloc/mfree.c
84   src/xbt/mmalloc/mm.c
85   src/xbt/mmalloc/mm_diff.c
86   src/xbt/mmalloc/mm_legacy.c
87   src/xbt/mmalloc/mm_module.c
88   src/xbt/mmalloc/mmalloc.c
89   src/xbt/mmalloc/mmalloc.info
90   src/xbt/mmalloc/mmalloc.texi
91   src/xbt/mmalloc/mmorecore.c
92   src/xbt/mmalloc/mmprivate.h
93   src/xbt/mmalloc/mmtrace.awk
94   src/xbt/mmalloc/mrealloc.c
95   src/xbt/setset_private.h
96   src/xbt/win32_ucontext.c
97   tools/tesh/run_context.h
98   tools/tesh/tesh.h
99   )
100
101 set(SMPI_SRC
102   src/smpi/instr_smpi.c
103   src/smpi/smpi_base.c
104   src/smpi/smpi_bench.c
105   src/smpi/smpi_c99.c
106   src/smpi/smpi_coll.c
107   src/smpi/smpi_comm.c
108   src/smpi/smpi_dvfs.c
109   src/smpi/smpi_global.c
110   src/smpi/smpi_group.c
111   src/smpi/smpi_mpi.c
112   src/smpi/smpi_mpi_dt.c
113   src/smpi/smpi_pmpi.c
114   src/smpi/smpi_replay.c
115   src/smpi/colls/smpi_openmpi_selector.c
116   src/smpi/colls/smpi_mpich_selector.c
117   src/smpi/colls/colls_global.c
118   src/smpi/colls/allgather-2dmesh.c
119   src/smpi/colls/allgather-3dmesh.c
120   src/smpi/colls/allgather-bruck.c
121   src/smpi/colls/allgather-GB.c
122   src/smpi/colls/allgather-loosely-lr.c
123   src/smpi/colls/allgather-NTSLR.c
124   src/smpi/colls/allgather-NTSLR-NB.c
125   src/smpi/colls/allgather-pair.c
126   src/smpi/colls/allgather-rdb.c
127   src/smpi/colls/allgather-rhv.c
128   src/smpi/colls/allgather-ring.c
129   src/smpi/colls/allgather-SMP-NTS.c
130   src/smpi/colls/allgather-smp-simple.c
131   src/smpi/colls/allgather-spreading-simple.c
132   src/smpi/colls/allgather-ompi-neighborexchange.c
133   src/smpi/colls/allgatherv-GB.c  
134   src/smpi/colls/allgatherv-pair.c
135   src/smpi/colls/allgatherv-ring.c
136   src/smpi/colls/allgatherv-ompi-neighborexchange.c
137   src/smpi/colls/allgatherv-ompi-bruck.c
138   src/smpi/colls/allgatherv-mpich-rdb.c
139   src/smpi/colls/allgatherv-mpich-ring.c
140   src/smpi/colls/allreduce-lr.c
141   src/smpi/colls/allreduce-rab1.c
142   src/smpi/colls/allreduce-rab2.c
143   src/smpi/colls/allreduce-rab-rdb.c
144   src/smpi/colls/allreduce-rdb.c
145   src/smpi/colls/allreduce-redbcast.c
146   src/smpi/colls/allreduce-smp-binomial.c
147   src/smpi/colls/allreduce-smp-binomial-pipeline.c
148   src/smpi/colls/allreduce-smp-rdb.c
149   src/smpi/colls/allreduce-smp-rsag.c
150   src/smpi/colls/allreduce-smp-rsag-lr.c
151   src/smpi/colls/allreduce-smp-rsag-rab.c
152   src/smpi/colls/allreduce-ompi-ring-segmented.c
153   src/smpi/colls/alltoall-2dmesh.c
154   src/smpi/colls/alltoall-3dmesh.c
155 #  src/smpi/colls/alltoall-bruck.c
156   src/smpi/colls/alltoall-pair.c
157   src/smpi/colls/alltoall-pair-light-barrier.c
158   src/smpi/colls/alltoall-pair-mpi-barrier.c
159   src/smpi/colls/alltoall-pair-one-barrier.c
160   src/smpi/colls/alltoall-rdb.c
161   src/smpi/colls/alltoall-ring.c
162   src/smpi/colls/alltoall-ring-light-barrier.c
163   src/smpi/colls/alltoall-ring-mpi-barrier.c
164   src/smpi/colls/alltoall-ring-one-barrier.c
165   src/smpi/colls/alltoallv-pair.c   
166   src/smpi/colls/alltoallv-pair-light-barrier.c
167   src/smpi/colls/alltoallv-pair-mpi-barrier.c
168   src/smpi/colls/alltoallv-pair-one-barrier.c 
169   src/smpi/colls/alltoallv-ring.c
170   src/smpi/colls/alltoallv-ring-light-barrier.c
171   src/smpi/colls/alltoallv-ring-mpi-barrier.c
172   src/smpi/colls/alltoallv-ring-one-barrier.c
173   src/smpi/colls/alltoallv-bruck.c
174   src/smpi/colls/alltoallv-ompi-basic-linear.c
175   src/smpi/colls/bcast-arrival-pattern-aware.c
176   src/smpi/colls/bcast-arrival-pattern-aware-wait.c
177   src/smpi/colls/bcast-arrival-scatter.c
178   src/smpi/colls/bcast-binomial-tree.c
179   src/smpi/colls/bcast-flattree.c
180   src/smpi/colls/bcast-flattree-pipeline.c
181   src/smpi/colls/bcast-NTSB.c
182   src/smpi/colls/bcast-NTSL.c
183   src/smpi/colls/bcast-NTSL-Isend.c
184   src/smpi/colls/bcast-scatter-LR-allgather.c
185   src/smpi/colls/bcast-scatter-rdb-allgather.c
186   src/smpi/colls/bcast-SMP-binary.c
187   src/smpi/colls/bcast-SMP-binomial.c
188   src/smpi/colls/bcast-SMP-linear.c
189   src/smpi/colls/coll_tuned_topo.c
190   src/smpi/colls/bcast-ompi-split-bintree.c
191   src/smpi/colls/bcast-ompi-pipeline.c
192   src/smpi/colls/reduce-arrival-pattern-aware.c
193   src/smpi/colls/reduce-binomial.c
194   src/smpi/colls/reduce-flat-tree.c
195   src/smpi/colls/reduce-NTSL.c
196   src/smpi/colls/reduce-scatter-gather.c
197   src/smpi/colls/reduce-ompi.c
198   src/smpi/colls/gather-ompi.c
199   src/smpi/colls/reduce_scatter-ompi.c
200   src/smpi/colls/reduce_scatter-mpich.c
201   src/smpi/colls/smpi_automatic_selector.c
202   src/smpi/colls/scatter-ompi.c
203   src/smpi/colls/barrier-ompi.c
204   )
205
206 if(SMPI_F2C)
207   set(SMPI_SRC
208     ${SMPI_SRC}
209     src/smpi/smpi_f77.c
210     )
211 else()
212   set(EXTRA_DIST
213     ${EXTRA_DIST}
214     src/smpi/smpi_f77.c
215   )
216 endif()
217
218
219 set(XBT_SRC
220   src/xbt/RngStream.c
221   src/xbt/automaton/automaton.c
222   src/xbt/automaton/automatonparse_promela.c
223   src/xbt/config.c
224   src/xbt/cunit.c
225   src/xbt/dict.c
226   src/xbt/dict_cursor.c
227   src/xbt/dict_elm.c
228   src/xbt/dict_multi.c
229   src/xbt/dynar.c
230   src/xbt/ex.c
231   src/xbt/fifo.c
232   src/xbt/graph.c
233   src/xbt/graphxml_parse.c
234   src/xbt/heap.c
235   src/xbt/lib.c
236   src/xbt/log.c
237   src/xbt/mallocator.c
238   src/xbt/parmap.c
239   src/xbt/set.c
240   src/xbt/setset.c
241   src/xbt/snprintf.c
242   src/xbt/swag.c
243   src/xbt/xbt_log_appender_file.c
244   src/xbt/xbt_log_layout_format.c
245   src/xbt/xbt_log_layout_simple.c
246   src/xbt/xbt_main.c
247   src/xbt/xbt_matrix.c
248   src/xbt/xbt_os_time.c
249   src/xbt/xbt_peer.c
250   src/xbt/xbt_queue.c
251   src/xbt/xbt_replay.c
252   src/xbt/xbt_sg_synchro.c
253   src/xbt/xbt_sha.c
254   src/xbt/xbt_str.c
255   src/xbt/xbt_strbuff.c
256   src/xbt/xbt_virtu.c
257   src/xbt_modinter.h
258   )
259
260 if(HAVE_MMAP)
261   set(XBT_SRC
262     ${XBT_SRC}
263     src/xbt/mmalloc/mm.c
264     )
265 endif()
266
267 set(GTNETS_SRC
268   src/surf/gtnets/gtnets_interface.cc
269   src/surf/gtnets/gtnets_simulator.cc
270   src/surf/gtnets/gtnets_topology.cc
271   src/surf/network_gtnets.c
272   )
273
274 set(NS3_SRC
275   src/surf/network_ns3.c
276   src/surf/ns3/my-point-to-point-helper.cc
277   src/surf/ns3/ns3_interface.cc
278   src/surf/ns3/ns3_simulator.cc
279   src/surf/ns3/red-queue.cc
280   )
281
282 set(SURF_SRC
283   src/surf/cpu_cas01.c
284   src/surf/cpu_ti.c
285   src/surf/fair_bottleneck.c
286   src/surf/instr_routing.c
287   src/surf/instr_surf.c
288   src/surf/lagrange.c
289   src/surf/maxmin.c
290   src/surf/network.c
291   src/surf/network_constant.c
292   src/surf/platf_generator.c
293   src/surf/random_mgr.c
294   src/surf/sg_platf.c
295   src/surf/storage.c
296   src/surf/surf.c
297   src/surf/surf_action.c
298   src/surf/surf_model.c
299   src/surf/surf_routing.c
300   src/surf/surf_routing_cluster.c
301   src/surf/surf_routing_dijkstra.c
302   src/surf/surf_routing_floyd.c
303   src/surf/surf_routing_full.c
304   src/surf/surf_routing_generic.c
305   src/surf/surf_routing_none.c
306   src/surf/surf_routing_vivaldi.c
307   src/surf/surfxml_parse.c
308   src/surf/surfxml_parseplatf.c
309   src/surf/trace_mgr.c
310   src/surf/workstation.c
311   src/surf/workstation_ptask_L07.c
312   src/xbt/xbt_sg_stubs.c
313   )
314
315 set(SIMIX_SRC
316   src/simix/smx_context.c
317   src/simix/smx_context_base.c
318   src/simix/smx_context_raw.c
319   src/simix/smx_deployment.c
320   src/simix/smx_environment.c
321   src/simix/smx_global.c
322   src/simix/smx_host.c
323   src/simix/smx_io.c
324   src/simix/smx_network.c
325   src/simix/smx_process.c
326   src/simix/smx_smurf.c
327   src/simix/smx_synchro.c
328   src/simix/smx_user.c
329   )
330
331 set(SIMGRID_SRC
332   src/simgrid/sg_config.c
333   )
334
335 set(MSG_SRC
336   src/msg/instr_msg_process.c
337   src/msg/instr_msg_task.c
338   src/msg/instr_msg_vm.c
339   src/msg/msg_actions.c
340   src/msg/msg_deployment.c
341   src/msg/msg_environment.c
342   src/msg/msg_global.c
343   src/msg/msg_gos.c
344   src/msg/msg_host.c
345   src/msg/msg_io.c
346   src/msg/msg_mailbox.c
347   src/msg/msg_process.c
348   src/msg/msg_synchro.c
349   src/msg/msg_task.c
350   src/msg/msg_vm.c
351   )
352
353 #* ****************************************************************************************** *#
354 #* TUTORIAL: New API                                                                          *#
355
356 set(MSG_SRC
357   ${MSG_SRC}
358   src/msg/msg_new_api.c
359   )
360 set(EXTRA_DIST
361   ${EXTRA_DIST}
362   src/simix/smx_new_api_private.h
363   )
364 set(SIMIX_SRC
365   ${SIMIX_SRC}
366   src/simix/smx_new_api.c
367 )
368 #* ****************************************************************************************** *#
369
370 #* ****************************************************************************************** *#
371 #* TUTORIAL: New Model                                                                        *#
372
373 set(SURF_SRC
374   ${SURF_SRC}
375   src/surf/new_model.c
376   )
377 set(EXTRA_DIST
378   ${EXTRA_DIST}
379   src/surf/new_model_private.h
380   )
381 #* ****************************************************************************************** *#
382
383 set(SIMDAG_SRC
384   src/simdag/instr_sd_task.c
385   src/simdag/sd_daxloader.c
386   src/simdag/sd_global.c
387   src/simdag/sd_link.c
388   src/simdag/sd_task.c
389   src/simdag/sd_workstation.c
390   )
391 if(HAVE_GRAPHVIZ)
392   set(SIMDAG_SRC
393     ${SIMDAG_SRC} src/simdag/sd_dotloader.c
394     )
395 else()
396   set(EXTRA_DIST
397     ${EXTRA_DIST} src/simdag/sd_dotloader.c
398     )
399 endif()
400
401 set(BINDINGS_SRC
402   src/bindings/bindings_global.c
403   src/bindings/lua/lua_private.h
404   src/bindings/lua/lua_state_cloner.h
405   src/bindings/lua/lua_utils.h
406   src/bindings/lua/simgrid_lua.h
407   )
408
409 set(JMSG_C_SRC
410   src/bindings/java/jmsg.c
411   src/bindings/java/jmsg.h
412   src/bindings/java/jmsg_as.c
413   src/bindings/java/jmsg_as.h
414   src/bindings/java/jmsg_comm.c
415   src/bindings/java/jmsg_comm.h
416   src/bindings/java/jmsg_file.c
417   src/bindings/java/jmsg_file.h
418   src/bindings/java/jmsg_host.c
419   src/bindings/java/jmsg_host.h
420   src/bindings/java/jmsg_process.c
421   src/bindings/java/jmsg_process.h
422   src/bindings/java/jmsg_rngstream.c
423   src/bindings/java/jmsg_rngstream.h
424   src/bindings/java/jmsg_synchro.c
425   src/bindings/java/jmsg_synchro.h
426   src/bindings/java/jmsg_task.c
427   src/bindings/java/jmsg_task.h
428   src/bindings/java/jmsg_vm.c
429   src/bindings/java/jmsg_vm.h
430   src/bindings/java/jxbt_utilities.c
431   src/bindings/java/jxbt_utilities.h
432   src/bindings/java/smx_context_cojava.c
433   src/bindings/java/smx_context_cojava.h
434   src/bindings/java/smx_context_java.c
435   src/bindings/java/smx_context_java.h
436 )
437
438 set(JMSG_JAVA_SRC
439   src/bindings/java/org/simgrid/msg/As.java     
440   src/bindings/java/org/simgrid/msg/Comm.java
441   src/bindings/java/org/simgrid/msg/File.java
442   src/bindings/java/org/simgrid/msg/Host.java
443   src/bindings/java/org/simgrid/msg/HostFailureException.java
444   src/bindings/java/org/simgrid/msg/HostNotFoundException.java
445   src/bindings/java/org/simgrid/msg/JniException.java
446   src/bindings/java/org/simgrid/msg/Msg.java
447   src/bindings/java/org/simgrid/msg/MsgException.java
448   src/bindings/java/org/simgrid/msg/Mutex.java
449   src/bindings/java/org/simgrid/msg/Semaphore.java
450   src/bindings/java/org/simgrid/msg/NativeException.java
451   src/bindings/java/org/simgrid/msg/Process.java
452   src/bindings/java/org/simgrid/msg/ProcessKilledError.java
453   src/bindings/java/org/simgrid/msg/ProcessNotFoundException.java
454   src/bindings/java/org/simgrid/msg/RngStream.java
455   src/bindings/java/org/simgrid/msg/Task.java
456   src/bindings/java/org/simgrid/msg/TaskCancelledException.java
457   src/bindings/java/org/simgrid/msg/TimeoutException.java
458   src/bindings/java/org/simgrid/msg/TransferFailureException.java
459   src/bindings/java/org/simgrid/msg/VM.java
460 )
461
462 set(JTRACE_C_SRC
463   src/bindings/java/jtrace.c
464   src/bindings/java/jtrace.h
465 )
466
467 set(JTRACE_JAVA_SRC
468   src/bindings/java/org/simgrid/trace/Trace.java
469 )
470
471 if(HAVE_TRACING)
472   list(APPEND JMSG_C_SRC ${JTRACE_C_SRC})
473   list(APPEND JMSG_JAVA_SRC ${JTRACE_JAVA_SRC})
474 else()
475   list(APPEND EXTRA_DIST ${JTRACE_C_SRC})
476   list(APPEND EXTRA_DIST ${JTRACE_JAVA_SRC})
477 endif()
478
479 set(LUA_SRC
480   src/bindings/lua/lua_comm.c
481   src/bindings/lua/lua_host.c
482   src/bindings/lua/lua_platf.c
483   src/bindings/lua/lua_process.c
484   src/bindings/lua/lua_state_cloner.c
485   src/bindings/lua/lua_task.c
486   src/bindings/lua/lua_utils.c
487   src/bindings/lua/simgrid_lua.c
488   )
489
490 set(TRACING_SRC
491   src/instr/instr_config.c
492   src/instr/instr_interface.c
493   src/instr/instr_paje_containers.c
494   src/instr/instr_TI_trace.c
495   src/instr/instr_paje_trace.c
496   src/instr/instr_trace.c
497   src/instr/instr_paje_header.c
498   src/instr/instr_paje_types.c
499   src/instr/instr_paje_values.c
500   src/instr/instr_private.h
501   src/instr/instr_resource_utilization.c
502   )
503
504 set(JEDULE_SRC
505   include/instr/jedule/jedule_events.h
506   include/instr/jedule/jedule_output.h
507   include/instr/jedule/jedule_platform.h
508   include/instr/jedule/jedule_sd_binding.h
509   src/instr/jedule/jedule_events.c
510   src/instr/jedule/jedule_output.c
511   src/instr/jedule/jedule_platform.c
512   src/instr/jedule/jedule_sd_binding.c
513   )
514
515 set(MC_SRC
516   src/mc/mc_checkpoint.c
517   src/mc/mc_compare.c
518   src/mc/mc_dpor.c
519   src/mc/mc_global.c
520   src/mc/mc_liveness.c
521   src/mc/mc_memory.c
522   src/mc/mc_private.h
523   src/mc/mc_request.c
524   src/mc/mc_state.c
525   src/mc/memory_map.c
526   src/mc/mc_pair.c
527   )
528
529 set(headers_to_install
530   include/instr/instr.h
531   include/msg/datatypes.h
532   include/msg/msg.h
533   include/simdag/datatypes.h
534   include/simdag/simdag.h
535   include/simgrid/modelchecker.h
536   include/simgrid/platf.h
537   include/simgrid/platf_generator.h
538   include/simgrid/simix.h
539   include/smpi/mpi.h
540   include/smpi/smpi.h
541   include/smpi/smpi_cocci.h
542   include/smpi/smpi_main.h
543   include/surf/simgrid_dtd.h
544   include/surf/surf_routing.h
545   include/surf/surfxml_parse.h
546   include/xbt.h
547   include/xbt/RngStream.h
548   include/xbt/asserts.h
549   include/xbt/automaton.h
550   include/xbt/config.h
551   include/xbt/cunit.h
552   include/xbt/dict.h
553   include/xbt/dynar.h
554   include/xbt/ex.h
555   include/xbt/fifo.h
556   include/xbt/function_types.h
557   include/xbt/graph.h
558   include/xbt/graphxml.h
559   include/xbt/graphxml_parse.h
560   include/xbt/hash.h
561   include/xbt/heap.h
562   include/xbt/lib.h
563   include/xbt/log.h
564   include/xbt/mallocator.h
565   include/xbt/matrix.h
566   include/xbt/misc.h
567   include/xbt/mmalloc.h
568   include/xbt/module.h
569   include/xbt/parmap.h
570   include/xbt/peer.h
571   include/xbt/queue.h
572   include/xbt/replay.h
573   include/xbt/set.h
574   include/xbt/setset.h
575   include/xbt/str.h
576   include/xbt/strbuff.h
577   include/xbt/swag.h
578   include/xbt/synchro_core.h
579   include/xbt/sysdep.h
580   include/xbt/virtu.h
581   include/xbt/xbt_os_thread.h
582   )
583 set(source_of_generated_headers
584   include/simgrid_config.h.in
585   include/smpi/mpif.h.in
586   include/smpi/smpif.h.in
587   src/context_sysv_config.h.in)
588
589 ### depend of some variables setted upper
590 # -->CONTEXT_THREADS CONTEXT_UCONTEXT
591 if(${CONTEXT_THREADS}) #pthread
592   set(SURF_SRC
593     ${SURF_SRC}
594     src/simix/smx_context_thread.c
595     src/xbt/xbt_os_thread.c
596     )
597 else() # NOT pthread
598   set(EXTRA_DIST
599     ${EXTRA_DIST}
600     src/simix/smx_context_thread.c
601     src/xbt/xbt_os_thread.c
602     )
603 endif()
604
605 if(${CONTEXT_UCONTEXT}) #ucontext
606   set(SURF_SRC
607     ${SURF_SRC}
608     src/simix/smx_context_sysv.c
609     )
610 else() # NOT ucontext
611   set(EXTRA_DIST
612     ${EXTRA_DIST}
613     src/simix/smx_context_sysv.c
614     )
615 endif()
616
617 # -->HAVE_GTNETS
618 if(HAVE_GTNETS)
619   set(GTNETS_USED
620     ${GTNETS_SRC}
621     )
622 else()
623   set(GTNETS_USED "")
624   set(EXTRA_DIST
625     ${EXTRA_DIST}
626     ${GTNETS_SRC}
627     )
628 endif()
629
630 ### Simgrid Lib sources
631 set(simgrid_sources
632   ${BINDINGS_SRC}
633   ${GTNETS_USED}
634   ${MSG_SRC}
635   ${SIMDAG_SRC}
636   ${SIMGRID_SRC}
637   ${SIMIX_SRC}
638   ${SURF_SRC}
639   ${XBT_SRC}
640   )
641
642 if(${HAVE_JEDULE})
643   set(simgrid_sources
644     ${simgrid_sources}
645     ${JEDULE_SRC}
646     )
647 else()
648   set(EXTRA_DIST
649     ${EXTRA_DIST}
650     ${JEDULE_SRC}
651     )
652 endif()
653
654 if(enable_smpi)
655   set(simgrid_sources
656     ${simgrid_sources}
657     ${SMPI_SRC}
658     )
659 endif()
660
661 if(${HAVE_TRACING})
662   set(simgrid_sources
663     ${simgrid_sources}
664     ${TRACING_SRC}
665     )
666 else()
667   set(EXTRA_DIST
668     ${EXTRA_DIST}
669     ${TRACING_SRC}
670     )
671 endif()
672
673 if(HAVE_MC)
674   set(simgrid_sources
675     ${simgrid_sources}
676     ${MC_SRC}
677     )
678 endif()
679
680 if(HAVE_NS3)
681   set(simgrid_sources
682     ${simgrid_sources}
683     ${NS3_SRC}
684     )
685 endif()
686
687 # WINDOWS
688 if(WIN32)
689   set(simgrid_sources
690     ${simgrid_sources}
691     src/simix/smx_context_thread.c
692     src/xbt/win32_ucontext.c
693     src/xbt/xbt_os_thread.c
694     )
695 endif()
696
697 if(${HAVE_LUA})
698   set(simgrid_sources
699     ${simgrid_sources}
700     ${LUA_SRC}
701     )
702 else()
703   set(EXTRA_DIST
704     ${EXTRA_DIST}
705     ${LUA_SRC}
706     )
707 endif()
708
709 set(DOC_SOURCES
710   doc/Doxyfile.in
711   doc/Layout.xml
712   doc/sg_thread_model.fig
713   doc/simix.fig
714   doc/surf_nutshell.fig
715   doc/triva-graph_configuration.png
716   doc/triva-graph_configuration.svg
717   doc/triva-graph_visualization.png
718   doc/triva-graph_visualization.svg
719   doc/triva-time_interval.png
720   doc/triva-time_interval.svg
721
722   doc/HelloWorld/CMakeLists.txt
723   doc/HelloWorld/HelloWorld.c
724   doc/HelloWorld/README
725
726   doc/doxygen/FAQ.doc
727   doc/doxygen/advanced.doc
728   doc/doxygen/bindings.doc
729   doc/doxygen/contributing.doc
730   doc/doxygen/deployment.doc
731   doc/doxygen/footer.html
732   doc/doxygen/getting_started.doc
733   doc/doxygen/header.html
734   doc/doxygen/help.doc
735   doc/doxygen/index.doc
736   doc/doxygen/inside_autotests.doc
737   doc/doxygen/inside_cmake.doc
738   doc/doxygen/inside_doxygen.doc
739   doc/doxygen/inside_extending.doc
740   doc/doxygen/inside_release.doc
741   doc/doxygen/install.doc
742   doc/doxygen/internals.doc
743   doc/doxygen/introduction.doc
744   doc/doxygen/module-msg.doc
745   doc/doxygen/module-sd.doc
746   doc/doxygen/module-simix.doc
747   doc/doxygen/module-surf.doc
748   doc/doxygen/module-smpi.doc
749   doc/doxygen/module-trace.doc
750   doc/doxygen/module-xbt.doc
751   doc/doxygen/modules.doc
752   doc/doxygen/options.doc
753   doc/doxygen/platform.doc
754   doc/doxygen/pls.doc
755   doc/doxygen/stylesheet.css
756   doc/doxygen/tracing.doc
757   doc/doxygen/use.doc
758
759   doc/msg-tuto-src/deployment0.xml
760   doc/msg-tuto-src/deployment1.xml
761   doc/msg-tuto-src/deployment2.xml
762   doc/msg-tuto-src/deployment3.xml
763   doc/msg-tuto-src/deployment_general.xml
764   doc/msg-tuto-src/masterworker0.c
765   doc/msg-tuto-src/masterworker1.c
766   doc/msg-tuto-src/masterworker2.c
767   doc/msg-tuto-src/masterworker3.c
768   doc/msg-tuto-src/masterworker4.c
769   doc/msg-tuto-src/platforms/cloud.xml
770   doc/msg-tuto-src/platforms/g5k.xml
771   doc/msg-tuto-src/platforms/griffon.xml
772   doc/msg-tuto-src/platforms/peers.xml
773   doc/msg-tuto-src/platforms/platform.xml
774   
775   CITATION.bib
776   )
777
778 set(DOC_FIGS
779   ${CMAKE_HOME_DIRECTORY}/doc/shared/fig/simgrid_modules.fig
780   ${CMAKE_HOME_DIRECTORY}/doc/shared/fig/simgrid_modules2.fig
781   )
782
783 set(DOC_TOOLS
784   tools/doxygen/fig2dev_postprocessor.pl
785   tools/doxygen/index_create.pl
786   tools/doxygen/xbt_log_extract_hierarchy.pl
787   )
788
789 # these files get copied automatically to the html documentation
790 set(DOC_IMG
791   ${CMAKE_HOME_DIRECTORY}/doc/simgrid.css
792   ${CMAKE_HOME_DIRECTORY}/doc/sc3-description.png
793   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/AS_hierarchy.png
794   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/Paje_MSG_screenshot.jpg
795   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/Paje_MSG_screenshot_thn.jpg
796   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/SGicon.gif
797   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/SGicon.icns
798   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/SGicon.ico
799   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/awstats_logo3.png
800   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/output.goal.pdf
801   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/poster_thumbnail.png
802   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011.gif
803   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011.png
804   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011_small.png
805   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_win.bmp
806   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_win_2011.bmp
807   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_01.png
808   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_02.png
809   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_03.png
810   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_04.png
811   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_05.png
812   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_06.png
813   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/smpi_simgrid_alltoall_pair_16.png
814   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/smpi_simgrid_alltoall_ring_16.png
815   )
816
817 set(bin_files
818   ${bin_files}
819   src/smpi/smpicc.in
820   src/smpi/smpif2c.in
821   src/smpi/smpiff.in
822   src/smpi/smpif90.in
823   src/smpi/smpirun.in
824   src/smpi/smpitools.sh
825   )
826
827 set(txt_files
828   ${txt_files}
829   AUTHORS
830   COPYING
831   README
832   README.java
833   ChangeLog
834   ChangeLog.SimGrid-java
835   INSTALL
836   LICENSE-LGPL-2.1
837   NEWS
838   TODO
839   configure
840   )
841
842 set(EXAMPLES_CMAKEFILES_TXT
843   examples/java/CMakeLists.txt
844   examples/java/async/CMakeLists.txt
845   examples/java/bittorrent/CMakeLists.txt
846   examples/java/chord/CMakeLists.txt
847   examples/java/cloud/CMakeLists.txt
848   examples/java/commTime/CMakeLists.txt
849   examples/java/io/CMakeLists.txt
850   examples/java/kademlia/CMakeLists.txt
851   examples/java/master_slave_bypass/CMakeLists.txt
852   examples/java/master_slave_kill/CMakeLists.txt
853   examples/java/masterslave/CMakeLists.txt
854   examples/java/migration/CMakeLists.txt
855   examples/java/mutualExclusion/CMakeLists.txt
856   examples/java/pingPong/CMakeLists.txt
857   examples/java/priority/CMakeLists.txt
858   examples/java/startKillTime/CMakeLists.txt
859   examples/java/suspend/CMakeLists.txt
860   examples/java/tracing/CMakeLists.txt
861   examples/lua/CMakeLists.txt
862   examples/msg/CMakeLists.txt
863   examples/msg/actions/CMakeLists.txt
864   examples/msg/bittorrent/CMakeLists.txt
865   examples/msg/chainsend/CMakeLists.txt
866   examples/msg/chord/CMakeLists.txt
867   examples/msg/cloud/CMakeLists.txt
868   examples/msg/energy/e1/CMakeLists.txt
869   examples/msg/energy/e2/CMakeLists.txt
870   examples/msg/energy/e3/CMakeLists.txt
871   examples/msg/gpu/CMakeLists.txt
872   examples/msg/gtnets/CMakeLists.txt
873   examples/msg/icomms/CMakeLists.txt
874   examples/msg/io/CMakeLists.txt
875   examples/msg/kademlia/CMakeLists.txt
876   examples/msg/masterslave/CMakeLists.txt
877   examples/msg/mc/CMakeLists.txt
878   examples/msg/migration/CMakeLists.txt
879   examples/msg/ns3/CMakeLists.txt
880   examples/msg/parallel_task/CMakeLists.txt
881   examples/msg/pastry/CMakeLists.txt
882   examples/msg/pmm/CMakeLists.txt
883   examples/msg/priority/CMakeLists.txt
884   examples/msg/properties/CMakeLists.txt
885   examples/msg/semaphores/CMakeLists.txt
886   examples/msg/sendrecv/CMakeLists.txt
887   examples/msg/start_kill_time/CMakeLists.txt
888   examples/msg/suspend/CMakeLists.txt
889   examples/msg/token_ring/CMakeLists.txt
890   examples/msg/tracing/CMakeLists.txt
891   examples/scala/CMakeLists.txt
892   examples/scala/master_slave_bypass/CMakeLists.txt
893   examples/scala/master_slave_kill/CMakeLists.txt
894   examples/scala/masterslave/CMakeLists.txt
895   examples/simdag/CMakeLists.txt
896   examples/simdag/dax/CMakeLists.txt
897   examples/simdag/dot/CMakeLists.txt
898   examples/simdag/goal/CMakeLists.txt
899   examples/simdag/io/CMakeLists.txt
900   examples/simdag/metaxml/CMakeLists.txt
901   examples/simdag/properties/CMakeLists.txt
902   examples/simdag/scheduling/CMakeLists.txt
903   examples/smpi/CMakeLists.txt
904   examples/smpi/MM/CMakeLists.txt
905   examples/smpi/energy/CMakeLists.txt
906   examples/smpi/energy/f77/CMakeLists.txt
907   examples/smpi/energy/f90/CMakeLists.txt
908   examples/xbt/CMakeLists.txt
909   )
910
911 set(TESHSUITE_CMAKEFILES_TXT
912   teshsuite/msg/CMakeLists.txt
913   teshsuite/msg/storage/CMakeLists.txt
914   teshsuite/msg/trace/CMakeLists.txt
915   teshsuite/simdag/CMakeLists.txt
916   teshsuite/simdag/availability/CMakeLists.txt
917   teshsuite/simdag/network/CMakeLists.txt
918   teshsuite/simdag/network/mxn/CMakeLists.txt
919   teshsuite/simdag/network/p2p/CMakeLists.txt
920   teshsuite/simdag/partask/CMakeLists.txt
921   teshsuite/simdag/platforms/CMakeLists.txt
922   teshsuite/simix/CMakeLists.txt
923   teshsuite/smpi/CMakeLists.txt
924   teshsuite/smpi/mpich3-test/CMakeLists.txt
925   teshsuite/smpi/mpich3-test/attr/CMakeLists.txt
926   teshsuite/smpi/mpich3-test/comm/CMakeLists.txt
927   teshsuite/smpi/mpich3-test/coll/CMakeLists.txt
928   teshsuite/smpi/mpich3-test/datatype/CMakeLists.txt
929   teshsuite/smpi/mpich3-test/group/CMakeLists.txt
930   teshsuite/smpi/mpich3-test/init/CMakeLists.txt
931   teshsuite/smpi/mpich3-test/pt2pt/CMakeLists.txt
932 #  teshsuite/smpi/mpich3-test/f77/attr/CMakeLists.txt
933   teshsuite/smpi/mpich3-test/f77/coll/CMakeLists.txt
934   teshsuite/smpi/mpich3-test/f77/comm/CMakeLists.txt
935   teshsuite/smpi/mpich3-test/f77/datatype/CMakeLists.txt
936   teshsuite/smpi/mpich3-test/f77/ext/CMakeLists.txt
937   teshsuite/smpi/mpich3-test/f77/init/CMakeLists.txt
938   teshsuite/smpi/mpich3-test/f77/pt2pt/CMakeLists.txt
939   teshsuite/smpi/mpich3-test/f90/coll/CMakeLists.txt
940   teshsuite/smpi/mpich3-test/f90/datatype/CMakeLists.txt
941   teshsuite/smpi/mpich3-test/f90/init/CMakeLists.txt
942   teshsuite/smpi/mpich3-test/f90/pt2pt/CMakeLists.txt
943   teshsuite/xbt/CMakeLists.txt
944   )
945
946 set(TOOLS_CMAKEFILES_TXT
947   tools/CMakeLists.txt
948   tools/graphicator/CMakeLists.txt
949   tools/tesh/CMakeLists.txt
950   )
951
952 set(TESTSUITE_CMAKEFILES_TXT
953   testsuite/surf/CMakeLists.txt
954   testsuite/xbt/CMakeLists.txt
955   )
956
957 set(CMAKE_SOURCE_FILES
958   CMakeLists.txt
959   buildtools/Cmake/AddTests.cmake
960   buildtools/Cmake/CTestConfig.cmake
961   buildtools/Cmake/CTestCustom.cmake
962   buildtools/Cmake/CompleteInFiles.cmake
963   buildtools/Cmake/DefinePackages.cmake
964   buildtools/Cmake/Distrib.cmake
965   buildtools/Cmake/Flags.cmake
966   buildtools/Cmake/GenerateDoc.cmake
967   buildtools/Cmake/GenerateDocWin.cmake
968   buildtools/Cmake/MaintainerMode.cmake
969   buildtools/Cmake/MakeExe.cmake
970   buildtools/Cmake/MakeJava.cmake
971   buildtools/Cmake/MakeLib.cmake
972   buildtools/Cmake/MakeLibWin.cmake
973   buildtools/Cmake/Modules/FindF2c.cmake
974   buildtools/Cmake/Modules/FindGFortran.cmake
975   buildtools/Cmake/Modules/FindGTnets.cmake
976   buildtools/Cmake/Modules/FindGraphviz.cmake
977   buildtools/Cmake/Modules/FindLibunwind.cmake
978   buildtools/Cmake/Modules/FindLua51Simgrid.cmake
979   buildtools/Cmake/Modules/FindNS3.cmake
980   buildtools/Cmake/Modules/FindRngStream.cmake
981   buildtools/Cmake/Modules/FindRubySimgrid.cmake
982   buildtools/Cmake/Modules/FindScala.cmake
983   buildtools/Cmake/Modules/FindSimGrid.cmake
984   buildtools/Cmake/Modules/FindValgrind.cmake
985   buildtools/Cmake/Option.cmake
986   buildtools/Cmake/Pipol.cmake
987   buildtools/Cmake/PrintArgs.cmake
988   buildtools/Cmake/Scripts/Diff.pm
989   buildtools/Cmake/Scripts/Makefile.default
990   buildtools/Cmake/Scripts/SimGrid.packproj
991   buildtools/Cmake/Scripts/generate_memcheck_tests.pl
992   buildtools/Cmake/Scripts/generate_new_tests.pl
993   buildtools/Cmake/Scripts/my_valgrind.pl
994   buildtools/Cmake/Scripts/postinstall.sh
995   buildtools/Cmake/Scripts/preinstall.sh
996   buildtools/Cmake/Scripts/tesh.pl
997   buildtools/Cmake/Scripts/update_tesh.pl
998   buildtools/Cmake/Supernovae.cmake
999   buildtools/Cmake/UnitTesting.cmake
1000   buildtools/Cmake/src/internal_config.h.in
1001   buildtools/Cmake/src/simgrid.nsi.in
1002   buildtools/Cmake/test_prog/prog_AC_CHECK_MCSC.c
1003   buildtools/Cmake/test_prog/prog_gnu_dynlinker.c
1004   buildtools/Cmake/test_prog/prog_gtnets.cpp
1005   buildtools/Cmake/test_prog/prog_mutex_timedlock.c
1006   buildtools/Cmake/test_prog/prog_printf_null.c
1007   buildtools/Cmake/test_prog/prog_sem_init.c
1008   buildtools/Cmake/test_prog/prog_sem_open.c
1009   buildtools/Cmake/test_prog/prog_sem_timedwait.c
1010   buildtools/Cmake/test_prog/prog_snprintf.c
1011   buildtools/Cmake/test_prog/prog_stackgrowth.c
1012   buildtools/Cmake/test_prog/prog_stacksetup.c
1013   buildtools/Cmake/test_prog/prog_thread_storage.c
1014   buildtools/Cmake/test_prog/prog_vsnprintf.c
1015   )
1016
1017 set(PLATFORMS_EXAMPLES
1018   examples/platforms/bypassASroute.xml
1019   examples/platforms/bypassRoute.xml
1020   examples/platforms/cloud.xml
1021   examples/platforms/cluster.xml
1022   examples/platforms/cluster_and_one_host.xml
1023   examples/platforms/cluster_no_backbone.xml
1024   examples/platforms/clusters_routing_full.xml
1025   examples/platforms/conf/gridpp_grid_2004.conf
1026   examples/platforms/conf/gridpp_grid_2004.xml
1027   examples/platforms/conf/lcg_sept2004_grid.conf
1028   examples/platforms/conf/lcg_sept2004_grid.xml
1029   examples/platforms/conf/transform_optorsim_platform.pl
1030   examples/platforms/config.xml
1031   examples/platforms/content/small_content.txt
1032   examples/platforms/content/storage_content.txt
1033   examples/platforms/content/win_storage_content.txt
1034   examples/platforms/data_center.xml
1035   examples/platforms/g5k.xml
1036   examples/platforms/generation_scripts/create_hierarchical_clusters.pl
1037   examples/platforms/generation_scripts/enhancedDTDwithHierarchicalCluster.pl
1038   examples/platforms/generation_scripts/generate_g5k_platform.pl
1039   examples/platforms/generation_scripts/generate_g5k_platform_cabinets.pl
1040   examples/platforms/griffon.xml
1041   examples/platforms/meta_cluster.xml
1042   examples/platforms/multicore_machine.xml
1043   examples/platforms/prop.xml
1044   examples/platforms/routing_cluster.xml
1045   examples/platforms/storage.xml
1046   examples/platforms/syscoord/generate_peer_platform.pl
1047   examples/platforms/syscoord/median_harvard.syscoord
1048   examples/platforms/syscoord/median_harvard.xml
1049   examples/platforms/syscoord/median_meridian.syscoord
1050   examples/platforms/syscoord/median_meridian.xml
1051   examples/platforms/syscoord/median_p2psim.syscoord
1052   examples/platforms/syscoord/median_p2psim.xml
1053   examples/platforms/two_peers.xml
1054   examples/platforms/vivaldi.xml
1055   )
1056
1057 set(generated_src_files
1058   src/xbt/automaton/automaton_lexer.yy.c
1059   src/xbt/automaton/parserPromela.tab.cacc
1060   src/xbt/automaton/parserPromela.tab.hacc
1061   )
1062
1063 foreach(file ${generated_src_files})
1064   set_source_files_properties(${file} PROPERTIES GENERATED true)
1065 endforeach(file ${generated_src_files})