Logo AND Algorithmique Numérique Distribuée

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