Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
f8436b725ceb7a38ffa5b9e91ba20cbc91840d47
[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_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_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-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/allreduce-lr.c
140   src/smpi/colls/allreduce-NTS.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-rab-reduce-scatter.c
145   src/smpi/colls/allreduce-rab-rsag.c
146   src/smpi/colls/allreduce-rdb.c
147   src/smpi/colls/allreduce-redbcast.c
148   src/smpi/colls/allreduce-smp-binomial.c
149   src/smpi/colls/allreduce-smp-binomial-pipeline.c
150   src/smpi/colls/allreduce-smp-rdb.c
151   src/smpi/colls/allreduce-smp-rsag.c
152   src/smpi/colls/allreduce-smp-rsag-lr.c
153   src/smpi/colls/allreduce-smp-rsag-rab.c
154   src/smpi/colls/allreduce-ompi-ring-segmented.c
155   src/smpi/colls/alltoall-2dmesh.c
156   src/smpi/colls/alltoall-3dmesh.c
157   #src/smpi/colls/alltoall-bruck.c
158   src/smpi/colls/alltoall-pair.c
159   src/smpi/colls/alltoall-pair-light-barrier.c
160   src/smpi/colls/alltoall-pair-mpi-barrier.c
161   src/smpi/colls/alltoall-pair-one-barrier.c
162   src/smpi/colls/alltoall-rdb.c
163   src/smpi/colls/alltoall-ring.c
164   src/smpi/colls/alltoall-ring-light-barrier.c
165   src/smpi/colls/alltoall-ring-mpi-barrier.c
166   src/smpi/colls/alltoall-ring-one-barrier.c
167   src/smpi/colls/alltoall-simple.c
168   src/smpi/colls/alltoallv-pair.c   
169   src/smpi/colls/alltoallv-pair-light-barrier.c
170   src/smpi/colls/alltoallv-pair-mpi-barrier.c
171   src/smpi/colls/alltoallv-pair-one-barrier.c 
172   src/smpi/colls/alltoallv-ring.c
173   src/smpi/colls/alltoallv-ring-light-barrier.c
174   src/smpi/colls/alltoallv-ring-mpi-barrier.c
175   src/smpi/colls/alltoallv-ring-one-barrier.c
176   src/smpi/colls/alltoallv-bruck.c
177   src/smpi/colls/bcast-arrival-nb.c
178   src/smpi/colls/bcast-arrival-pattern-aware.c
179   src/smpi/colls/bcast-arrival-pattern-aware-wait.c
180   src/smpi/colls/bcast-arrival-scatter.c
181   src/smpi/colls/bcast-binomial-tree.c
182   src/smpi/colls/bcast-flattree.c
183   src/smpi/colls/bcast-flattree-pipeline.c
184   src/smpi/colls/bcast-NTSB.c
185   src/smpi/colls/bcast-NTSL.c
186   src/smpi/colls/bcast-NTSL-Isend.c
187   src/smpi/colls/bcast-scatter-LR-allgather.c
188   src/smpi/colls/bcast-scatter-rdb-allgather.c
189   src/smpi/colls/bcast-SMP-binary.c
190   src/smpi/colls/bcast-SMP-binomial.c
191   src/smpi/colls/bcast-SMP-linear.c
192   src/smpi/colls/coll_tuned_topo.c
193   src/smpi/colls/bcast-ompi-split-bintree.c
194   src/smpi/colls/bcast-ompi-pipeline.c
195   src/smpi/colls/reduce-arrival-pattern-aware.c
196   src/smpi/colls/reduce-binomial.c
197   src/smpi/colls/reduce-flat-tree.c
198   src/smpi/colls/reduce-NTSL.c
199   src/smpi/colls/reduce-scatter-gather.c
200   src/smpi/colls/reduce-ompi.c
201   src/smpi/colls/gather-ompi.c
202   src/smpi/colls/reduce_scatter-ompi.c
203   src/smpi/colls/reduce_scatter-mpich.c
204   src/smpi/colls/scatter-ompi.c
205   src/smpi/colls/barrier-ompi.c
206   )
207
208 if(SMPI_F2C)
209   set(SMPI_SRC
210     ${SMPI_SRC}
211     src/smpi/smpi_f77.c
212     )
213 else()
214   set(EXTRA_DIST
215     ${EXTRA_DIST}
216     src/smpi/smpi_f77.c
217   )
218 endif()
219
220
221 set(XBT_SRC
222   src/xbt/RngStream.c
223   src/xbt/automaton/automaton.c
224   src/xbt/automaton/automatonparse_promela.c
225   src/xbt/config.c
226   src/xbt/cunit.c
227   src/xbt/dict.c
228   src/xbt/dict_cursor.c
229   src/xbt/dict_elm.c
230   src/xbt/dict_multi.c
231   src/xbt/dynar.c
232   src/xbt/ex.c
233   src/xbt/fifo.c
234   src/xbt/graph.c
235   src/xbt/graphxml_parse.c
236   src/xbt/heap.c
237   src/xbt/lib.c
238   src/xbt/log.c
239   src/xbt/mallocator.c
240   src/xbt/parmap.c
241   src/xbt/set.c
242   src/xbt/setset.c
243   src/xbt/snprintf.c
244   src/xbt/swag.c
245   src/xbt/xbt_log_appender_file.c
246   src/xbt/xbt_log_layout_format.c
247   src/xbt/xbt_log_layout_simple.c
248   src/xbt/xbt_main.c
249   src/xbt/xbt_matrix.c
250   src/xbt/xbt_os_time.c
251   src/xbt/xbt_peer.c
252   src/xbt/xbt_queue.c
253   src/xbt/xbt_replay.c
254   src/xbt/xbt_sg_synchro.c
255   src/xbt/xbt_sha.c
256   src/xbt/xbt_str.c
257   src/xbt/xbt_strbuff.c
258   src/xbt/xbt_virtu.c
259   src/xbt_modinter.h
260   )
261
262 if(HAVE_MMAP)
263   set(XBT_SRC
264     ${XBT_SRC}
265     src/xbt/mmalloc/mm.c
266     )
267 endif()
268
269 set(GTNETS_SRC
270   src/surf/gtnets/gtnets_interface.cc
271   src/surf/gtnets/gtnets_simulator.cc
272   src/surf/gtnets/gtnets_topology.cc
273   src/surf/network_gtnets.c
274   )
275
276 set(NS3_SRC
277   src/surf/network_ns3.c
278   src/surf/ns3/my-point-to-point-helper.cc
279   src/surf/ns3/ns3_interface.cc
280   src/surf/ns3/ns3_simulator.cc
281   src/surf/ns3/red-queue.cc
282   )
283
284 set(SURF_SRC
285   src/surf/cpu_cas01.c
286   src/surf/cpu_ti.c
287   src/surf/fair_bottleneck.c
288   src/surf/instr_routing.c
289   src/surf/instr_surf.c
290   src/surf/lagrange.c
291   src/surf/maxmin.c
292   src/surf/network.c
293   src/surf/network_constant.c
294   src/surf/platf_generator.c
295   src/surf/random_mgr.c
296   src/surf/sg_platf.c
297   src/surf/storage.c
298   src/surf/surf.c
299   src/surf/surf_action.c
300   src/surf/surf_model.c
301   src/surf/surf_routing.c
302   src/surf/surf_routing_cluster.c
303   src/surf/surf_routing_dijkstra.c
304   src/surf/surf_routing_floyd.c
305   src/surf/surf_routing_full.c
306   src/surf/surf_routing_generic.c
307   src/surf/surf_routing_none.c
308   src/surf/surf_routing_vivaldi.c
309   src/surf/surfxml_parse.c
310   src/surf/surfxml_parseplatf.c
311   src/surf/trace_mgr.c
312   src/surf/workstation.c
313   src/surf/workstation_ptask_L07.c
314   src/xbt/xbt_sg_stubs.c
315   )
316
317 set(SIMIX_SRC
318   src/simix/smx_context.c
319   src/simix/smx_context_base.c
320   src/simix/smx_context_raw.c
321   src/simix/smx_deployment.c
322   src/simix/smx_environment.c
323   src/simix/smx_global.c
324   src/simix/smx_host.c
325   src/simix/smx_io.c
326   src/simix/smx_network.c
327   src/simix/smx_process.c
328   src/simix/smx_smurf.c
329   src/simix/smx_synchro.c
330   src/simix/smx_user.c
331   )
332
333 set(SIMGRID_SRC
334   src/simgrid/sg_config.c
335   )
336
337 set(MSG_SRC
338   src/msg/instr_msg_process.c
339   src/msg/instr_msg_task.c
340   src/msg/instr_msg_vm.c
341   src/msg/msg_actions.c
342   src/msg/msg_deployment.c
343   src/msg/msg_environment.c
344   src/msg/msg_global.c
345   src/msg/msg_gos.c
346   src/msg/msg_host.c
347   src/msg/msg_io.c
348   src/msg/msg_mailbox.c
349   src/msg/msg_process.c
350   src/msg/msg_synchro.c
351   src/msg/msg_task.c
352   src/msg/msg_vm.c
353   )
354
355 #* ****************************************************************************************** *#
356 #* TUTORIAL: New API                                                                          *#
357
358 set(MSG_SRC
359   ${MSG_SRC}
360   src/msg/msg_new_api.c
361   )
362 set(EXTRA_DIST
363   ${EXTRA_DIST}
364   src/simix/smx_new_api_private.h
365   )
366 set(SIMIX_SRC
367   ${SIMIX_SRC}
368   src/simix/smx_new_api.c
369 )
370 #* ****************************************************************************************** *#
371
372 #* ****************************************************************************************** *#
373 #* TUTORIAL: New Model                                                                        *#
374
375 set(SURF_SRC
376   ${SURF_SRC}
377   src/surf/new_model.c
378   )
379 set(EXTRA_DIST
380   ${EXTRA_DIST}
381   src/surf/new_model_private.h
382   )
383 #* ****************************************************************************************** *#
384
385 set(SIMDAG_SRC
386   src/simdag/instr_sd_task.c
387   src/simdag/sd_daxloader.c
388   src/simdag/sd_global.c
389   src/simdag/sd_link.c
390   src/simdag/sd_task.c
391   src/simdag/sd_workstation.c
392   )
393 if(HAVE_GRAPHVIZ)
394   set(SIMDAG_SRC
395     ${SIMDAG_SRC} src/simdag/sd_dotloader.c
396     )
397 else()
398   set(EXTRA_DIST
399     ${EXTRA_DIST} src/simdag/sd_dotloader.c
400     )
401 endif()
402
403 set(BINDINGS_SRC
404   src/bindings/bindings_global.c
405   src/bindings/lua/lua_private.h
406   src/bindings/lua/lua_state_cloner.h
407   src/bindings/lua/lua_utils.h
408   src/bindings/lua/simgrid_lua.h
409   )
410
411 set(JMSG_C_SRC
412   src/bindings/java/jmsg.c
413   src/bindings/java/jmsg.h
414   src/bindings/java/jmsg_as.c
415   src/bindings/java/jmsg_as.h
416   src/bindings/java/jmsg_comm.c
417   src/bindings/java/jmsg_comm.h
418   src/bindings/java/jmsg_file.c
419   src/bindings/java/jmsg_file.h
420   src/bindings/java/jmsg_host.c
421   src/bindings/java/jmsg_host.h
422   src/bindings/java/jmsg_process.c
423   src/bindings/java/jmsg_process.h
424   src/bindings/java/jmsg_rngstream.c
425   src/bindings/java/jmsg_rngstream.h
426   src/bindings/java/jmsg_synchro.c
427   src/bindings/java/jmsg_synchro.h
428   src/bindings/java/jmsg_task.c
429   src/bindings/java/jmsg_task.h
430   src/bindings/java/jmsg_vm.c
431   src/bindings/java/jmsg_vm.h
432   src/bindings/java/jxbt_utilities.c
433   src/bindings/java/jxbt_utilities.h
434   src/bindings/java/smx_context_cojava.c
435   src/bindings/java/smx_context_cojava.h
436   src/bindings/java/smx_context_java.c
437   src/bindings/java/smx_context_java.h
438 )
439
440 set(JMSG_JAVA_SRC
441   src/bindings/java/org/simgrid/msg/As.java     
442   src/bindings/java/org/simgrid/msg/Comm.java
443   src/bindings/java/org/simgrid/msg/File.java
444   src/bindings/java/org/simgrid/msg/Host.java
445   src/bindings/java/org/simgrid/msg/HostFailureException.java
446   src/bindings/java/org/simgrid/msg/HostNotFoundException.java
447   src/bindings/java/org/simgrid/msg/JniException.java
448   src/bindings/java/org/simgrid/msg/Msg.java
449   src/bindings/java/org/simgrid/msg/MsgException.java
450   src/bindings/java/org/simgrid/msg/Mutex.java
451   src/bindings/java/org/simgrid/msg/Semaphore.java
452   src/bindings/java/org/simgrid/msg/NativeException.java
453   src/bindings/java/org/simgrid/msg/Process.java
454   src/bindings/java/org/simgrid/msg/ProcessKilledError.java
455   src/bindings/java/org/simgrid/msg/ProcessNotFoundException.java
456   src/bindings/java/org/simgrid/msg/RngStream.java
457   src/bindings/java/org/simgrid/msg/Task.java
458   src/bindings/java/org/simgrid/msg/TaskCancelledException.java
459   src/bindings/java/org/simgrid/msg/TimeoutException.java
460   src/bindings/java/org/simgrid/msg/TransferFailureException.java
461   src/bindings/java/org/simgrid/msg/VM.java
462 )
463
464 set(JTRACE_C_SRC
465   src/bindings/java/jtrace.c
466   src/bindings/java/jtrace.h
467 )
468
469 set(JTRACE_JAVA_SRC
470   src/bindings/java/org/simgrid/trace/Trace.java
471 )
472
473 if(HAVE_TRACING)
474   list(APPEND JMSG_C_SRC ${JTRACE_C_SRC})
475   list(APPEND JMSG_JAVA_SRC ${JTRACE_JAVA_SRC})
476 else()
477   list(APPEND EXTRA_DIST ${JTRACE_C_SRC})
478   list(APPEND EXTRA_DIST ${JTRACE_JAVA_SRC})
479 endif()
480
481 set(LUA_SRC
482   src/bindings/lua/lua_comm.c
483   src/bindings/lua/lua_host.c
484   src/bindings/lua/lua_platf.c
485   src/bindings/lua/lua_process.c
486   src/bindings/lua/lua_state_cloner.c
487   src/bindings/lua/lua_task.c
488   src/bindings/lua/lua_utils.c
489   src/bindings/lua/simgrid_lua.c
490   )
491
492 set(TRACING_SRC
493   src/instr/instr_config.c
494   src/instr/instr_interface.c
495   src/instr/instr_paje_containers.c
496   src/instr/instr_paje_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/mpif.h
541   include/smpi/smpi.h
542   include/smpi/smpi_cocci.h
543   include/smpi/smpi_main.h
544   include/surf/simgrid_dtd.h
545   include/surf/surf_routing.h
546   include/surf/surfxml_parse.h
547   include/xbt.h
548   include/xbt/RngStream.h
549   include/xbt/asserts.h
550   include/xbt/automaton.h
551   include/xbt/config.h
552   include/xbt/cunit.h
553   include/xbt/dict.h
554   include/xbt/dynar.h
555   include/xbt/ex.h
556   include/xbt/fifo.h
557   include/xbt/function_types.h
558   include/xbt/graph.h
559   include/xbt/graphxml.h
560   include/xbt/graphxml_parse.h
561   include/xbt/hash.h
562   include/xbt/heap.h
563   include/xbt/lib.h
564   include/xbt/log.h
565   include/xbt/mallocator.h
566   include/xbt/matrix.h
567   include/xbt/misc.h
568   include/xbt/mmalloc.h
569   include/xbt/module.h
570   include/xbt/parmap.h
571   include/xbt/peer.h
572   include/xbt/queue.h
573   include/xbt/replay.h
574   include/xbt/set.h
575   include/xbt/setset.h
576   include/xbt/str.h
577   include/xbt/strbuff.h
578   include/xbt/swag.h
579   include/xbt/synchro_core.h
580   include/xbt/sysdep.h
581   include/xbt/virtu.h
582   include/xbt/xbt_os_thread.h
583   )
584 set(source_of_generated_headers
585   include/simgrid_config.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/AS_hierarchy.png
711   doc/Doxyfile.in
712   doc/Layout.xml
713   doc/sg_thread_model.fig
714   doc/simix.fig
715   doc/surf_nutshell.fig
716   doc/triva-graph_configuration.png
717   doc/triva-graph_configuration.svg
718   doc/triva-graph_visualization.png
719   doc/triva-graph_visualization.svg
720   doc/triva-time_interval.png
721   doc/triva-time_interval.svg
722
723   doc/HelloWorld/CMakeLists.txt
724   doc/HelloWorld/HelloWorld.c
725   doc/HelloWorld/README
726
727   doc/doxygen/FAQ.doc
728   doc/doxygen/advanced.doc
729   doc/doxygen/bindings.doc
730   doc/doxygen/contributing.doc
731   doc/doxygen/deployment.doc
732   doc/doxygen/footer.html
733   doc/doxygen/getting_started.doc
734   doc/doxygen/header.html
735   doc/doxygen/help.doc
736   doc/doxygen/index.doc
737   doc/doxygen/inside_autotests.doc
738   doc/doxygen/inside_cmake.doc
739   doc/doxygen/inside_doxygen.doc
740   doc/doxygen/inside_extending.doc
741   doc/doxygen/inside_release.doc
742   doc/doxygen/install.doc
743   doc/doxygen/internals.doc
744   doc/doxygen/introduction.doc
745   doc/doxygen/module-msg.doc
746   doc/doxygen/module-sd.doc
747   doc/doxygen/module-simix.doc
748   doc/doxygen/module-surf.doc
749   doc/doxygen/module-smpi.doc
750   doc/doxygen/module-trace.doc
751   doc/doxygen/module-xbt.doc
752   doc/doxygen/modules.doc
753   doc/doxygen/options.doc
754   doc/doxygen/platform.doc
755   doc/doxygen/pls.doc
756   doc/doxygen/stylesheet.css
757   doc/doxygen/tracing.doc
758   doc/doxygen/use.doc
759
760   doc/msg-tuto-src/deployment0.xml
761   doc/msg-tuto-src/deployment1.xml
762   doc/msg-tuto-src/deployment2.xml
763   doc/msg-tuto-src/deployment3.xml
764   doc/msg-tuto-src/deployment_general.xml
765   doc/msg-tuto-src/masterworker0.c
766   doc/msg-tuto-src/masterworker1.c
767   doc/msg-tuto-src/masterworker2.c
768   doc/msg-tuto-src/masterworker3.c
769   doc/msg-tuto-src/masterworker4.c
770   doc/msg-tuto-src/platforms/cloud.xml
771   doc/msg-tuto-src/platforms/g5k.xml
772   doc/msg-tuto-src/platforms/griffon.xml
773   doc/msg-tuto-src/platforms/peers.xml
774   doc/msg-tuto-src/platforms/platform.xml
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/Paje_MSG_screenshot.jpg
793   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/Paje_MSG_screenshot_thn.jpg
794   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/SGicon.gif
795   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/SGicon.icns
796   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/SGicon.ico
797   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/awstats_logo3.png
798   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/output.goal.pdf
799   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/poster_thumbnail.png
800   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011.gif
801   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011.png
802   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011_small.png
803   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_win.bmp
804   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_win_2011.bmp
805   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_01.png
806   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_02.png
807   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_03.png
808   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_04.png
809   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_05.png
810   ${CMAKE_HOME_DIRECTORY}/doc/webcruft/win_install_06.png
811   )
812
813 set(bin_files
814   ${bin_files}
815   src/smpi/smpicc.in
816   src/smpi/smpif2c.in
817   src/smpi/smpiff.in
818   src/smpi/smpif90.in
819   src/smpi/smpirun.in
820   )
821
822 set(txt_files
823   ${txt_files}
824   AUTHORS
825   COPYING
826   README
827   README.java
828   ChangeLog
829   ChangeLog.SimGrid-java
830   INSTALL
831   LICENSE-LGPL-2.1
832   NEWS
833   TODO
834   configure
835   )
836
837 set(EXAMPLES_CMAKEFILES_TXT
838   examples/java/CMakeLists.txt
839   examples/java/async/CMakeLists.txt
840   examples/java/bittorrent/CMakeLists.txt
841   examples/java/chord/CMakeLists.txt
842   examples/java/cloud/CMakeLists.txt
843   examples/java/commTime/CMakeLists.txt
844   examples/java/io/CMakeLists.txt
845   examples/java/kademlia/CMakeLists.txt
846   examples/java/master_slave_bypass/CMakeLists.txt
847   examples/java/master_slave_kill/CMakeLists.txt
848   examples/java/masterslave/CMakeLists.txt
849   examples/java/migration/CMakeLists.txt
850   examples/java/mutualExclusion/CMakeLists.txt
851   examples/java/pingPong/CMakeLists.txt
852   examples/java/priority/CMakeLists.txt
853   examples/java/startKillTime/CMakeLists.txt
854   examples/java/suspend/CMakeLists.txt
855   examples/java/tracing/CMakeLists.txt
856   examples/lua/CMakeLists.txt
857   examples/msg/CMakeLists.txt
858   examples/msg/actions/CMakeLists.txt
859   examples/msg/bittorrent/CMakeLists.txt
860   examples/msg/chainsend/CMakeLists.txt
861   examples/msg/chord/CMakeLists.txt
862   examples/msg/cloud/CMakeLists.txt
863   examples/msg/gpu/CMakeLists.txt
864   examples/msg/gtnets/CMakeLists.txt
865   examples/msg/icomms/CMakeLists.txt
866   examples/msg/io/CMakeLists.txt
867   examples/msg/kademlia/CMakeLists.txt
868   examples/msg/masterslave/CMakeLists.txt
869   examples/msg/mc/CMakeLists.txt
870   examples/msg/migration/CMakeLists.txt
871   examples/msg/ns3/CMakeLists.txt
872   examples/msg/parallel_task/CMakeLists.txt
873   examples/msg/pastry/CMakeLists.txt
874   examples/msg/pmm/CMakeLists.txt
875   examples/msg/priority/CMakeLists.txt
876   examples/msg/properties/CMakeLists.txt
877   examples/msg/semaphores/CMakeLists.txt
878   examples/msg/sendrecv/CMakeLists.txt
879   examples/msg/start_kill_time/CMakeLists.txt
880   examples/msg/suspend/CMakeLists.txt
881   examples/msg/token_ring/CMakeLists.txt
882   examples/msg/tracing/CMakeLists.txt
883   examples/scala/CMakeLists.txt
884   examples/scala/master_slave_bypass/CMakeLists.txt
885   examples/scala/master_slave_kill/CMakeLists.txt
886   examples/scala/masterslave/CMakeLists.txt
887   examples/simdag/CMakeLists.txt
888   examples/simdag/dax/CMakeLists.txt
889   examples/simdag/dot/CMakeLists.txt
890   examples/simdag/goal/CMakeLists.txt
891   examples/simdag/metaxml/CMakeLists.txt
892   examples/simdag/properties/CMakeLists.txt
893   examples/simdag/scheduling/CMakeLists.txt
894   examples/smpi/CMakeLists.txt
895   examples/smpi/MM/CMakeLists.txt
896   examples/xbt/CMakeLists.txt
897   )
898
899 set(TESHSUITE_CMAKEFILES_TXT
900   teshsuite/CMakeLists.txt
901   teshsuite/msg/CMakeLists.txt
902   teshsuite/msg/trace/CMakeLists.txt
903   teshsuite/simdag/CMakeLists.txt
904   teshsuite/simdag/availability/CMakeLists.txt
905   teshsuite/simdag/network/CMakeLists.txt
906   teshsuite/simdag/network/mxn/CMakeLists.txt
907   teshsuite/simdag/network/p2p/CMakeLists.txt
908   teshsuite/simdag/partask/CMakeLists.txt
909   teshsuite/simdag/platforms/CMakeLists.txt
910   teshsuite/smpi/CMakeLists.txt
911   teshsuite/smpi/mpich-test/CMakeLists.txt
912   teshsuite/smpi/mpich-test/coll/CMakeLists.txt
913   teshsuite/smpi/mpich-test/context/CMakeLists.txt
914   teshsuite/smpi/mpich-test/env/CMakeLists.txt
915   teshsuite/smpi/mpich-test/profile/CMakeLists.txt
916   teshsuite/smpi/mpich-test/pt2pt/CMakeLists.txt
917   teshsuite/xbt/CMakeLists.txt
918   )
919
920 set(TOOLS_CMAKEFILES_TXT
921   tools/CMakeLists.txt
922   tools/graphicator/CMakeLists.txt
923   tools/tesh/CMakeLists.txt
924   )
925
926 set(TESTSUITE_CMAKEFILES_TXT
927   testsuite/surf/CMakeLists.txt
928   testsuite/xbt/CMakeLists.txt
929   )
930
931 set(CMAKE_SOURCE_FILES
932   CMakeLists.txt
933   buildtools/Cmake/AddTests.cmake
934   buildtools/Cmake/CTestConfig.cmake
935   buildtools/Cmake/CTestCustom.cmake
936   buildtools/Cmake/CompleteInFiles.cmake
937   buildtools/Cmake/DefinePackages.cmake
938   buildtools/Cmake/Distrib.cmake
939   buildtools/Cmake/Flags.cmake
940   buildtools/Cmake/GenerateDoc.cmake
941   buildtools/Cmake/GenerateDocWin.cmake
942   buildtools/Cmake/MaintainerMode.cmake
943   buildtools/Cmake/MakeExe.cmake
944   buildtools/Cmake/MakeJava.cmake
945   buildtools/Cmake/MakeLib.cmake
946   buildtools/Cmake/MakeLibWin.cmake
947   buildtools/Cmake/Modules/FindF2c.cmake
948   buildtools/Cmake/Modules/FindGTnets.cmake
949   buildtools/Cmake/Modules/FindGraphviz.cmake
950   buildtools/Cmake/Modules/FindLibunwind.cmake
951   buildtools/Cmake/Modules/FindLua51Simgrid.cmake
952   buildtools/Cmake/Modules/FindNS3.cmake
953   buildtools/Cmake/Modules/FindRngStream.cmake
954   buildtools/Cmake/Modules/FindRubySimgrid.cmake
955   buildtools/Cmake/Modules/FindScala.cmake
956   buildtools/Cmake/Modules/FindSimGrid.cmake
957   buildtools/Cmake/Modules/FindValgrind.cmake
958   buildtools/Cmake/Option.cmake
959   buildtools/Cmake/Pipol.cmake
960   buildtools/Cmake/PrintArgs.cmake
961   buildtools/Cmake/Scripts/Diff.pm
962   buildtools/Cmake/Scripts/Makefile.default
963   buildtools/Cmake/Scripts/SimGrid.packproj
964   buildtools/Cmake/Scripts/generate_memcheck_tests.pl
965   buildtools/Cmake/Scripts/generate_new_tests.pl
966   buildtools/Cmake/Scripts/my_valgrind.pl
967   buildtools/Cmake/Scripts/postinstall.sh
968   buildtools/Cmake/Scripts/preinstall.sh
969   buildtools/Cmake/Scripts/tesh.pl
970   buildtools/Cmake/Scripts/update_tesh.pl
971   buildtools/Cmake/Supernovae.cmake
972   buildtools/Cmake/UnitTesting.cmake
973   buildtools/Cmake/src/internal_config.h.in
974   buildtools/Cmake/src/simgrid.nsi.in
975   buildtools/Cmake/test_prog/prog_AC_CHECK_MCSC.c
976   buildtools/Cmake/test_prog/prog_gnu_dynlinker.c
977   buildtools/Cmake/test_prog/prog_gtnets.cpp
978   buildtools/Cmake/test_prog/prog_mutex_timedlock.c
979   buildtools/Cmake/test_prog/prog_printf_null.c
980   buildtools/Cmake/test_prog/prog_sem_init.c
981   buildtools/Cmake/test_prog/prog_sem_open.c
982   buildtools/Cmake/test_prog/prog_sem_timedwait.c
983   buildtools/Cmake/test_prog/prog_snprintf.c
984   buildtools/Cmake/test_prog/prog_stackgrowth.c
985   buildtools/Cmake/test_prog/prog_stacksetup.c
986   buildtools/Cmake/test_prog/prog_thread_storage.c
987   buildtools/Cmake/test_prog/prog_vsnprintf.c
988   )
989
990 set(PLATFORMS_EXAMPLES
991   examples/platforms/bypassASroute.xml
992   examples/platforms/bypassRoute.xml
993   examples/platforms/cloud.xml
994   examples/platforms/cluster.xml
995   examples/platforms/cluster_and_one_host.xml
996   examples/platforms/cluster_no_backbone.xml
997   examples/platforms/clusters_routing_full.xml
998   examples/platforms/conf/gridpp_grid_2004.conf
999   examples/platforms/conf/gridpp_grid_2004.xml
1000   examples/platforms/conf/lcg_sept2004_grid.conf
1001   examples/platforms/conf/lcg_sept2004_grid.xml
1002   examples/platforms/conf/transform_optorsim_platform.pl
1003   examples/platforms/config.xml
1004   examples/platforms/content/storage_content.txt
1005   examples/platforms/data_center.xml
1006   examples/platforms/g5k.xml
1007   examples/platforms/generation_scripts/create_hierarchical_clusters.pl
1008   examples/platforms/generation_scripts/enhancedDTDwithHierarchicalCluster.pl
1009   examples/platforms/generation_scripts/generate_g5k_platform.pl
1010   examples/platforms/generation_scripts/generate_g5k_platform_cabinets.pl
1011   examples/platforms/griffon.xml
1012   examples/platforms/meta_cluster.xml
1013   examples/platforms/multicore_machine.xml
1014   examples/platforms/prop.xml
1015   examples/platforms/routing_cluster.xml
1016   examples/platforms/storage.xml
1017   examples/platforms/syscoord/generate_peer_platform.pl
1018   examples/platforms/syscoord/median_harvard.syscoord
1019   examples/platforms/syscoord/median_harvard.xml
1020   examples/platforms/syscoord/median_meridian.syscoord
1021   examples/platforms/syscoord/median_meridian.xml
1022   examples/platforms/syscoord/median_p2psim.syscoord
1023   examples/platforms/syscoord/median_p2psim.xml
1024   examples/platforms/two_peers.xml
1025   examples/platforms/vivaldi.xml
1026   )
1027
1028 set(generated_src_files
1029   src/xbt/automaton/automaton_lexer.yy.c
1030   src/xbt/automaton/parserPromela.tab.cacc
1031   src/xbt/automaton/parserPromela.tab.hacc
1032   )
1033
1034 foreach(file ${generated_src_files})
1035   set_source_files_properties(${file} PROPERTIES GENERATED true)
1036 endforeach(file ${generated_src_files})