From: Arnaud Giersch Date: Thu, 7 Nov 2013 13:46:45 +0000 (+0100) Subject: Revert "clean the build of the jarfile so that it works with cmake >= 2.8.12 too" X-Git-Tag: v3_11_beta~358 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/0f116580b8868f181e8bc3f78d0f1f783ad3eef8 Revert "clean the build of the jarfile so that it works with cmake >= 2.8.12 too" This reverts commit 9d40a7a7a470739d02bf4ad99c21ff55b4c9fe2b. --- diff --git a/buildtools/Cmake/MakeJava.cmake b/buildtools/Cmake/MakeJava.cmake index b39437002b..52de66de27 100644 --- a/buildtools/Cmake/MakeJava.cmake +++ b/buildtools/Cmake/MakeJava.cmake @@ -56,6 +56,7 @@ endif() ## Files to include in simgrid.jar ## set(SIMGRID_JAR "${CMAKE_BINARY_DIR}/simgrid.jar") +set(MANIFEST_FILE "${CMAKE_HOME_DIRECTORY}/src/bindings/java/MANIFEST.MF") set(LIBSIMGRID_SO libsimgrid${CMAKE_SHARED_LIBRARY_SUFFIX}) set(LIBSG_JAVA_SO @@ -85,23 +86,32 @@ endif() ## Here is how to build simgrid.jar ## -set(CMAKE_JAVA_JAR_ENTRY_POINT org/simgrid/msg/Msg) set(CMAKE_JAVA_TARGET_OUTPUT_NAME simgrid) -add_jar(simgrid-java_jar - SOURCES ${JMSG_JAVA_SRC} - ${CMAKE_HOME_DIRECTORY}/COPYING - ${CMAKE_HOME_DIRECTORY}/ChangeLog - ${CMAKE_HOME_DIRECTORY}/LICENSE-LGPL-2.1 - NATIVE/ - ) - -add_custom_command(TARGET simgrid-java_jar PRE_BUILD +add_jar(simgrid-java_pre_jar ${JMSG_JAVA_SRC}) + +add_custom_command( + COMMENT "Finalize simgrid.jar..." + OUTPUT ${SIMGRID_JAR}_finalized + DEPENDS simgrid simgrid-java simgrid-java_pre_jar + ${SIMGRID_JAR} ${MANIFEST_FILE} + ${CMAKE_BINARY_DIR}/lib/${LIBSIMGRID_SO} + ${CMAKE_BINARY_DIR}/lib/${LIBSG_JAVA_SO} + ${CMAKE_HOME_DIRECTORY}/COPYING + ${CMAKE_HOME_DIRECTORY}/ChangeLog + ${CMAKE_HOME_DIRECTORY}/ChangeLog.SimGrid-java + ${CMAKE_HOME_DIRECTORY}/LICENSE-LGPL-2.1 COMMAND ${CMAKE_COMMAND} -E remove_directory "NATIVE" COMMAND ${CMAKE_COMMAND} -E make_directory "${JSG_BUNDLE}" COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/lib/${LIBSIMGRID_SO}" "${JSG_BUNDLE}" COMMAND ${STRIP_COMMAND} -S "${JSG_BUNDLE}/${LIBSIMGRID_SO}" COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_BINARY_DIR}/lib/${LIBSG_JAVA_SO}" "${JSG_BUNDLE}" COMMAND ${STRIP_COMMAND} -S "${JSG_BUNDLE}/${LIBSG_JAVA_SO}" + COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_HOME_DIRECTORY}/COPYING" "${JSG_BUNDLE}" + COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_HOME_DIRECTORY}/ChangeLog" "${JSG_BUNDLE}" + COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_HOME_DIRECTORY}/ChangeLog.SimGrid-java" "${JSG_BUNDLE}" + COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_HOME_DIRECTORY}/LICENSE-LGPL-2.1" "${JSG_BUNDLE}" + COMMAND ${JAVA_ARCHIVE} -uvmf ${MANIFEST_FILE} ${SIMGRID_JAR} "NATIVE" + COMMAND ${CMAKE_COMMAND} -E remove ${SIMGRID_JAR}_finalized + COMMAND ${CMAKE_COMMAND} -E touch ${SIMGRID_JAR}_finalized ) - -add_dependencies(simgrid-java_jar simgrid-java) \ No newline at end of file +add_custom_target(simgrid-java_jar ALL DEPENDS ${SIMGRID_JAR}_finalized) diff --git a/src/bindings/java/MANIFEST.MF b/src/bindings/java/MANIFEST.MF new file mode 100644 index 0000000000..8d2c03944a --- /dev/null +++ b/src/bindings/java/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Built-By: Da SimGrid team +Main-Class: org.simgrid.msg.Msg +Class-Path: . +