Use Grev. It is the tool for setting both the protocol and revision numbers
of the geode you're writing. The -P and -R only display the current protocol
and revision numbers, not change them. Here are some examples of using grev:
- Create .rev file:
grev new myapp.rev
- Update protocol major number:
grev NPM myapp.rev
- Update protocol minor number:
grev npm myapp.rev
- Change release/revision number:
grev newrev myapp.rev x.y.z
[Note that the book is incorrect in showing only two digits. Grev wants
three period-separated numbers.]
For more information on grev, see section 10.7 in the Tools book.
> - If there are special rules, what might I have done wrong ?
> This is of course a difficult question. Just in case somebody has an
> idea.
I don't know much about drivers, but I would assume there are no special
rules. The only thing that makes a difference to the system is the protocol
number. When GEOS wants to open a driver or library it checks the protocol
number to make sure it is an up-to-date version. If your protocol number is
too low, GEOS won't use it (and will likely report an error if it can't find
a driver that does have a satisfactory protocol number). How to know how high
to set the number is something I do not know.
> - What means the statement
> #PROTOCONST = xxxxx
> which I found in many local.mk files for drivers ?
> Does it have to do with protocols and should I have similar
> definitions ?
> I could not find an explanation in the SDK documentation.
> - GREV commands (most of them) require a "file" parameter.
> Which filename do I have to use ?
> The name of the .goc file does not work.
> Do I need a .REF file ? If yes, how can I build one ?
You create the file, naming it whatever you want. Of course, only a file
name of the form <geode-name>.rev will be recognized. <geode-name> is the
name of the directory your source code is in, which is also the name of the
.gp file, and the name specified in the .gp file on the "name" line. All four
must be the same.
> Regards, Hans Diel
Nathan