summaryrefslogtreecommitdiffstats
path: root/docs/release
diff options
context:
space:
mode:
Diffstat (limited to 'docs/release')
-rw-r--r--docs/release151
1 files changed, 151 insertions, 0 deletions
diff --git a/docs/release b/docs/release
new file mode 100644
index 0000000..36bcb47
--- /dev/null
+++ b/docs/release
@@ -0,0 +1,151 @@
+How to prepare a new release
+----------------------------
+
+. include/freetype/freetype.h: Update FREETYPE_MAJOR, FREETYPE_MINOR,
+ and FREETYPE_PATCH.
+
+. Update version numbers in all files where necessary (for example, do
+ a grep for both `2.3.1' and `231' for release 2.3.1).
+
+. builds/unix/configure.raw: Update `version_info'.
+
+. docs/CHANGES: Document differences to last release.
+
+. README: Update.
+
+. docs/VERSION.DLL: Document changed `version_info'.
+
+. ChangeLog: Announce new release (both in freetype2 and ft2demos
+ modules).
+
+. Tag the CVS (freetype2, ft2demos).
+
+ TODO: Tag the home page CVS on savannah.nongnu.org.
+
+. Say `make dist' in both the freetype2 and ft2demos modules to
+ generate the .tar.gz, .tar.bz2, and .zip files.
+
+. Create the doc bundles (freetype-doc-<version>.tar.gz,
+ freetype-doc-<version>.tar.bz2, ftdoc<version>.zip). This is
+ everything below
+
+ freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/freetype2/docs/
+
+ except the `reference' subdirectory. Do *not* use option `-l' from
+ zip!
+
+ Run the following script (with updated `$VERSION' and
+ `$SAVANNAH_USER' variables) to sign and upload the bundles to both
+ Savannah and SourceForge. The signing code has been taken from the
+ `gnupload' script (part of the automake bundle).
+
+ #!/bin/sh
+
+ VERSION=2.3.1
+ SAVANNAH_USER=wl
+
+ #####################################################################
+
+ GPG='/usr/bin/gpg --batch --no-tty'
+
+ version=`echo $VERSION | sed "s/\\.//g"`
+
+ UNIX_PACKAGES="freetype ft2demos freetype-doc"
+ WINDOWS_PACKAGES="ft ftdmo ftdoc"
+ UNIX_ZIP="tar.gz tar.bz2"
+ WINDOWS_ZIP="zip"
+
+ PACKAGE_LIST=
+ for i in $UNIX_PACKAGES; do
+ for j in $UNIX_ZIP; do
+ PACKAGE_LIST="$PACKAGE_LIST $i-$VERSION.$j"
+ done
+ done
+ for i in $WINDOWS_PACKAGES; do
+ for j in $WINDOWS_ZIP; do
+ PACKAGE_LIST="$PACKAGE_LIST $i$version.$j"
+ done
+ done
+
+ set -e
+ unset passphrase
+
+ PATH=/empty echo -n "Enter GPG passphrase: "
+ stty -echo
+ read -r passphrase
+ stty echo
+ echo
+
+ for f in $PACKAGE_LIST; do
+ if test ! -f $f; then
+ echo "$0: Cannot find \`$f'" 1>&2
+ exit 1
+ else
+ :
+ fi
+ done
+
+ for f in $PACKAGE_LIST; do
+ echo "Signing $f..."
+ rm -f $f.sig
+ echo $passphrase | $GPG --passphrase-fd 0 -ba -o $f.sig $f
+ done
+
+ SIGNATURE_LIST=
+ for i in $PACKAGE_LIST; do
+ SIGNATURE_LIST="$SIGNATURE_LIST $i.sig"
+ done
+
+ scp $PACKAGE_LIST $SIGNATURE_LIST \
+ $SAVANNAH_USER@dl.sv.nongnu.org:/releases/freetype/
+
+ for f in $PACKAGE_LIST $SIGNATURE_LIST; do
+ ncftpput upload.sf.net /incoming $f
+ done
+
+ # EOF
+
+. While files on savannah.gnu.org are automatically moved to the right
+ directory, it must be done manually on SourceForge. Do that now.
+
+. Update the FreeType release notes on SourceForge.
+
+. Copy the reference files (generated by `make dist') to
+
+ freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/freetype2/docs/reference
+
+ and
+
+ shell.sf.net:/home/groups/f/fr/freetype/htdocs/freetype2/docs/reference
+
+ TODO: Create FreeType home page CVS on savannah.nongnu.org and
+ update it accordingly.
+
+ Write script to automatically do this.
+
+ Mirror FreeType's savannah home page everywhere.
+
+. Update
+
+ freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/index2.html
+
+ and copy it to
+
+ shell.sf.net:/home/groups/f/fr/freetype/htdocs/index2.html
+
+. Announce new release on freetype-announce@nongnu.org and to relevant
+ newsgroups.
+
+----------------------------------------------------------------------
+
+Copyright 2003, 2005, 2006, 2007 by
+David Turner, Robert Wilhelm, and Werner Lemberg.
+
+This file is part of the FreeType project, and may only be used,
+modified, and distributed under the terms of the FreeType project
+license, LICENSE.TXT. By continuing to use, modify, or distribute
+this file you indicate that you have read the license and understand
+and accept it fully.
+
+
+--- end of release ---