1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
Procedure for making a GF release:
1. Make sure everything that should be in the release has been
checked in.
2. Go to the src/ dir.
$ cd src
3. Edit configure.ac to set the right version number
(the second argument to the AC_INIT macro).
4. Edit gf.spec to set the version and release numbers
(change %define version and %define release).
5. Commit configure.ac and gf.spec:
$ cvs commit -m 'Updated version numbers.' configure.ac gf.spec
6. Run autoconf to generate configure with the right version number:
$ autoconf
7. Go back to the root of the tree.
$ cd ..
8. Tag the release. (X_X should be replaced by the version number, with
_ instead of ., e.g. 2_0)
$ cvs tag RELEASE-X_X
9. Build a source package:
$ cd src
$ ./configure
$ make dist
10. Build an x86/linux RPM (should be done on a Mandrake Linux box):
Setup for building RPMs (first time only):
- Make sure that you have the directories neccessary to build
RPMs:
$ mkdir -p ~/rpm/{BUILD,RPMS/i586,RPMS/noarch,SOURCES,SRPMS,SPECS,tmp}
- Create ~/.rpmrc with the following contents:
buildarchtranslate: i386: i586
buildarchtranslate: i486: i586
buildarchtranslate: i586: i586
buildarchtranslate: i686: i586
- Create ~/.rpmmacros with the following contents:
%_topdir %(echo ${HOME}/rpm)
%_tmppath %{_topdir}/tmp
%packager Your Name <yourusername@cs.chalmers.se>
Build the RPM:
$ cd src
$ ./configure
$ make rpm
11. Build a generic binary x86/linux (should be done on a Linux box,
e.g. banded.medic.chalmers.se):
$ cd src
$ ./configure --host=i386-pc-linux-gnu && make binary-dist
12. Build a generic binary sparc/solaris package (should be done
on a Solaris box, e.g. remote1.cs.chalmers.se):
$ cd src
$ ./configure --host=sparc-sun-solaris2 && gmake binary-dist
13. Build a Mac OS X package (should be done on a Mac OS X box,
e.g. csmisc99.cs.chalmers.se):
$ cd src
$ ./configure && make binary-dist
Note that to run GHC-compiled binaries on OS X, you need
a "Haskell Support Framework". This should be available
separately from the GF download page.
TODO: Use OS X PackageMaker to build a .pkg-file which can
be installed using the standard OS X Installer program.
14. Build a Windows package:
???
15. Update website.
16. Party!
|