nelma: Fix prototype on set_layer() method to take the "empty" flag.
[geda-pcb/gde.git] / README.snapshots
blob136d6aeffb973a630bebb96d318e65e1c6d348d8
1 #!/bin/sh
3 # $Id$
6 This documents what is done to create a pcb release. The releases now
7 are done by branching the sources, fixing up the release version number
8 in the branch and then tagging the release branch sources. The motivation
9 for a branch rather than a tag is to make it easier to deal with setting
10 the snapshot version number in the documentation, distfile, and the
11 about dialog box.
13 NOTE: Use the DISTCHECK_CONFIGURE_FLAGS to be able to run the distcheck
14 target with lesstif as the built gui with
15 DISTCHECK_CONFIGURE_FLAGS="--with-gui=lesstif" if you want to also verify
16 that distcheck works with the lesstif HID.
19 After following the steps below,
20 upload the 'pcb-$VERSION.tar.gz' file to the sourceforge file release system
23 To make a pcb release do the following:
26 =) # make sure it makes distfiles ok: (have to build before doing distcheck so
27 pcb gets built so it can create some of the images in the doc directory)
28 gmake distclean ; ./autogen.sh && ./configure --enable-maintainer-mode \
29 --disable-update-desktop-database --disable-update-mime-database && \
30 gmake && gmake distcheck
31 setenv DISTCHECK_CONFIGURE_FLAGS '--with-gui=lesstif CPPFLAGS=-I/usr/pkg/include CFLAGS=-I/usr/pkg/include LDFLAGS="-L/usr/pkg/lib -R/usr/pkg/lib"'
32 gmake distcheck
33 unsetenv DISTCHECK_CONFIGURE_FLAGS
35 =) cvs ci
37 =) update the ChangeLog with './utils/cvs2cl.pl'. Check in changes
39 =) update the NEWS file with some sort of release notes
40 summary. Check in changes
42 =) if this is a major release, then tag and branch:
44 1. Tag the base of the release branch
45 cvs tag pcb-20081128-base
47 2. Create the release branch
48 cvs tag -R -b -r pcb-20081128-base pcb-20081128
50 3. FIX_ME [fix up this step. what shall we do with the version
51 on the trunk? We're about to run out of letters!]
52 On the trunk, update configure.ac to update the version
53 for example 1.99x after releasing 1.99w
54 cvs update -PdA
55 vi configure.ac
56 cvs ci configure.ac
58 4. On the release branch, update configure.ac to update the version
59 for example 20081128_ALPHA. Now pre-release snapshots can be made.
60 cvs update -PdA -r pcb-20081128
62 5. If desired tag an alpha release:
63 cvs update -PdA -r pcb-20081128
64 ./autogen.sh
65 cvs tag -R -r pcb-20081128 pcb-20081128-ALPHA
66 cvs update -PdA -r pcb-20081128-ALPHA
67 ./autogen.sh && ./configure --enable-maintainer-mode \
68 --disable-update-desktop-database \
69 --disable-update-mime-database && \
70 gmake && gmake distcheck
72 6. When the release branch is ready to go, update configure.ac to
73 set the final release version. Then tag the release.
74 cvs update -PdA -r pcb-20081128
75 vi configure.ac
76 cvs ci configure.ac
77 ./autogen.sh
78 cvs ci
79 cvs tag -R -r pcb-20081128 pcb-20081128-RELEASE
80 cvs update -PdA -r pcb-20081128-RELEASE
81 ./autogen.sh && ./configure --enable-maintainer-mode \
82 --disable-update-desktop-database \
83 --disable-update-mime-database && \
84 gmake clean && gmake && gmake distcheck
86 7. Create checksums
88 openssl sha1 pcb-20081128.tar.gz > pcb-20081128.cksum
89 openssl md5 pcb-20081128.tar.gz >> pcb-20081128.cksum
90 openssl rmd160 pcb-20081128.tar.gz >> pcb-20081128.cksum
91 echo "File size (bytes):" >> pcb-20081128.cksum
92 wc -c pcb-20081128.tar.gz >> pcb-20081128.cksum
94 8. Create a new file release for pcb with a release name of
95 "pcb-20081128" (for pcb-20081128).
97 9. Upload the .tar.gz, .cksum files via the file release system on sourceforge. There is
98 a web upload page that can be reached from the file release system. After uploading
99 set the file types:
101 .tar.gz - any / source .gz
102 .cksum - Platform Independent / Other Source File
104 10. Return to your regularly scheduled trunk development
105 cvs update -PdA
107 =) if this is a patch release, then simply make desired changes to the branch, and
108 ./autogen.sh
109 cvs ci
110 cvs tag -R -r pcb-20081128 pcb-20081128-PATCH001
112 =) gmake distclean ; ./autogen.sh &&./configure && gmake distcheck