set(simgrid_version "3.3.5") 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}~${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} ${TRACING_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/smpicc ${PROJECT_DIRECTORY}/./src/smpi/smpirun.in ${PROJECT_DIRECTORY}/./src/smpi/smpirun ${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 ${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}) ###copy doc install(DIRECTORY "${PROJECT_DIRECTORY}/doc/" DESTINATION "/doc/" PATTERN ".svn" EXCLUDE PATTERN ".git" EXCLUDE PATTERN "*.o" EXCLUDE PATTERN "*~" EXCLUDE ) ###buildtools install(DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/" DESTINATION "/buildtools/Cmake/" PATTERN ".svn" 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}") 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 ${install_libs} ${prefix}/lib COMMAND echo "install lib ok" COMMAND cp -rf ${PROJECT_DIRECTORY}/doc/html/ ${prefix}/doc/simgrid COMMAND echo "install doc ok" COMMAND cp --parent ${install_HEADERS} ${prefix} COMMAND echo "install include ok" WORKING_DIRECTORY "${PROJECT_DIRECTORY}/./" ) add_custom_target(uninstall COMMAND echo "uninstall simgrid" COMMAND echo "TODO" ) add_custom_target(html COMMAND echo "Make the html doc" 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 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 ${PROJECT_DIRECTORY}/_CPack_Packages WORKING_DIRECTORY "${PROJECT_DIRECTORY}" ) add_custom_target(distcheck COMMAND make package COMMAND rm -rf ${PROJECT_DIRECTORY}/_CPack_Packages COMMAND tar xvf ${CPACK_PACKAGE_FILE_NAME}.tar.bz2 COMMAND cd ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} && cmake . COMMAND cd ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} && make COMMAND cd ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} && make test COMMAND rm -rf ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} WORKING_DIRECTORY "${PROJECT_DIRECTORY}" ) include(CPack)