Commit pcb.desktop.in template menu file for translation
[geda-pcb/gde.git] / README.snapshots
blob770aa8b25510fd5508d11a8394beb03409937732
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 && gmake && gmake distcheck
29 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"'
30 gmake distcheck
31 unsetenv DISTCHECK_CONFIGURE_FLAGS
33 =) cvs ci
35 =) update the ChangeLog with 'cvs2cl.pl'. Check in changes
37 =) update the NEWS file with some sort of release notes
38 summary. Check in changes
40 =) if this is a major release, then tag and branch:
42 1. Tag the base of the release branch
43 cvs tag pcb-20070912-base
45 2. Create the release branch
46 cvs tag -R -b -r pcb-20070912-base pcb-20070912
48 3. FIX_ME [fix up this step. what shall we do with the version
49 on the trunk?]
50 On the trunk, update configure.ac to update the version
51 for example 1.99x after releasing 1.99w
52 cvs update -PdA
53 vi configure.ac
54 cvs ci configure.ac
56 4. On the release branch, update configure.ac to update the version
57 for example 20070912_ALPHA. Now pre-release snapshots can be made.
58 cvs update -PdA -r pcb-20070912
60 5. If desired tag an alpha release:
61 cvs update -PdA -r pcb-20070912
62 ./autogen.sh
63 cvs tag -R -r pcb-20070912 pcb-20070912-ALPHA
64 cvs update -PdA -r pcb-20070912-ALPHA
65 ./autogen.sh && ./configure --enable-maintainer-mode && gmake && gmake distcheck
67 6. When the release branch is ready to go, update configure.ac to
68 set the final release version. Then tag the release.
69 cvs update -PdA -r pcb-20070912
70 vi configure.ac
71 cvs ci configure.ac
72 ./autogen.sh
73 cvs ci
74 cvs tag -R -r pcb-20070912 pcb-20070912-RELEASE
75 cvs update -PdA -r pcb-20070912-RELEASE
76 ./autogen.sh && ./configure --enable-maintainer-mode && gmake clean && gmake && gmake distcheck
78 7. Create checksums
80 digest sha1 pcb-20070912.tar.gz > pcb-20070912.SHA1
81 digest md5 pcb-20070912.tar.gz > pcb-20070912.MD5
83 8. Upload the .tar.gz, .MD5, and .SHA1 files to
84 ftp://upload.sourceforge.net/incoming/
86 9. Create a new file release for pcb with a release name of
87 "pcb-20070912" (for pcb-20070912).
89 For file types:
90 .tar.gz - any / source .gz
91 .{SHA1,MD5} - Platform Independent / Other Source File
93 10. Return to your regularly scheduled trunk development
94 cvs update -PdA
96 =) if this is a patch release, then simply make desired changes to the branch, and
97 ./autogen.sh
98 cvs ci
99 cvs tag -R -r pcb-20070912 pcb-20070912-PATCH001
101 =) gmake distclean ; ./autogen.sh &&./configure && gmake distcheck