From 42683585e68cd704cdca45ab13843927b98a2b55 Mon Sep 17 00:00:00 2001 From: navarrop Date: Mon, 14 Feb 2011 16:25:25 +0000 Subject: [PATCH 1/1] Comsetics. Remove all generated files when make clean git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/contrib/trunk/simgrid-java@9622 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- CMakeLists.txt | 124 +++++++++--------- .../centralized/MutexCentral.java | 2 +- 2 files changed, 61 insertions(+), 65 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8b23be081c..170977ad1d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,6 +51,28 @@ set(JMSG_JAVA_SRC org/simgrid/msg/TransferFailureException.java ) +set(JAVA_EXAMPLES + examples/mutualExclusion/centralized/MutexCentral.java + examples/mutualExclusion/centralized/GrantTask.java + examples/mutualExclusion/centralized/Coordinator.java + examples/mutualExclusion/centralized/ReleaseTask.java + examples/mutualExclusion/centralized/Node.java + examples/mutualExclusion/centralized/RequestTask.java + examples/basic/FinalizeTask.java + examples/basic/Forwarder.java + examples/basic/Master.java + examples/basic/BasicTest.java + examples/basic/Slave.java + examples/commTime/FinalizeTask.java + examples/commTime/Master.java + examples/commTime/Slave.java + examples/commTime/CommTimeTest.java + examples/pingPong/PingPongTask.java + examples/pingPong/Sender.java + examples/pingPong/Receiver.java + examples/pingPong/PingPongTest.java +) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wcomment -Wformat -Wwrite-strings -Wno-unused-function -Wno-unused-parameter -Wno-strict-aliasing -Wno-format-nonliteral -Werror ") set(INCLUDE_PATH "-I${CMAKE_HOME_DIRECTORY}/src -I$ENV{SIMGRID_ROOT}/include -I$ENV{SIMGRID_ROOT}/src -I$ENV{SIMGRID_ROOT}/src/include") @@ -58,85 +80,59 @@ set(LIB_PATH "-L$ENV{SIMGRID_ROOT}/lib") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${INCLUDE_PATH} ${LIB_PATH}") -add_library(SG_java SHARED ${JMSG_C_SRC}) -target_link_libraries(SG_java -lsimgrid) -set_target_properties(SG_java PROPERTIES VERSION ${soversion}) - -set(JAVA_FILES ${JMSG_JAVA_SRC}) -set(JAVA_CLASSES ${JAVA_FILES}) +string(REPLACE "org/" "${CMAKE_HOME_DIRECTORY}/org/" JAVA_FILES "${JMSG_JAVA_SRC}") -string(REPLACE "org/" "${CMAKE_HOME_DIRECTORY}/org/" - JAVA_FILES "${JAVA_FILES}") +string(REPLACE "org/" "${CMAKE_HOME_DIRECTORY}/classes/org/" JMSG_JAVA_SRC_CLASS "${JMSG_JAVA_SRC}") +string(REPLACE ".java" ".class" JMSG_JAVA_SRC_CLASS "${JMSG_JAVA_SRC_CLASS}") -string(REPLACE "org/simgrid/msg" "${CMAKE_BINARY_DIR}/classes/simgrid/msg" - JAVA_CLASSES "${JAVA_CLASSES}") -string(REPLACE ".java" ".class;" - JAVA_CLASSES "${JAVA_CLASSES}") +string(REPLACE "examples/" "${CMAKE_HOME_DIRECTORY}/examples/" JAVA_EXAMPLES_CLASS "${JAVA_EXAMPLES}") +string(REPLACE ".java" ".class" JAVA_EXAMPLES_CLASS "${JAVA_EXAMPLES_CLASS}") -add_custom_command( - OUTPUT ${CMAKE_HOME_DIRECTORY}/classes/ - COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_HOME_DIRECTORY}/classes/" - ) +# TARGET SG_java +add_library(SG_java SHARED ${JMSG_C_SRC}) +target_link_libraries(SG_java -lsimgrid) +set_target_properties(SG_java PROPERTIES VERSION ${soversion}) -# compile all .java files with javac to .class -ADD_CUSTOM_COMMAND( - OUTPUT ${JAVA_CLASSES} - DEPENDS ${JMSG_JAVA_SRC} ${CMAKE_HOME_DIRECTORY}/classes/ - COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/classes/ - -cp ${CMAKE_HOME_DIRECTORY}/classes/ - ${JAVA_FILES} - COMMENT "Compiling java sources of core library..." +# TARGET java_classes +add_custom_command( + OUTPUT ${JMSG_JAVA_SRC_CLASS} + DEPENDS ${JMSG_JAVA_SRC} + COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_HOME_DIRECTORY}/classes/" + COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/classes/ + -cp ${CMAKE_HOME_DIRECTORY}/classes/ ${JAVA_FILES} + COMMENT "Compiling java sources of core library..." +) +add_custom_target(java_classes ALL + DEPENDS ${JMSG_JAVA_SRC_CLASS} ) -ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_HOME_DIRECTORY}/simgrid.jar - DEPENDS ${JAVA_CLASSES} - WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/classes +# TARGET simgrid_jar +add_custom_target(simgrid_jar ALL COMMAND ${JAVA_ARCHIVE} -cvf ${CMAKE_HOME_DIRECTORY}/simgrid.jar . COMMENT "Building simgrid.jar..." + WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/classes ) -ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_HOME_DIRECTORY}/examples/basic/BasicTest.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/FinalizeTask.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/Forwarder.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/Slave.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/Master.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/PingPongTest.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Sender.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/PingPongTask.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Receiver.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/FinalizeTask.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/CommTimeTest.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Slave.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Master.class - ${CMAKE_HOME_DIRECTORY}/lib/libsimgrid.so - - DEPENDS SG_java - ${CMAKE_HOME_DIRECTORY}/simgrid.jar - - COMMENT "Build examples for java" +# TARGET simgrid_java_examples +add_custom_command( + COMMENT "Build examples for java" + OUTPUT ${JAVA_EXAMPLES_CLASS} COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/basic/*.java COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/pingPong/*.java - COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/pingPong/*.java + COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/commTime/*.java + COMMAND ${JAVA_COMPILE} -d ${CMAKE_HOME_DIRECTORY}/examples -cp ${CMAKE_HOME_DIRECTORY}/simgrid.jar ${CMAKE_HOME_DIRECTORY}/examples/mutualExclusion/centralized/*.java +) +add_custom_target(simgrid_java_examples ALL + DEPENDS ${JAVA_EXAMPLES_CLASS} ) -ADD_CUSTOM_TARGET(simgrid_java_examples ALL - DEPENDS ${CMAKE_HOME_DIRECTORY}/examples/basic/BasicTest.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/FinalizeTask.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/Forwarder.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/Slave.class - ${CMAKE_HOME_DIRECTORY}/examples/basic/Master.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/PingPongTest.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Sender.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/PingPongTask.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Receiver.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/FinalizeTask.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/CommTimeTest.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Slave.class - ${CMAKE_HOME_DIRECTORY}/examples/pingPong/Master.class - +# Declare dependencies +add_dependencies(simgrid_jar java_classes) +add_dependencies(simgrid_java_examples simgrid_jar SG_java) + +SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES +${CMAKE_HOME_DIRECTORY}/simgrid.jar ) ##################### diff --git a/examples/mutualExclusion/centralized/MutexCentral.java b/examples/mutualExclusion/centralized/MutexCentral.java index fe4d8e8105..425ac49ef9 100644 --- a/examples/mutualExclusion/centralized/MutexCentral.java +++ b/examples/mutualExclusion/centralized/MutexCentral.java @@ -12,7 +12,7 @@ package mutualExclusion.centralized; import org.simgrid.msg.Msg; import org.simgrid.msg.NativeException; -import simgrid.msg.*; +import org.simgrid.msg.*; public class MutexCentral { -- 2.20.1