Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
making the sources for the instrumentation be present in the distribution
[simgrid.git] / buildtools / Cmake / src / CMakeDistrib.txt
1 set(simgrid_version "3.3.5")
2
3 set(CMAKE_PROJECT_NAME "${PROJECT_NAME}")
4 set(CPACK_PACKAGE_NAME "${PROJECT_NAME}")
5 set(CPACK_PROJECT_NAME "${PROJECT_NAME}")
6 set(CPACK_PACKAGE_FILE_NAME "simgrid-${simgrid_version}~${SVN_VERSION}${GIT_DATE}")
7 set(CPACK_GENERATOR "TBZ2") #;TGZ;TZ;ZIP
8
9 set(to_svg      
10         ${XBT_RL_SRC}
11         ${EXTRA_DIST}
12         ${SMPI_SRC}
13         ${JMSG_C_SRC}
14         ${JMSG_JAVA_SRC}
15         ${GRAS_RL_SRC}
16         ${XBT_SRC}
17         ${GTNETS_SRC}
18         ${SURF_SRC}
19         ${SIMIX_SRC}
20         ${TRACING_SRC}
21         ${MSG_SRC}
22         ${SIMDAG_SRC}
23         ${GRAS_COMMON_SRC}
24         ${GRAS_SG_SRC}
25         ${AMOK_SRC}
26         ${LUA_SRC}
27         ${RUBY_SRC}
28         ${add_src_files}
29         ${include_files}
30         ${xml_files}
31         ${tesh_files}
32         ${txt_files}
33         ${PROJECT_DIRECTORY}/./CMakeLists.txt
34         ${PROJECT_DIRECTORY}/./AUTHORS
35         ${PROJECT_DIRECTORY}/./ChangeLog
36         ${PROJECT_DIRECTORY}/./COPYING
37         ${PROJECT_DIRECTORY}/./missing
38         ${PROJECT_DIRECTORY}/./NEWS
39         ${PROJECT_DIRECTORY}/./README
40         ${PROJECT_DIRECTORY}/./README.IEEE
41         ${PROJECT_DIRECTORY}/./TODO
42         ${PROJECT_DIRECTORY}/./src/smpi/smpicc.in
43         ${PROJECT_DIRECTORY}/./src/smpi/smpirun.in
44         ${PROJECT_DIRECTORY}/./src/bindings/ruby/simgrid_ruby.c
45         ${PROJECT_DIRECTORY}/./src/bindings/ruby_bindings.h
46         ${PROJECT_DIRECTORY}/./src/simix/smx_context_sysv_private.h
47 )
48         
49 foreach(file ${to_svg})
50         get_filename_component(file_location ${file} PATH)
51         string(REPLACE "${PROJECT_DIRECTORY}/" "/" file_location ${file_location})
52         #message("install: ${file}\nDESTINATION: ${file_location}")
53         install(FILES ${file} DESTINATION "${file_location}")
54 endforeach(file ${EXTRA_DIST})
55
56 ###copy doc
57 install(DIRECTORY "${PROJECT_DIRECTORY}/doc/"
58 DESTINATION "/doc/"
59 PATTERN ".svn" EXCLUDE 
60 PATTERN ".git" EXCLUDE 
61 PATTERN "*~" EXCLUDE
62 )
63
64 ###buildtools 
65 install(DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/"
66 DESTINATION "/buildtools/Cmake/"
67 PATTERN ".svn" EXCLUDE 
68 PATTERN ".git" EXCLUDE 
69 PATTERN "*~" EXCLUDE
70 )
71
72 set(CPACK_SET_DESTDIR on)
73 set(CMAKE_INSTALL_PREFIX ${prefix} CACHE TYPE INTERNAL FORCE)
74
75 add_custom_target(install-simgrid
76 COMMAND mkdir -p ${prefix}
77 COMMAND mkdir -p ${prefix}/lib
78 COMMAND mkdir -p ${prefix}/include
79 COMMAND mkdir -p ${prefix}/doc
80 COMMAND mkdir -p ${prefix}/doc/simgrid
81 COMMAND mkdir -p ${prefix}/doc/simgrid/html
82 COMMAND cp -rf ${PROJECT_DIRECTORY}/src/.libs/* ${prefix}/lib/
83 COMMAND echo "install lib ok"
84 COMMAND cp -rf ${PROJECT_DIRECTORY}/include/ ${prefix}
85 COMMAND echo "install include ok"
86 COMMAND cp -rf ${PROJECT_DIRECTORY}/doc/html/ ${prefix}/doc/simgrid
87 COMMAND echo "install doc ok"
88 )
89
90 add_custom_target(uninstall
91 COMMAND echo "uninstall simgrid"
92 COMMAND echo "TODO"
93 )
94
95 add_custom_target(html
96 COMMAND echo "Make the html doc"
97 COMMAND echo "cmake -DBIBTEX2HTML=${BIBTEX2HTML} ./"
98 COMMAND cmake -DBIBTEX2HTML=${BIBTEX2HTML} ./
99 COMMAND rm -rf ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/CMakeFiles
100 COMMAND rm ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/CMakeCache.txt
101 COMMAND rm ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/cmake_install.cmake
102 COMMAND rm ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/Makefile
103 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc"
104 )
105
106 add_custom_target(dist
107 COMMAND make package
108 COMMAND rm -rf ${PROJECT_DIRECTORY}/_CPack_Packages
109 WORKING_DIRECTORY "${PROJECT_DIRECTORY}"
110 )
111 add_custom_target(distcheck
112 COMMAND make package
113 COMMAND rm -rf ${PROJECT_DIRECTORY}/_CPack_Packages
114 COMMAND tar xvf ${CPACK_PACKAGE_FILE_NAME}.tar.bz2
115 COMMAND cd ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} && cmake .
116 COMMAND cd ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} && make
117 COMMAND cd ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME} && make test
118 COMMAND rm -rf ${PROJECT_DIRECTORY}/${CPACK_PACKAGE_FILE_NAME}
119 WORKING_DIRECTORY "${PROJECT_DIRECTORY}"
120 )
121
122 include(CPack)