two_hop_neighbor_table: stub out olsr_print_two_hop_neighbor_table on #ifdef NODEBUG
[olsrd.git] / release-howto.txt
1 cheat sheet for making a (stable) release tarball.
2
3 0. check if your name settings in .hgrc are correct. (have
4    your real name and email address in there).
5
6 1. clone a fresh tree:
7
8    $ git clone git://olsr.org/olsrd.git
9    $ git checkout --track -b stable origin/stable
10
11 2. check if the DEBUG settings in Makefile.inc are correct:
12
13    DEBUG ?= 1
14    NO_DEBUG_MESSAGES ?= 0
15
16    now check if it builds correct:
17
18    $ make uberclean build_all
19
20 3. Update the changelog
21
22 4. Change VERS in Makefile.inc to your target release.
23    in this example the target release is 0.5.6-r5
24    Please also write a new version to:
25    gui/win32/Main/Frontend.rc (line 71, around "CAPTION [...]")
26    gui/win32/Inst/installer.nsi (line 57, around "MessageBox MB_YESNO [...]")
27
28    most likely this is carrying some pre-XXX-release tag.
29    
30    $ grep -E "^VERS" Makefile
31    VERS =          pre-0.6.1
32
33    change it to
34
35    VERS =          0.6.1
36
37 5. commit
38
39 6. make the release tarball
40
41    $ cd scripts/
42    $ ./mk-tarball.sh
43    [ ... ]
44    ### creating /tmp/olsrd-0.5.6-r5.tar.gz
45    6c996e94de06115d19dbbcaf6847051a  /tmp/olsrd-0.5.6-r5.tar.gz
46    ### creating /tmp/olsrd-0.5.6-r5.tar.bz2
47    e476819be5747758e3d6f579e4096bce  /tmp/olsrd-0.5.6-r5.tar.bz2
48
49 7. check if everything is in the release tarball (ideally on a a
50    different machine) and try to build from the tarball.
51
52 8. display the used tags:
53
54    $ git tag
55 OLSRD_0_4_10
56 OLSRD_0_4_8
57 OLSRD_0_4_9
58 OLSRD_0_5_0
59 OLSRD_0_5_1
60 OLSRD_0_5_2
61 OLSRD_0_5_3
62 OLSRD_0_5_4
63 ...
64
65    now tag the tree (please stick to the tagging scheme).
66
67    $ git tag -s OLSRD_0_6_0
68
69 9. push
70
71 10. upload the the .tgz and .bz2 tarballs to the http://www.olsr.org/downaload/0.5/
72    section and add a release article on the web.
73    Add a PGP signed textfile with the md5/sha1 sums to the webpage too
74
75 11. Change VERS in Makefile.inc to your *next* target release.
76    in this example the next target release is pre-0.6.2
77    
78    Please also write a new version to:
79    gui/win32/Main/Frontend.rc (line 71, around "CAPTION [...]")
80    gui/win32/Inst/installer.nsi (line 57, around "MessageBox MB_YESNO [...]")
81
82    change it from:
83    
84    $ grep -E "^VERS" Makefile
85    VERS =          0.6.1
86
87    to
88
89    VERS =          pre-0.6.2
90
91    commit & push
92
93 you are done, congratulations !