# Version:      $Id: release-method.txt,v 1.2 2007/04/14 23:40:35 pnixon Exp $
#
#  This is NOT a shell script!
#
#  This file documents the methods used by the developers to perform a release of the software.
#
#  If you're not a developer, then you can ignore this file.
#
#
VERSION=1
REVISION=1

# cvs -d :pserver:USER@cvs.freeradius.org:/source checkout -P -d freeradius-client-$(VERSION).$(REVISION) radiusclient
cvs -d :pserver:USER@cvs.freeradius.org:/source checkout -P -d freeradius-client-1.1 radiusclient

#
#  Do NOT type 'configure', 'make', or anything else.
#  We presume that 
#
# cd freeradius-client-$(VERSION).$(REVISION)
cd freeradius-client-1.1

#
#  Create a branch for the release
#
cvs tag -b branch_1_1

#
#  Mark all of the files to be for the branch
#
cvs update -rbranch_1_1

#
#  remove $$ surrounding the $Date ... $
#  add any last-minute notes
#
vi doc/ChangeLog

#
#  Commit it (to the branch)
#
cvs commit doc/ChangeLog

#
#  Change version/revision numbers
#
vi configure.in
vi redhat/freeradius-client.spec
vi suse/freeradius-client.spec
vi debian/changelog
vi debian/rules

#
#  Re-build and commit the configure scripts and other autofoo
libtoolize --force
aclocal
automake -ac
autoconf
cvs commit

#
#  tag the files for the release,
#  which is a POINT release of the main release.
#
#  i.e. We may way a 0.7.1 release later, which will
#  be tagged 'release_0_7_1' on the branch for 0.7,
#  which is called 'branch_0_7'.
#
# cvs tag release_$(VERSION)_$(REVISION)_0
cvs tag release_1_1_0

#
#  Delete the CVS directories.
#
rm -rf `find . -name CVS -print`

#
#  Delete any temporary files.
#
rm -f `find . -name "*~" -print`

#
#  Visually inspect the source, to be sure it's clean.
#

cd ..

# tar jcf freeradius-client-$(VERSION).$(REVISION).tar.bz2 freeradius-client-$(VERSION).$(REVISION)
tar jcf freeradius-client-1.1.tar.bz2 freeradius-client-1.1

#
#  Sign the archive.
#

#
#  These next steps presume you have an account on the main
#  FreeRADIUS web server.
#
scp freeradius-client-1.1.tar.bz2 ...freeradius.org

# move the archive to ftp 'pub/radius' directory

# move the previous version to the 'old' directory
mv freeradius-client-1.0.tar.bz2 old

#
#  delete the old soft link.
#
rm freeradius-client.tar.bz2

#
#  link the new version to it's simple name
#
ln -s freeradius-1.1.tar.bz2 freeradius.tar.bz2     

# go to the www directory

#
#  Ensure that the source archive on the web is updated.
# cvs update -APd radiusd

# edit index.html, and add in the release notes under 'news'
# edit getting.html, and update notes about current/old releases.

# on your work machine again,
rm -rf freeradius-client-1.1.tar.gz freeradius-client-1.1

# go to your working directory
# edit configure.in, to bump the version to '1.2-pre'
autoconf
cvs commit configure configure.in

cd doc

#
#  Add in notes about next release, in preparation for more change log notes.
#
vi ChangeLog
cvs commit ChangeLog
