Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
should fix build
[simgrid.git] / examples / java / CMakeLists.txt
1 set(process_kill_sources      ${CMAKE_CURRENT_SOURCE_DIR}/process/kill/Main.java
2                               ${CMAKE_CURRENT_SOURCE_DIR}/process/kill/Killer.java
3                               ${CMAKE_CURRENT_SOURCE_DIR}/process/kill/Victim.java)
4 set(process_migration_sources ${CMAKE_CURRENT_SOURCE_DIR}/process/migration/Main.java
5                               ${CMAKE_CURRENT_SOURCE_DIR}/process/migration/Emigrant.java
6                               ${CMAKE_CURRENT_SOURCE_DIR}/process/migration/Policeman.java)
7 set(process_suspend_sources   ${CMAKE_CURRENT_SOURCE_DIR}/process/suspend/Main.java
8                               ${CMAKE_CURRENT_SOURCE_DIR}/process/suspend/DreamMaster.java
9                               ${CMAKE_CURRENT_SOURCE_DIR}/process/suspend/LazyGuy.java)
10
11 foreach (example process_kill process_migration process_suspend)
12   string (REPLACE "_" "/" example_dir ${example})
13   if(enable_java)
14
15     add_custom_command(
16       COMMENT "Building java_${example}..."
17       OUTPUT ${example_dir}/java_${example}_compiled
18       DEPENDS ${example_sources} simgrid-java_jar ${SIMGRID_JAR}
19       COMMAND ${JAVA_COMPILE} -classpath ${SIMGRID_JAR} -d ${CMAKE_CURRENT_SOURCE_DIR} ${${example}_sources}
20       COMMAND ${CMAKE_COMMAND} -E remove ${example_dir}/java_${example}_compiled
21       COMMAND ${CMAKE_COMMAND} -E touch ${example_dir}/java_${example}_compiled
22     )
23     add_custom_target(${example} ALL DEPENDS ${example_dir}/java_${example}_compiled)
24   endif()
25   set(examples_src  ${examples_src}  ${${example}_sources})
26   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/${example_dir}/${example}.tesh)
27 endforeach()
28
29 set(examples_src  ${examples_src}  PARENT_SCOPE)
30 set(tesh_files    ${tesh_files}    PARENT_SCOPE)
31
32 if(enable_java)
33   foreach (example process_kill process_migration process_suspend)
34     string (REPLACE "_" "/" example_dir ${example})
35     ADD_TESH(java-${example}  --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/java --setenv classpath=${TESH_CLASSPATH} --cd ${CMAKE_BINARY_DIR}/examples/java ${CMAKE_HOME_DIRECTORY}/examples/java/${example_dir}/${example}.tesh)
36   endforeach()
37 endif()
38