How to make a release
*********************

Preparing and testing GIT
=========================

* Make sure that version numbers in 
    configure.in
    gemrb/includes/globals.h 
  are correct for the upcoming version.

* Update NEWS with highlights since the last release 

* Make sure that GemRB GIT is in compilable and runnable state
  - download a clean GIT tree and test it.
  - Make distribution .tar.gz (see Source release below) and test it as well -
    especially make sure all needed files are included.

* Tag current GIT to version number e.g. v0.9.0
  i.e. in the gemrb root directory do
    ver=0.9.0
    git tag -a -m "GemRB $ver" v$ver
    git push origin v$ver
* Update from GIT to the tagged version
    git checkout v$ver

* After you're done, update the version with a -git suffix, so it will be
  easier to tell if people are running release builds or not

Source release
==============

* via cmake/autotools:
  make dist


Linux binary release
====================

  ./autogen.sh
  ./configure --prefix=/usr/local
  make
  make install DESTDIR=/tmp/fakeroot
  cd /tmp/fakeroot/usr/local
  copy ~/GemRB-binary.cfg over etc/GemRB.cfg, rename to etc/gemrb.cfg
  strip bin/gemrb lib/* lib/gemrb/*
  sudo chown -R 0:0 *
  sudo tar cvzf ../gemrb-0.2.5-linux_i386.tar.gz *


Windows binary release
======================

If gembot is around on IRC, ask it to make a build for the tagged revision:
  gembot: force build --revision=701453842c7cb5783 nmake-msvc++10 release build
  gembot: watch nmake-msvc++10

It will tell you where to see the report and on the last (upload) step,
there will also be a link for the binary download. Rename it, upload
it to the main sourceforge windows directory and mark it as default for
the platform.

Release and Announcements
=========================

* Write the release notes if necessary. They are mainly for packagers, so
create them if there are structural or build related changes. New config
options should also be mentioned here if they're not part of the changelog.

* Put the tarballs/binaries into Releases on SF
  - go to the Files section
  - click on the sources subdir
  - add a new similarly-named folder
  - use "add file" to upload the sources and release notes
  - change the file properties to set the default platforms (under "view details")

* Test the downloads from sourceforge.net

* Announce on homepage, SF, #GemRB in channel and title, Happypenguin, LGDB and
  Gibberlings3:
    - our forum
    - modding news (Avenger, Theacefes, Grim Squeaker, DavidW and cmorgan have access)
  (a template is available in admin/announcement.template)

* Run admin/restart_news.sh to restart the NEWS cycle
