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
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"'
31 unsetenv DISTCHECK_CONFIGURE_FLAGS
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
50 On the trunk
, update configure.ac to update the version
51 for example
1.99x after releasing
1.99w
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
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
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
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
).
90 .
tar.gz
- any
/ source .gz
91 .
{SHA1
,MD5
} - Platform Independent
/ Other Source File
93 10. Return to your regularly scheduled trunk development
96 =) if this is a
patch release
, then simply
make desired changes to the branch
, and
99 cvs tag
-R -r pcb-20070912 pcb-20070912-PATCH001
101 =) gmake distclean
; .
/autogen.sh
&&.
/configure
&& gmake distcheck