Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
a1027dfea415888e9390e5749174ba959e0fc0aa
[simgrid.git] / doc / dev_guide / doxygen / release.doc
1 /*! 
2 \page release SimGrid Developer Guide - Releasing
3
4 \section release_c Releasing the main library
5
6 \subsection release_c_preconditions Before releasing
7
8 Please apply the following checklist before releasing.
9
10 - Sources
11   - The version number is correctly marked in CMakeList.txt, in macros
12     SIMGRID_VERSION_MAJOR and friends. Please also update the
13     comments right before these macros so that we keep a track of the
14     version numbers that were used.
15   - The" make distcheck" target works (testing that every files needed
16     to build and install are included in the archive)
17 - Tests
18   - All tests pass on a reasonnable amount of platforms (typically,
19     everything on cdash)
20   - You also tested to build and install the content of the source
21     archive on a reasonnable amount of platforms (typically, 2 or 3).
22 - ChangeLog file
23   - Every changes are documented
24   - The release date is indicated below the changes
25   - The release is marked as stable above the changes
26   - The release dub name matches the one given in NEWS file
27 - NEWS
28   - The most notable changes of the version are documented
29   - The release date is indicated right below the version name
30   - The release dub name matches the one given in ChangeLog file
31
32 \subsection release_c_source Building the source archive
33
34 First, clean up your git repository. Some files are included through
35 globbing, you must ensure that your tree contains no cruft. You can
36 either checkout a new tree or remove anything from your current tree:
37 \verbatim
38 $ cd simgrid
39 $ git stash
40 $ git stash clear
41 $ git clean -dfx
42 \endverbatim
43
44 You can then build the archive. This gives you your archive in the
45 build dir, named 'SimGrid-${release_version}.tar.gz'.
46
47 \verbatim
48 $ mkdir build
49 $ cd build
50 $ cmake ..
51 $ make dist
52 \endverbatim
53
54 \subsection release_c_win32 Binary distribution under Win32
55
56 You have to install nsis tool first. Download it 
57 <a href="http://nsis.sourceforge.net/Download">here</a>.
58
59 Then be sure having wget.exe in your path to get the online documentation. You can download it 
60 <a href="http://users.ugent.be/~bpuype/wget/">here</a>.
61
62 You can finally make the win installer.
63 \verbatim
64 $ cd simgrid
65 $ mkdir build
66 $ cd build
67 $ cmake ..
68 $ make nsis
69 \endverbatim
70
71 \subsection release_c_postchecks Check list after releasing
72
73 - Tag the git repository (don't forget to push the tags to the main
74   repo)
75 - Push the archive files on gforge
76 - Update the link ff-scm-v4-prod:/home/groups/simgrid/htdocs/simgrid/lastest
77 - Announce the release
78  - Mail the simgrid-user mailing list
79     - the NEWS chunk in the mail;
80     - the ChangeLog chunk as attachement
81  - Also mail some other lists (G5K users), with only the NEWS chunk
82    and the link to the download section
83
84 \section release_bindings Releasing the bindings
85
86 Please apply the above checklists before and after releasing the bindings.
87
88 Then, clean your git repository and build the archive. It will give
89 you an archive file in the build dir:
90 'SimGrid-Java-${release_version}.tar.gz' or
91 'SimGrid-Ruby-${release_version}.tar.gz'. 
92
93 \verbatim
94 $ cd simgrid-java (or simgrid-ruby)
95 $ git stash
96 $ git stash clear
97 $ git clean -dfx
98 $ mkdir build
99 $ cd build
100 $ cmake ..
101 $ make dist
102 \endverbatim
103
104 */