HACKING 2.81 KB
Newer Older
1
2
3
4
5
This file contains some information intended for the developers of
lyskomd.  It is probably only useful if you have access to the CVS
repository (there is no anoncvs access at this time) or if you are
about to make a new release of lyskomd.

Per Cederqvist's avatar
Per Cederqvist committed
6
See also doc/lyskomd.texi.
7
8
9
10
11
12
13
14
15
16


Support programs
================

It is important to use the correct version of some support programs
when creating the distribution.



17
Automake 1.5
18
19
--------

20
You need automake 1.5.
21
22


23
Autoconf 2.52
24
25
--------

26
You need autoconf 2.52.
27
28
29
30
31
32
33


Perl 5.005_02
----

The perl version should not matter.

34
35
36
37
38
39
40
41
42

Python 2.1
------

The version of Python should not matter.  1.5 should be good enough,
but that has not been tested in a long while.  Go with Python 2.1 or
newer.


43
44
45
46
Bison and flex
--------------

You may need the Gnu tools bison and flex. The standard lex and yacc
47
are not flexible enough. You should have bison version 1.27 or later
48
49
50
and flex version 2.5.4 or later.


51
52
53
54
55
DejaGnu 1.4.2
-------

You need a recent DejaGnu release.  DejaGnu in turn needs TCL and
expect.  See README.
56
57
58
59
60
61
62
63
64
65
66
67
68
69


Release generation
==================

Follow these steps:

* Check that the following files are updated:

	doc/Protocol-A.texi
	doc/lyskomd.texi
	README
	NEWS

70
71
* If this is release 2.1.0: remove all man-pages and this entry, and
  close bug 77.
72

73
74
75
76
* Run the testsuite with the EXTENDED tests (search for EXTENDED in
  src/server/testsuite/lyskomd.0/gen-*.py).  This requires some
  patience.  Be sure to reset EXTENDED to 0 when you are done.

77
78
79
* Set the version number in these files:

	versions
80
81
	configure.in (in two places)
	doc/Protocol-A.texi (potentially in several places)
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104

* Fix the Copyright statement in these files:

	scripts/update-copyright
	scripts/lyskomd-copyrights

* Write a note such as "* Release 1.9.0." in ChangeLog.

* Commit everything.

* Update the copyright statements by running

	scripts/lyskomd-copyrights

  repeatedly until nothing happens.

* Commit everything.

* Run these commands:

	./mkmi
	./configure
	make distclean    # We want to recompute all dependencies.
105
	./configure
106
	make check	  # Recompute them.
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
	make distcheck

  Make sure that the host where you do this have TeX installed, so
  that you ensure that the dvi target is working.

* Compare the resulting file with the previous release, and ensure
  that no unexpected differences exists.

* Test the resulting archive on several architectures.  Repeat until
  no failure.

* Set a tag:

	cvs tag server-2-0-0

* Copy the tar file to the FTP server.

* Create a diff.

	tar xfz /lysator/ftp/pub/lyskom/server/lyskom-server-1.9.0.tar.gz
	tar xfz /lysator/ftp/pub/lyskom/server/lyskom-server-2.0.0.tar.gz
	diff -u --recursive --unidirectional-new-file \
		lyskom-1.9.0 lyskom-server-2.0.0

Per Cederqvist's avatar
Per Cederqvist committed
131
  Publish the diff only if it works and is small enough.
132
133

* Announce the release in "Nyheter (om) LysKOM".
134
135

* Add the new version number to Bugzilla.