Logo AND Algorithmique Numérique Distribuée

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