Werner Lemberg | f9d864a | 2003-07-25 05:57:21 +0000 | [diff] [blame] | 1 | How to prepare a new release |
| 2 | ---------------------------- |
| 3 | |
Werner Lemberg | f99d846 | 2006-02-26 17:50:59 +0000 | [diff] [blame] | 4 | . include/freetype/freetype.h: Update FREETYPE_MAJOR, FREETYPE_MINOR, |
| 5 | and FREETYPE_PATCH. |
Werner Lemberg | f9d864a | 2003-07-25 05:57:21 +0000 | [diff] [blame] | 6 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 7 | . Update version numbers in all files where necessary (for example, do |
Werner Lemberg | 5393593 | 2007-01-31 08:53:02 +0000 | [diff] [blame] | 8 | a grep for both `2.3.1' and `231' for release 2.3.1). |
Werner Lemberg | f99d846 | 2006-02-26 17:50:59 +0000 | [diff] [blame] | 9 | |
Werner Lemberg | 3b3f2ba | 2007-01-25 22:14:40 +0000 | [diff] [blame] | 10 | . builds/unix/configure.raw: Update `version_info'. |
Werner Lemberg | f9d864a | 2003-07-25 05:57:21 +0000 | [diff] [blame] | 11 | |
| 12 | . docs/CHANGES: Document differences to last release. |
| 13 | |
| 14 | . README: Update. |
| 15 | |
Werner Lemberg | e42dbce | 2003-11-09 08:37:14 +0000 | [diff] [blame] | 16 | . docs/VERSION.DLL: Document changed `version_info'. |
Werner Lemberg | f9d864a | 2003-07-25 05:57:21 +0000 | [diff] [blame] | 17 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 18 | . ChangeLog: Announce new release (both in freetype2 and ft2demos |
| 19 | modules). |
Werner Lemberg | e42dbce | 2003-11-09 08:37:14 +0000 | [diff] [blame] | 20 | |
Werner Lemberg | 1e1b6df | 2007-07-07 07:30:40 +0000 | [diff] [blame] | 21 | . Copy the CVS archive to another directory and run |
| 22 | |
| 23 | make distclean; make devel; make |
| 24 | make distclean; make devel; make multi |
| 25 | make distclean; make devel CC=g++; make CC=g++ |
| 26 | make distclean; make devel CC=g++; make multi CC=g++ |
| 27 | |
| 28 | sh autogen.sh |
| 29 | make distclean; ./configure; make |
| 30 | make distclean; ./configure CC=g++; make |
| 31 | |
| 32 | to test compilation with both gcc and g++. |
| 33 | |
| 34 | . Test C++ compilation for ft2demos too. |
| 35 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 36 | . Tag the CVS (freetype2, ft2demos). |
Werner Lemberg | e42dbce | 2003-11-09 08:37:14 +0000 | [diff] [blame] | 37 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 38 | TODO: Tag the home page CVS on savannah.nongnu.org. |
| 39 | |
| 40 | . Say `make dist' in both the freetype2 and ft2demos modules to |
| 41 | generate the .tar.gz, .tar.bz2, and .zip files. |
| 42 | |
| 43 | . Create the doc bundles (freetype-doc-<version>.tar.gz, |
| 44 | freetype-doc-<version>.tar.bz2, ftdoc<version>.zip). This is |
| 45 | everything below |
| 46 | |
| 47 | freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/freetype2/docs/ |
| 48 | |
| 49 | except the `reference' subdirectory. Do *not* use option `-l' from |
| 50 | zip! |
| 51 | |
Werner Lemberg | 3b3f2ba | 2007-01-25 22:14:40 +0000 | [diff] [blame] | 52 | Run the following script (with updated `$VERSION' and |
| 53 | `$SAVANNAH_USER' variables) to sign and upload the bundles to both |
| 54 | Savannah and SourceForge. The signing code has been taken from the |
| 55 | `gnupload' script (part of the automake bundle). |
| 56 | |
| 57 | #!/bin/sh |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 58 | |
David Turner | 3eaef6c | 2007-01-30 10:40:23 +0000 | [diff] [blame] | 59 | VERSION=2.3.1 |
Werner Lemberg | 3b3f2ba | 2007-01-25 22:14:40 +0000 | [diff] [blame] | 60 | SAVANNAH_USER=wl |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 61 | |
Werner Lemberg | 3b3f2ba | 2007-01-25 22:14:40 +0000 | [diff] [blame] | 62 | ##################################################################### |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 63 | |
Werner Lemberg | 3b3f2ba | 2007-01-25 22:14:40 +0000 | [diff] [blame] | 64 | GPG='/usr/bin/gpg --batch --no-tty' |
| 65 | |
| 66 | version=`echo $VERSION | sed "s/\\.//g"` |
| 67 | |
| 68 | UNIX_PACKAGES="freetype ft2demos freetype-doc" |
| 69 | WINDOWS_PACKAGES="ft ftdmo ftdoc" |
| 70 | UNIX_ZIP="tar.gz tar.bz2" |
| 71 | WINDOWS_ZIP="zip" |
| 72 | |
| 73 | PACKAGE_LIST= |
| 74 | for i in $UNIX_PACKAGES; do |
| 75 | for j in $UNIX_ZIP; do |
| 76 | PACKAGE_LIST="$PACKAGE_LIST $i-$VERSION.$j" |
| 77 | done |
| 78 | done |
| 79 | for i in $WINDOWS_PACKAGES; do |
| 80 | for j in $WINDOWS_ZIP; do |
| 81 | PACKAGE_LIST="$PACKAGE_LIST $i$version.$j" |
| 82 | done |
| 83 | done |
| 84 | |
| 85 | set -e |
| 86 | unset passphrase |
| 87 | |
| 88 | PATH=/empty echo -n "Enter GPG passphrase: " |
| 89 | stty -echo |
| 90 | read -r passphrase |
| 91 | stty echo |
| 92 | echo |
| 93 | |
| 94 | for f in $PACKAGE_LIST; do |
| 95 | if test ! -f $f; then |
| 96 | echo "$0: Cannot find \`$f'" 1>&2 |
| 97 | exit 1 |
| 98 | else |
| 99 | : |
| 100 | fi |
| 101 | done |
| 102 | |
| 103 | for f in $PACKAGE_LIST; do |
| 104 | echo "Signing $f..." |
| 105 | rm -f $f.sig |
| 106 | echo $passphrase | $GPG --passphrase-fd 0 -ba -o $f.sig $f |
| 107 | done |
| 108 | |
| 109 | SIGNATURE_LIST= |
| 110 | for i in $PACKAGE_LIST; do |
| 111 | SIGNATURE_LIST="$SIGNATURE_LIST $i.sig" |
| 112 | done |
| 113 | |
| 114 | scp $PACKAGE_LIST $SIGNATURE_LIST \ |
| 115 | $SAVANNAH_USER@dl.sv.nongnu.org:/releases/freetype/ |
| 116 | |
| 117 | for f in $PACKAGE_LIST $SIGNATURE_LIST; do |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 118 | ncftpput upload.sf.net /incoming $f |
| 119 | done |
| 120 | |
Werner Lemberg | 3b3f2ba | 2007-01-25 22:14:40 +0000 | [diff] [blame] | 121 | # EOF |
| 122 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 123 | . While files on savannah.gnu.org are automatically moved to the right |
| 124 | directory, it must be done manually on SourceForge. Do that now. |
| 125 | |
| 126 | . Update the FreeType release notes on SourceForge. |
| 127 | |
| 128 | . Copy the reference files (generated by `make dist') to |
| 129 | |
| 130 | freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/freetype2/docs/reference |
| 131 | |
| 132 | and |
| 133 | |
| 134 | shell.sf.net:/home/groups/f/fr/freetype/htdocs/freetype2/docs/reference |
| 135 | |
| 136 | TODO: Create FreeType home page CVS on savannah.nongnu.org and |
Werner Lemberg | f99d846 | 2006-02-26 17:50:59 +0000 | [diff] [blame] | 137 | update it accordingly. |
Werner Lemberg | d88d541 | 2003-11-12 15:16:02 +0000 | [diff] [blame] | 138 | |
Werner Lemberg | 49f4d34 | 2005-06-16 19:07:08 +0000 | [diff] [blame] | 139 | Write script to automatically do this. |
Werner Lemberg | d88d541 | 2003-11-12 15:16:02 +0000 | [diff] [blame] | 140 | |
Werner Lemberg | 49f4d34 | 2005-06-16 19:07:08 +0000 | [diff] [blame] | 141 | Mirror FreeType's savannah home page everywhere. |
Werner Lemberg | d88d541 | 2003-11-12 15:16:02 +0000 | [diff] [blame] | 142 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 143 | . Update |
Werner Lemberg | 49f4d34 | 2005-06-16 19:07:08 +0000 | [diff] [blame] | 144 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 145 | freetype.freedesktop.org:/srv/freetype.freedesktop.org/www/index2.html |
Werner Lemberg | 49f4d34 | 2005-06-16 19:07:08 +0000 | [diff] [blame] | 146 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 147 | and copy it to |
Werner Lemberg | f99d846 | 2006-02-26 17:50:59 +0000 | [diff] [blame] | 148 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 149 | shell.sf.net:/home/groups/f/fr/freetype/htdocs/index2.html |
Werner Lemberg | 49f4d34 | 2005-06-16 19:07:08 +0000 | [diff] [blame] | 150 | |
| 151 | . Announce new release on freetype-announce@nongnu.org and to relevant |
| 152 | newsgroups. |
Werner Lemberg | 56c368c | 2005-06-04 23:00:25 +0000 | [diff] [blame] | 153 | |
Werner Lemberg | f99d846 | 2006-02-26 17:50:59 +0000 | [diff] [blame] | 154 | ---------------------------------------------------------------------- |
Werner Lemberg | 56c368c | 2005-06-04 23:00:25 +0000 | [diff] [blame] | 155 | |
Werner Lemberg | 87a5a43 | 2007-01-17 12:44:39 +0000 | [diff] [blame] | 156 | Copyright 2003, 2005, 2006, 2007 by |
Werner Lemberg | 56c368c | 2005-06-04 23:00:25 +0000 | [diff] [blame] | 157 | David Turner, Robert Wilhelm, and Werner Lemberg. |
| 158 | |
Werner Lemberg | f99d846 | 2006-02-26 17:50:59 +0000 | [diff] [blame] | 159 | This file is part of the FreeType project, and may only be used, |
| 160 | modified, and distributed under the terms of the FreeType project |
| 161 | license, LICENSE.TXT. By continuing to use, modify, or distribute |
| 162 | this file you indicate that you have read the license and understand |
| 163 | and accept it fully. |
Werner Lemberg | 56c368c | 2005-06-04 23:00:25 +0000 | [diff] [blame] | 164 | |
| 165 | |
| 166 | --- end of release --- |