lin-club  

[Haifux] conclusions from r2l

Tzafrir Cohen
Thu, 24 Jan 2002 08:47:26 -0800

Hi

The r2l project is finally finished. Here are a couple of things I've
learned durning participating in it:

* r2l is a bad name

Don't choose names that contain numbers ;-)


* Automatic builing is important

I like writing makefiles, so I tried automating everything with makefiles.
Actually I did so in stages: in each stage I added another thing to the
automated building. In the end I have created a 'make publish' target
package that builds an rpm packageg (and thus verified that the source
builds) and uploads the tarball and the RPMs to my site.

Each further automation has enabled me to spend less attention on the
administrative building process, and more on the code.


* tcl/tk is nice

After I noticed that none f my GUis works in my solaris environment, I
wrote a simple r2l client in tcl/tk that uses the command-line interface
to r2llib. It could be improved, I'm sure. But it turned out to be much
easier than I thought.


* autoconf

At some stage I converted the package to be configured with autoconf
(note: only autoconf, not automake) after figuring that writing an
mini-autoconf from scratch would take more time.

It wasn't that hard to learn how to use it. Generally writing autoconf
scripts involves using the darker (read: posix-bourne-shell-compatible)
sides of shell programming.

There were two tests I needed that I couldn't find in the standard tests
collection that comes with autoconf. I found appropriate macros in the
autoconf contributed macros collection (in the autoconf site). However,
those two macros that I've downloaded did not work well, and I had to
patch them to get them working properly (see the two files in the aclocal
directory of the source distribution).

Anyway, autoconf was really needed. Even though autoconf is not fully used
(--prefix and co. are not used) it has made the build process much easier.

I believe that it is quite a must for every package that has some
non-trivial dependencies.

* man pages

Some of you probably read my rant to linux-il about this. I don't like to
write man pages. Nadav has suggested me to check the groff (7) (not groff
(1)). I managed to somehow skip groff(7) when looking for documentation).

That man page serves two useful purposes:

1. It gives a resonable refeernce to groff
2. It gives a sample of a groff page that is written The Right Way (unlike
   most man pages, including biditext, refreshd and r2l).

Unfortunetly I have not had a chance to check perl pod. I also tried a
bit, and didn't like very much, the package manedit. Manedit is a gnome
editor saves sources to man pages in some xml format, and converts this to
groff. Others may have a different opinion.


And I'll conclude this post with the credits list:

* Matan Ziv-Av, who wrote biditext initially
* Ilya Konstantinov, for getting it to work with QT (Hooking on
  XDrawString16 etc.)
* mulix, for r2llib, parts of biditext
* choo, r2l-plugins (terminal, dockapp and gnome applet)
* emil, for refreshd and solaris debugging
* Shlomif, The perl-gtk early client(where is the KDE applet iindeed?)

* And anybody else who may have contributed

Thanks!

-- 
Tzafrir Cohen                        /"\
mailto:[EMAIL PROTECTED]        \ /  ASCII Ribbon Campaign
Taub 229, 972-4-829-3942,             X   Against  HTML  Mail
http://www.technion.ac.il/~tzafrir   / \


--------------------------------------------------------------------------
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]