X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a321c6c29f2ef6c7de3dfd00f6ce8e454bde0ab6..17f966eb23cc283701f1334ba7a6f023753ac182:/buildtools/Cmake/src/CMakeDistrib.txt diff --git a/buildtools/Cmake/src/CMakeDistrib.txt b/buildtools/Cmake/src/CMakeDistrib.txt old mode 100644 new mode 100755 index 6930171d73..ab7e562265 --- a/buildtools/Cmake/src/CMakeDistrib.txt +++ b/buildtools/Cmake/src/CMakeDistrib.txt @@ -1,62 +1,33 @@ -set(simgrid_version "3.3.5") +set(simgrid_version "3.4") set(CMAKE_PROJECT_NAME "${PROJECT_NAME}") set(CPACK_PACKAGE_NAME "${PROJECT_NAME}") set(CPACK_PROJECT_NAME "${PROJECT_NAME}") -set(CPACK_PACKAGE_FILE_NAME "simgrid-${simgrid_version}_rev_${SVN_VERSION}${GIT_VERSION}") +set(CPACK_PACKAGE_FILE_NAME "simgrid-${simgrid_version}~${SVN_VERSION}${GIT_DATE}") set(CPACK_GENERATOR "TBZ2") #;TGZ;TZ;ZIP -set(to_svg - ${XBT_RL_SRC} - ${EXTRA_DIST} - ${SMPI_SRC} - ${JMSG_C_SRC} - ${JMSG_JAVA_SRC} - ${GRAS_RL_SRC} - ${XBT_SRC} - ${GTNETS_SRC} - ${SURF_SRC} - ${SIMIX_SRC} - ${MSG_SRC} - ${SIMDAG_SRC} - ${GRAS_COMMON_SRC} - ${GRAS_SG_SRC} - ${AMOK_SRC} - ${LUA_SRC} - ${RUBY_SRC} - ${add_src_files} - ${include_files} - ${xml_files} - ${tesh_files} - ${txt_files} - ${PROJECT_DIRECTORY}/./CMakeLists.txt - ${PROJECT_DIRECTORY}/./AUTHORS - ${PROJECT_DIRECTORY}/./ChangeLog - ${PROJECT_DIRECTORY}/./COPYING - ${PROJECT_DIRECTORY}/./missing - ${PROJECT_DIRECTORY}/./NEWS - ${PROJECT_DIRECTORY}/./README - ${PROJECT_DIRECTORY}/./README.IEEE - ${PROJECT_DIRECTORY}/./TODO - ${PROJECT_DIRECTORY}/./src/smpi/smpicc.in - ${PROJECT_DIRECTORY}/./src/smpi/smpirun.in - ${PROJECT_DIRECTORY}/./src/bindings/ruby/simgrid_ruby.c - ${PROJECT_DIRECTORY}/./src/bindings/ruby_bindings.h - ${PROJECT_DIRECTORY}/./src/simix/smx_context_sysv_private.h -) - +foreach(file ${script_to_install}) + get_filename_component(file_location ${file} PATH) + string(REPLACE "${PROJECT_DIRECTORY}/" "/" file_location ${file_location}) + install(FILES ${file} DESTINATION "${file_location}") +endforeach(file ${EXTRA_DIST}) + foreach(file ${to_svg}) get_filename_component(file_location ${file} PATH) string(REPLACE "${PROJECT_DIRECTORY}/" "/" file_location ${file_location}) - #message("install: ${file}\nDESTINATION: ${file_location}") install(FILES ${file} DESTINATION "${file_location}") endforeach(file ${EXTRA_DIST}) +foreach(file ${TEST_UNITS}) + install(FILES src/${file} DESTINATION "/src/") +endforeach(file ${TEST_UNITS}) + ###copy doc install(DIRECTORY "${PROJECT_DIRECTORY}/doc/" DESTINATION "/doc/" PATTERN ".svn" EXCLUDE PATTERN ".git" EXCLUDE +PATTERN "*.o" EXCLUDE PATTERN "*~" EXCLUDE ) @@ -64,36 +35,121 @@ PATTERN "*~" EXCLUDE install(DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/" DESTINATION "/buildtools/Cmake/" PATTERN ".svn" EXCLUDE -PATTERN ".git" EXCLUDE +PATTERN ".git" EXCLUDE +PATTERN "*.o" EXCLUDE PATTERN "*~" EXCLUDE ) set(CPACK_SET_DESTDIR on) set(CMAKE_INSTALL_PREFIX ${prefix} CACHE TYPE INTERNAL FORCE) +string(REPLACE ";" "\t" install_HEADERS "${install_HEADERS}") +string(REPLACE ";" "\t" install_libs "${install_libs}") +set(uninstall_bins "${install_bins}") +string(REPLACE "${PROJECT_DIRECTORY}/src/smpi" "${prefix}/bin" uninstall_bins "${uninstall_bins}") +string(REPLACE "${PROJECT_DIRECTORY}/tools/gras" "${prefix}/bin" uninstall_bins "${uninstall_bins}") +string(REPLACE "${PROJECT_DIRECTORY}/tools/tesh" "${prefix}/bin" uninstall_bins "${uninstall_bins}") +string(REPLACE "${PROJECT_DIRECTORY}/tools/MSG_visualization/colorize.pl" "${prefix}/bin/simgrid_colorizer.pl" uninstall_bins "${uninstall_bins}") +string(REPLACE "${PROJECT_DIRECTORY}/src/.libs" "${prefix}/lib" uninstall_libs "${install_libs}") +string(REPLACE "./" "${prefix}/" uninstall_HEADERS "${install_HEADERS}") + +string(REPLACE "/usr/lib/ruby" "" install_link_ruby "${RUBY_INCLUDE_PATH}") + add_custom_target(install-simgrid -COMMAND mkdir -p ${prefix} -COMMAND mkdir -p ${prefix}/lib -COMMAND mkdir -p ${prefix}/include -COMMAND mkdir -p ${prefix}/doc -COMMAND mkdir -p ${prefix}/doc/simgrid -COMMAND mkdir -p ${prefix}/doc/simgrid/html -COMMAND cp -rf ${PROJECT_DIRECTORY}/src/.libs/* ${prefix}/lib/ -COMMAND echo "install lib ok" -COMMAND cp -rf ${PROJECT_DIRECTORY}/include/ ${prefix} -COMMAND echo "install include ok" -COMMAND cp -rf ${PROJECT_DIRECTORY}/doc/html/ ${prefix}/doc/simgrid -COMMAND echo "install doc ok" +COMMAND mkdir -p $ENV{DESTDIR}${prefix} +COMMAND mkdir -p $ENV{DESTDIR}${prefix}/bin +COMMAND mkdir -p $ENV{DESTDIR}${prefix}/lib +COMMAND mkdir -p $ENV{DESTDIR}${prefix}/include +COMMAND mkdir -p $ENV{DESTDIR}${prefix}/doc +COMMAND mkdir -p $ENV{DESTDIR}${prefix}/doc/simgrid +COMMAND mkdir -p $ENV{DESTDIR}${prefix}/doc/simgrid/html +COMMAND cp ${install_bins} $ENV{DESTDIR}${prefix}/bin +COMMAND cp ${PROJECT_DIRECTORY}/tools/MSG_visualization/colorize.pl $ENV{DESTDIR}${prefix}/bin/simgrid_colorizer.pl +COMMAND echo "install bin OK" +COMMAND cp ${install_libs} $ENV{DESTDIR}${prefix}/lib +COMMAND echo "install lib OK" +COMMAND cp --parent ${install_HEADERS} $ENV{DESTDIR}${prefix} +COMMAND echo "install include OK" +COMMAND cp -rf ${PROJECT_DIRECTORY}/doc/html/ $ENV{DESTDIR}${prefix}/doc/simgrid +COMMAND echo "install doc/html OK" +WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" +) + +foreach(file ${ex_to_svg}) + string(REPLACE "${PROJECT_DIRECTORY}" "." file "${file}") + add_custom_command(TARGET install-simgrid + COMMAND cp --parents -f ${file} $ENV{DESTDIR}${prefix}/doc/simgrid/ + WORKING_DIRECTORY "${PROJECT_DIRECTORY}" + ) +endforeach(file ${ex_to_svg}) +add_custom_command(TARGET install-simgrid + COMMAND echo "install doc/examples OK" + WORKING_DIRECTORY "${PROJECT_DIRECTORY}" ) add_custom_target(uninstall -COMMAND echo "uninstall simgrid" -COMMAND echo "TODO" +COMMAND rm -rf ${prefix}/doc/simgrid +COMMAND echo "uninstall doc ok" +COMMAND rm ${uninstall_libs} +COMMAND echo "uninstall lib ok" +COMMAND rm ${uninstall_bins} +COMMAND rm ${prefix}/bin/simgrid_colorizer.pl +COMMAND echo "uninstall bin ok" +COMMAND rm ${uninstall_HEADERS} +COMMAND echo "uninstal include ok" +COMMAND rm -R ${prefix}/include/amok ${prefix}/include/gras ${prefix}/include/instr ${prefix}/include/msg +COMMAND rm -R ${prefix}/include/simdag ${prefix}/include/smpi ${prefix}/include/surf ${prefix}/include/xbt +WORKING_DIRECTORY "${prefix}" ) +if(HAVE_JAVA) + add_custom_command(TARGET install-simgrid + COMMAND echo "install binding java OK" + COMMAND mkdir --parent $ENV{DESTDIR}${prefix}/share/ + COMMAND cp ${PROJECT_DIRECTORY}/src/simgrid.jar $ENV{DESTDIR}${prefix}/share/simgrid.jar + WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" + ) + add_custom_command(TARGET uninstall + COMMAND rm ${prefix}/share/simgrid.jar + COMMAND echo "uninstall binding java" + WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" + ) +endif(HAVE_JAVA) + +if(HAVE_LUA) + add_custom_command(TARGET install-simgrid + COMMAND echo "install binding lua OK" + COMMAND mkdir --parent $ENV{DESTDIR}${prefix}/lib/lua/5.1/ + COMMAND ln -sf ${prefix}/lib/libsimgrid.so $ENV{DESTDIR}${prefix}/lib/lua/5.1/simgrid.so + WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" + ) + add_custom_command(TARGET uninstall + COMMAND echo "uninstall binding lua" + COMMAND rm ${prefix}/lib/lua/5.1/simgrid.so + WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" + ) +endif(HAVE_LUA) + +if(HAVE_RUBY) + add_custom_command(TARGET install-simgrid + COMMAND echo "install binding ruby OK" + COMMAND mkdir --parent $ENV{DESTDIR}${prefix}/lib/ruby${install_link_ruby}/ + COMMAND ln -sf ${prefix}/lib/libsimgrid.so $ENV{DESTDIR}${prefix}/lib/ruby${install_link_ruby}/libsimgrid.so + COMMAND cp ${PROJECT_DIRECTORY}/src/bindings/ruby/simgrid.rb $ENV{DESTDIR}${prefix}/lib/ruby${install_link_ruby}/simgrid.rb + WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" + ) + add_custom_command(TARGET uninstall + COMMAND echo "uninstall binding ruby" + COMMAND rm ${prefix}/lib/ruby${install_link_ruby}/libsimgrid.so + COMMAND rm ${prefix}/lib/ruby${install_link_ruby}/simgrid.rb + WORKING_DIRECTORY "${PROJECT_DIRECTORY}/" + ) +endif(HAVE_RUBY) + add_custom_target(html COMMAND echo "Make the html doc" -COMMAND cmake ./ +COMMAND echo "cmake -DBIBTEX2HTML=${BIBTEX2HTML} ./" +COMMAND cmake -DBIBTEX2HTML=${BIBTEX2HTML} ./ COMMAND rm -rf ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/CMakeFiles COMMAND rm ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/CMakeCache.txt COMMAND rm ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/cmake_install.cmake @@ -101,4 +157,108 @@ COMMAND rm ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/Makefile WORKING_DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc" ) +add_custom_target(dist +COMMAND make package +COMMAND rm -rf _CPack_Packages +#WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) +add_custom_target(distcheck +COMMAND make package +COMMAND rm -rf _CPack_Packages +COMMAND tar xvf ${CPACK_PACKAGE_FILE_NAME}.tar.bz2 +COMMAND cd ${CPACK_PACKAGE_FILE_NAME} && cmake . +COMMAND cd ${CPACK_PACKAGE_FILE_NAME} && make +COMMAND cd ${CPACK_PACKAGE_FILE_NAME} && make test +COMMAND rm -rf ${CPACK_PACKAGE_FILE_NAME} +#WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) + +add_custom_target(maintainer-clean +COMMAND rm -f src/config_unit.c +COMMAND rm -f src/cunit_unit.c +COMMAND rm -f src/dict_unit.c +COMMAND rm -f src/dynar_unit.c +COMMAND rm -f src/ex_unit.c +COMMAND rm -f src/set_unit.c +COMMAND rm -f src/simgrid_units_main.c +COMMAND rm -f src/swag_unit.c +COMMAND rm -f src/xbt_sha_unit.c +COMMAND rm -f src/xbt_str_unit.c +COMMAND rm -f src/xbt_strbuff_unit.c +COMMAND rm -f src/xbt_synchro_unit.c +WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) + +add_custom_target(supernovae-clean +COMMAND rm -f src/supernovae_gras.c +COMMAND rm -f src/supernovae_sg.c +COMMAND rm -f src/supernovae_smpi.c +WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) + +add_custom_target(doc-clean +COMMAND rm -f doc/all_bib.html +COMMAND rm -f doc/all_bib.latin1.html +COMMAND rm -f doc/all_bib.latin1.html.tmp +COMMAND rm -f doc/logcategories.sh +COMMAND rm -f doc/publis_core.bib +COMMAND rm -f doc/publis_core_bib.html +COMMAND rm -f doc/publis_core_bib.latin1.html +COMMAND rm -f doc/publis_core_bib.latin1.html.tmp +COMMAND rm -f doc/publis_count.html +COMMAND rm -f doc/publis_extern.bib +COMMAND rm -f doc/publis_extern_bib.html +COMMAND rm -f doc/publis_extern_bib.latin1.html +COMMAND rm -f doc/publis_extern_bib.latin1.html.tmp +COMMAND rm -f doc/publis_intra.bib +COMMAND rm -f doc/publis_intra_bib.html +COMMAND rm -f doc/publis_intra_bib.latin1.html +COMMAND rm -f doc/publis_intra_bib.latin1.html.tmp +COMMAND rm -f doc/tmp.realtoc +COMMAND rm -f doc/using_bib.html +COMMAND rm -f doc/using_bib.latin1.html +COMMAND rm -f doc/using_bib.latin1.html.tmp +COMMAND rm -f doc/realtoc.sh +WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) + +add_custom_target(java-clean +COMMAND rm -f src/simgrid.jar +COMMAND rm -rf src/.classes +COMMAND rm -f examples/java/basic/BasicTest.class +COMMAND rm -f examples/java/basic/FinalizeTask.class +COMMAND rm -f examples/java/basic/Forwarder.class +COMMAND rm -f examples/java/basic/Master.class +COMMAND rm -f examples/java/basic/Slave.class +COMMAND rm -f examples/java/comm_time/CommTimeTest.class +COMMAND rm -f examples/java/comm_time/FinalizeTask.class +COMMAND rm -f examples/java/comm_time/Master.class +COMMAND rm -f examples/java/comm_time/Slave.class +COMMAND rm -f examples/java/ping_pong/PingPongTask.class +COMMAND rm -f examples/java/ping_pong/PingPongTest.class +COMMAND rm -f examples/java/ping_pong/Receiver.class +COMMAND rm -f examples/java/ping_pong/Sender.class +COMMAND rm -f examples/java/suspend/DreamMaster.class +COMMAND rm -f examples/java/suspend/LazyGuy.class +COMMAND rm -f examples/java/suspend/SuspendTest.class +WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) + +add_custom_target(all-clean +COMMAND make clean +COMMAND make java-clean +COMMAND make doc-clean +COMMAND make supernovae-clean +COMMAND make maintainer-clean +) + +add_custom_target(sync-gforge +COMMAND chmod g+rw -R doc/ +COMMAND chmod a+rX -R doc/ +COMMAND rsync --verbose --cvs-exclude --compress --delete --delete-excluded --rsh=ssh --ignore-times --recursive --links --perms --times --omit-dir-times doc/html/ scm.gforge.inria.fr:/home/groups/simgrid/htdocs/doc/ || true +COMMAND scp doc/index.php doc/webcruft/robots.txt scm.gforge.inria.fr:/home/groups/simgrid/htdocs/ +COMMAND scp doc/html/simgrid_modules2.png doc/html/simgrid_modules.png doc/webcruft/simgrid_logo.png doc/webcruft/simgrid_logo_small.png scm.gforge.inria.fr:/home/groups/simgrid/htdocs/ +WORKING_DIRECTORY "${PROJECT_DIRECTORY}" +) + include(CPack)