Logo AND Algorithmique Numérique Distribuée

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