Setting up your CVS work environment
|
First of all set up your CVSROOT environment variable and log in onto
our CVS server. When prompted for a password, you can enter anoncvs:
if you're using CSH/TCSH [user@host] ~ $ setenv CVSROOT :pserver:anoncvs@apache.org:/home/cvspublic
[user@host] ~ $
if you're using SH/BASH [user@host] ~ $ CVSROOT=":pserver:anoncvs@apache.org:/home/cvspublic
[user@host] ~ $ export CVSROOT
[user@host] ~ $
and then log in on the CVS server [user@host] ~ $ cvs login
(Logging in to anoncvs@cvs.apache.org)
CVS password: anoncvs
[user@host] ~ $
|
You then have to check out the sources of the WebApp module, those
reside in the jakarta-tomcat-connectors repository, under the
webapp directory. To check the sources out, do:
[user@host] ~ $ cvs checkout jakarta-tomcat-connectors/webapp
cvs server: Updating jakarta-tomcat-connectors/webapp
U jakarta-tomcat-connectors/webapp/.cvsignore
[...] U jakarta-tomcat-connectors/webapp/support/wa_version.m4
cvs server: Updating webapplib
[user@host] ~ $
and let's move them into a more accessible location [user@host] ~ $ mv jakarta-tomcat-connectors/webapp webapp
[user@host] ~ $ rm -rf jakarta-tomcat-connectors
[user@host] ~ $
then it's always better to clean up the checked out structure [user@host] ~ $ cd webapp
[user@host] ~/webapp $ cvs update -APd
cvs server: Updating .
cvs server: Updating apache-1.3
[...] cvs server: Updating support
cvs server: Updating webapplib
[user@host] ~/webapp $ cd ..
[user@host] ~ $
|
Dealing with the Apache Portable Runtime sources
|
Perfect. Now, if you're building the WebApp module for Apache 2.0, you
won't need to check out the Apache Portable Runtime library, since it is
already included into the web server distribution. If, instead, you are
building the WebApp module for Apache 1.3, you need to obtain a
copy of APR, and you can do that checking out a copy of their CVS
repository (namedly, apr):
[user@host] ~ $ cvs checkout apr
cvs server: Updating apr
U apr/.cvsignore
[...] U apr/user/win32/groupinfo.c
U apr/user/win32/userinfo.c
[user@host] ~ $ mv apr jakarta-tomcat-connectors/webapp
and let's clean up this directory structure as well [user@host] ~ $ cd apr
[user@host] ~/apr $ cvs update -APd
cvs server: Updating .
cvs server: Updating atomic
[...] cvs server: Updating user/unix
cvs server: Updating user/win32
[user@host] ~/apr $ cd ..
[user@host] ~ $
|
All that AutoConf magic
|
Great, now, for semplicity's sake we can move the APR directory in the
WebApp module directory, as it is in all pre-rolled source distribution
tarballs, and create the configure script. Please note that
WebApp requires GNU AutoConf version 2.52 or greater to build the
configure script from its M4 sources, if you don't have this
version, you can easily download a nigtly source distribution, which
includes a pre-built configure script.
let's move APR within the WebApp module directory [user@host] ~ $ mv apr webapp
[user@host] ~ $
and create the configure script for both of them [user@host] ~ $ cd webapp
[user@host] ~/webapp $ ./support/buildconf.sh
--- Checking "autoconf" version
autoconf version 2.52 detected.
[...] Creating configure ...
--- All done
[user@host] ~/webapp $ cd ..
[user@host] ~ $
|
Please note that if you didn't move the APR directory inside the WebApp
module directory, the buildconf.sh script will nag about not
finding the APR sources, you just have to generate APR's configure as
well, and then, when you're going to run the configure script for the
WebApp module, you'll have to specify the --with-apr=directory
parameter on the command line, of course replacing directory with
the path of where you checked out the APR sources, right?
[user@host] ~/webapp $ ./support/buildconf.sh
[...] --- Cannot run APR "buildconf" script
If you need to build the WebApp module for Apache 1.3
you will have to download the APR library sources from
http://apr.apache.org/ and run its "buildconf" script
[...] Creating configure ...
--- All done
[user@host] ~/webapp $ cd ..
[user@host] ~ $ cd apr
[user@host] ~/apr $ ./buildconf
buildconf: checking installation...
buildconf: autoconf version 2.52 (ok)
[...] Creating include/arch/unix/apr_private.h.in ...
Creating configure ...
[user@host] ~/apr $ cd ..
[user@host] ~ $
|
Whoha, that's IT?
|
That's it, now you basically have a full WebApp module source
distribution (well, apart from this documentation, which gets generated
when we roll the sources tarballs). Now you're ready to go and try out
the incredible wonders (and bugs) of the very latest sources of the
WebApp module.
|