1 set(JAVA_FILES ${JMSG_JAVA_SRC})
2 set(JAVA_CLASSES ${JAVA_FILES})
4 string(REPLACE "src/java/" "${PROJECT_DIRECTORY}/src/java/"
5 JAVA_FILES "${JAVA_FILES}")
7 string(REPLACE "src/java/simgrid/msg" "${CMAKE_CURRENT_BINARY_DIR}/classes/simgrid/msg"
8 JAVA_CLASSES "${JAVA_CLASSES}")
9 string(REPLACE ".java" ".class;"
10 JAVA_CLASSES "${JAVA_CLASSES}")
14 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/classes/
15 COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/classes/")
19 COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_CURRENT_BINARY_DIR}/classes/)
21 # compile all .java files with javac to .class
23 OUTPUT ${JAVA_CLASSES}
24 DEPENDS ${JAVA_FILES} ${CMAKE_CURRENT_BINARY_DIR}/classes/
25 COMMAND ${JAVA_COMPILE} -d ${CMAKE_CURRENT_BINARY_DIR}/classes/
26 -cp ${CMAKE_CURRENT_BINARY_DIR}/classes/
28 COMMENT "Compiling java sources of core library..."
33 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/simgrid.jar
34 DEPENDS ${JAVA_CLASSES}
35 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/classes
36 COMMAND ${JAVA_ARCHIVE} -cvf ${CMAKE_CURRENT_BINARY_DIR}/simgrid.jar .
37 COMMENT "Building simgrid.jar..."
40 ADD_CUSTOM_TARGET(java_basic ALL
41 COMMAND ${JAVA_COMPILE} -d ${PROJECT_DIRECTORY}/examples/java/basic -cp ${PROJECT_DIRECTORY}/src/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/basic/*.java
42 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/basic/*.java
45 ADD_CUSTOM_TARGET(java_ping_pong ALL
46 COMMAND ${JAVA_COMPILE} -d ${PROJECT_DIRECTORY}/examples/java/ping_pong -cp ${PROJECT_DIRECTORY}/src/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/ping_pong/*.java
47 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/ping_pong/*.java
50 ADD_CUSTOM_TARGET(java_comm_time ALL
51 COMMAND ${JAVA_COMPILE} -d ${PROJECT_DIRECTORY}/examples/java/comm_time -cp ${PROJECT_DIRECTORY}/src/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/comm_time/*.java
52 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/comm_time/*.java
55 ADD_CUSTOM_TARGET(java_suspend ALL
56 COMMAND ${JAVA_COMPILE} -d ${PROJECT_DIRECTORY}/examples/java/suspend -cp ${PROJECT_DIRECTORY}/src/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/suspend/*.java
57 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/simgrid.jar ${PROJECT_DIRECTORY}/examples/java/suspend/*.java