summaryrefslogtreecommitdiff
path: root/lib/freetype/docs/release
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2008-06-22 17:37:38 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2008-06-22 17:37:38 +0000
commit704aafde5a2dc00cc6381d2e0a9577e40571c307 (patch)
tree4c71722fae5356128804c0efc9aef3c4af095545 /lib/freetype/docs/release
parent6d525de3790e37ae22b1c36d73c2c55fc52ada11 (diff)
Update to freetype 2.3.6.
Contains security fixes for CVE-2008-1806, CVE-2008-1807 and CVE-2008-1808. Tested by many.
Diffstat (limited to 'lib/freetype/docs/release')
-rw-r--r--lib/freetype/docs/release149
1 files changed, 123 insertions, 26 deletions
diff --git a/lib/freetype/docs/release b/lib/freetype/docs/release
index 831871a11..d68da883c 100644
--- a/lib/freetype/docs/release
+++ b/lib/freetype/docs/release
@@ -4,16 +4,10 @@ How to prepare a new release
. include/freetype/freetype.h: Update FREETYPE_MAJOR, FREETYPE_MINOR,
and FREETYPE_PATCH.
-. builds/unix/configure.ac (version_info): Update according to the
- libtool rules, then regenerate the configure script with the
- top-level `autogen.sh'. After that, update `config.guess' and
- `config.sub' to the most recent versions (from the `config' CVS
- repository).
+. 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).
- Assure that the most recent versions of autoconf and libtool are
- used while calling `autogen.sh'.
-
-. builds/freetype.mk (refdoc): Update the `--title' option.
+. builds/unix/configure.raw: Update `version_info'.
. docs/CHANGES: Document differences to last release.
@@ -21,42 +15,145 @@ How to prepare a new release
. docs/VERSION.DLL: Document changed `version_info'.
-. ChangeLog: Announce new release (both freetype2 and ft2demos).
+. ChangeLog: Announce new release (both in freetype2 and ft2demos
+ modules).
-. Call `make refdoc' to update HTML reference. Copy it to
- freetype.freedesktop.org:/srv/freetype.freedesktop.org/\
- freetype2/docs/reference.
+. Copy the CVS archive to another directory and run
- TODO: Create FreeType home page CVS on savannah.nongnu.org and
- update it accordingly.
+ make distclean; make devel; make
+ make distclean; make devel; make multi
+ make distclean; make devel CC=g++; make CC=g++
+ make distclean; make devel CC=g++; make multi CC=g++
- Write script to automatically do this.
+ sh autogen.sh
+ make distclean; ./configure; make
+ make distclean; ./configure CC=g++; make
- Mirror FreeType's savannah home page everywhere.
+ to test compilation with both gcc and g++.
+
+. Test C++ compilation for ft2demos too.
. Tag the CVS (freetype2, ft2demos).
TODO: Tag the home page CVS on savannah.nongnu.org.
-. Create packages for freetype2, ft2demos, and documentation (in zip,
- .tar.gz, and .tar.bz2 format).
+. 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.
- Assure that the .zip file uses CR/LF at line ends -- but *not* for
- images!
+. Update
- TODO: Write scripts and/or provide make targets to do that.
+ freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/index2.html
-. Create signature files with `gpg -b' and upload files to savannah
- and sourceforge.
+ and copy it to
- TODO: Write script to do this. Cf. automake's `gnupload' script.
+ 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 by
+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,