W3C libwww

Getting Libwww from the CVS Repository

Using CVS allows you to follow the development of libwww closely and to contribute much easier. The following requires that you are familiar with CVS - if not then look at Cyclic's pages on CVS or the excellent information provided by Pascal.Molli.

Libwww Releases

First of all, using CVS allows you to use the very latest version of libwww - as soon as a fix or a new feature is commit'ed to the CVS repository then you can update your working version and you will have it right away.

The purpose of "releases" is to say that now we believe that the code is stable with a well defined set of features. Until now, we have been giving out distribution files every time we announced a release. This will not change, but you can use the CVS repository in exactly the same way - often with much less overhead than dealing with a distribution package.

Every release is marked in the CVS repository using tags, so that it is possible to retrieve a complete release using the CVS -r option (note that -r is "sticky"). Check out the online CVS log walker for the current set of release tags. We were less strict tagging all the files in early releases so don't go too far back in the past if you expect to be able to compile the code!

Anonymous CVS Checkout

This is read-only access which means that you can check out the code but not commit any changes. However, it allows you to make up-to-date patches which are much easier for the libwww maintainers to integrate. Before you can check out the sources, you need to be running CVS 1.9 or later, and login by running the following command:

% cvs -d :pserver:anonymous@dev.w3.org:/sources/public login

after which you type "anonymous" as password. To get the latest version from the CVS repository, run this command:

% cvs -d :pserver:anonymous@dev.w3.org:/sources/public -z3 checkout libwww

After which you will get all the code coming at you, you'd better have at least 10MBytes available on your machine. If you want to get a specific release using CVS tags then you need to add a -r option, for example

% cvs -d :pserver:anonymous@dev.w3.org:/sources/public -z3 -r Release-5-1m checkout libwww

Check the CVS log walker for the current set of release tags.

SSH Based CVS Checkout

This is read/write access to the CVS repository which means that you must have SSH access to the repository. You setup CVS to using SSH as remote shell by setting the CVS_RSH env variable. Using bash, it looks like this:

% export CVS_RSH=/usr/local/bin/ssh

When you are using SSH, you don't need to do a CVS login. Instead you can just go ahead checking out libwww like this

% cvs -d dev.w3.org:/sources/public checkout libwww

Again, if you want a specific revision then use something like this

% cvs -d dev.w3.org:/sources/public -r Release-5-1m checkout libwww

Compiling from Scratch on Unix

When you get libwww from CVS there are some files (header files and make filed) that have to be generated before you can compile it. These files are generated by software that you MUST have on your platform - luckily they are all free! The list is

GNU automake
Automake is a tool for automatically generating Makefile.in's which are used by autoconf
GNU autoconf
A tool for automatically generating Makefile's which are used by make
W3C www
Out own Line Mode Browser. If you don't already have it then you have to download a wrapped up distribution package and compile it from there

I also strongly recommend that you are using GNU make and GCC. Many OS specific make's don't have the libwww make files.

After having checked out the libwww code, you should now run the following two commands

% automake
% autoconf

Now you have a set of files equivalent to what you normally get in a distribution file. You are now ready to compile the software


Henrik Frystyk Nielsen,
@(#) $Id: cvs.html,v 1.1 1998/05/21 21:35:53 frystyk Exp $