Commit Graph

207 Commits

Author SHA1 Message Date
Mark Ovens
c8794db7c3 New script (and it's README) for searching the ports tree. Add this script
to the main README.

This was originally submitted as a port but was added to Tools/scripts
instead at alex's suggestion.

PR:		20863
Approved by:	alex
2000-08-28 11:37:23 +00:00
Will Andrews
ad8939a4f6 Make -n work again. Add new option -s to allow people to specify a
$DISTDIR to put distfiles in, if they can't touch $PORTSDIR/distfiles.
If this is freefall, default to $tmpdir, which is relatively secure since
most users on it are trusted.  Reset FETCH_BEFORE_ARGS to "-btA" instead
of "-btsA", so the distfile is actually fetched.  Add a method to allow
the name of the module to be changed if -i is used.  Update to use the
modulesupdate that's in /usr/local/bin.

Addport should now work properly on freefall, without -v option.

Submitted by:	roger (-s, $tmpdir by default on freefall)
Thanks to:	peter (copying modulesupdate to /usr/local/bin)
2000-08-19 08:08:47 +00:00
Will Andrews
727770ca84 Properly check -d argument, and return usage() if it's not there. Also use
Sys::Hostname with hostname() instead of `hostname`.

Hostname stolen from:	CVSROOT/log_accum.pl
2000-08-11 21:44:18 +00:00
Will Andrews
4367619221 Minor cleanups. Print usage() if no arguments are passed. Get rid of
unused $pwd variable.  Remove extra cruft.  Fix comments.

usage() problem submitted by:	knu
2000-08-11 14:31:28 +00:00
Satoshi Asami
ed58e5d6dd Add -nocopy option to prevent bindist.tar from being copied over. Could
be useful between the first and second phases of the build.

Do a "killall make fetch" to clear any remaining processes.
2000-08-10 20:01:42 +00:00
Will Andrews
b1a6849d31 Major update to addport. Many *MANY* bugfixes. Addport should now work
with a directory specified as ``.'' or containing a ``/''.  A new option -i
was added to allow people more control over the port's position in the CVS
repository.  A new feature was added to allow multiple ports to be added in
the same execution of addport.  Addport will now add a port to the category
Makefile properly if it is the first port in a category.

A major reorganization of addport was also performed - now the functions
are at the *bottom* instead of scattered around.  This should allow easier
understanding of the process addport goes through.  I've also added -w to
perl's exec args, and moved to a hash for getopts().

usage() was extended to help explain addport's functionality better.

Bugs submitted by:	nbm
Some help from:		sheldonh
2000-08-09 19:27:29 +00:00
Will Andrews
9f764ffc42 Fix special case where people use ``.'' for the argument to -d. I'm not
very good with perl yet, so anyone who can propose a better way to do
this (with s/// or m// or something using regex) that might also include
the case where the argument contains slashes (i.e. games/somegame).  But
anyways, this should catch folks who use ``.''.  :->

Submitted by:	obrien, sada
2000-08-06 02:51:30 +00:00
Satoshi Asami
92b5be3047 Make this run on ${portbuild}/bak/distfiles rather than
${portbuild}/distfiles so it can be interleaved with the next run of
build.
2000-08-04 07:20:52 +00:00
Maxim Sobolev
dc30f97f73 Add missed '>' to my e-mail. 2000-08-02 07:13:11 +00:00
Maxim Sobolev
c978a0f298 Add gnomedepends.py to our collection of helpfull scripts.
gnomedepends is a script, which analyses pkg/PLIST and gives an advice as to
which GNOME ports should be listes in {RUN,LIB}_DEPENDS for the port to ensure
correct removal of GNOME shared directories.
2000-08-02 07:10:24 +00:00
Maxim Sobolev
2e9b099ca0 Various fixes and improvements. 2000-07-19 15:41:51 +00:00
Alexander Langer
a53e3a9f5f Add hack for gzipped files that are not .tar.gz files and uncompress
them The-Right-Way(tm).

This whole uncompress-algorythm should be reworked, though.
2000-07-19 15:11:26 +00:00
Satoshi Asami
8d9ad9015d Fix benign bug which had the script claiming to delete any package that
includes a missing package's name as a substring (e.g., ja-mh-6.8.4 vs.
mh-6.8.4), when it wasn't actually deleting it anyway.
2000-07-12 23:29:30 +00:00
Maxim Sobolev
3af264c879 Add "-s" (silent) option useful for shell scripts. 2000-07-10 13:40:08 +00:00
Maxim Sobolev
42f3104099 Add checknewver.sh - a shell script which checks for availability of newest
version of distfiles on MASTER_SITES. This is still work in progress, so
please use with caution and don't forget report bugs and submit patches.
2000-07-07 15:00:38 +00:00
Maxim Sobolev
2ec55b0869 Add checknewvers.sh - a script which checks for availability of the newest
versions of distfiles on MASTER_SITES. This is still work in progress, so
please use with caution and don't forget report bugs and submit patches.
2000-07-07 14:57:41 +00:00
Satoshi Asami
d8176a286f Back out (1) in previous commit -- extra directories are fatal again.
Otherwise it is often too hard to find out which port left the directory
behind since packages propagates extra directories.  Also, many
of the extra directories contain files, so it makes no sense to ignore them.
2000-07-05 17:49:46 +00:00
Maxim Sobolev
54f7240973 Allow existing CVS_RSH environment var to take precedent. 2000-07-04 09:55:31 +00:00
Will Andrews
ed1447026c Allow existing CVS_RSH environment var to take precedent.
Submitted by:	sobomax
2000-07-03 19:58:41 +00:00
Satoshi Asami
f20bd10615 (1) Make extra files fatal errors only if they are files -- extra
directories are still included in the list of "extra stuff", but
    are not considered fatal (for now).

(2) Use ls's -a flag to print out list of all files in ${PREFIX}, for
    obvious reasons.
2000-07-02 09:32:30 +00:00
Will Andrews
bbdaf83188 Fix addport so that it will work on freefall. Remove old cruft left
around from older versions of addport.  Make addport a little more helpful
by actually displaying usage() if no args are passed.
2000-06-30 23:33:35 +00:00
Maxim Sobolev
9ef89b7e83 Add close-pr - a slightly hacked version of edit-pr(1) to quickly close PR. 2000-06-26 17:49:04 +00:00
Alexander Langer
b26dd59505 Add extract-lines for .Z archives.
Change MAINTAINER: alex@big.endian.de --> alex@FreeBSD.org

Reviewed by:	will
2000-06-10 11:12:10 +00:00
Maxim Sobolev
9a158320b9 Add a traling slash ("/") to the /usr/ports/ and /usr/ports/distfiles/ to make
the script working for the cases when either one directory is a symlink.

Submitted by:	Juriy Goloveshkin <juriy@avias.com>, Volodymyr Kostyrko <arcade@limbo.dn.ua>
2000-06-06 10:05:06 +00:00
Maxim Sobolev
68170052a9 Add tag and MAINTAINER. 2000-06-05 15:50:32 +00:00
Maxim Sobolev
6fed6d6bdd Add distclean.sh - a little script to check set of distfiles against currently
installed ports collection and prompt to remove unmatching entries (i.e.
distfiles that doesn't have corresponding md5 file).

Hardly requiested by:	will
2000-06-05 15:47:25 +00:00
Will Andrews
2247ec04c2 Update for multiple ports. Also add MAINTAINER/Created [on,by] lines.
Submitted by:	maintainer
2000-05-24 05:29:54 +00:00
Will Andrews
d48209bc9b Add checksum.sh script that checks a port or ports for broken distfiles and
gives a diff of any port with broken distfiles, if the distfile names are
the same.  This script will help keep more ports' up-to-date distfiles on
ftp.FreeBSD.org.

PR:		18723
Submitted by:	Alexander Langer <alex@cichlids.com>
2000-05-22 10:02:42 +00:00
Maxim Sobolev
9a170ebda5 Make getpr work for remote committers as well. 2000-05-19 08:09:53 +00:00
Satoshi Asami
d36051792d (1) Make this file callable in two phases (checksum, package) so distfiles
can be fetched even if the packaging fails.  This is to ensure distfiles
    with correct checksums can be fetched and put on ftp.FreeBSD.org
    before they disappear from the original master sites.

(2) Delete port and all dependencies after packaging, and print out
    list of

 (a) Security-related files (set[ug]id flag set or world-writable)

 (b) Extra files and directories

Requested by:	 kris (2a only)
2000-05-08 07:37:28 +00:00
Michael Haro
546a427a27 Readme describing all the scripts in this directory. Somebody good at
writing docs should probably fix this file.
2000-05-01 20:00:10 +00:00
Michael Haro
aceebed158 3 little scripts I use when dealing with port update PRs.
getpr   - downloads a problem report from GNATS and attempts to extract
          the patch, shar, uuencoded file from it.
          this probably needs to be checked for potential security problems.
prpatch - just does `patch $1 < pr-patch' (pr-patch is created by getpr)
prdone  - checks in the port, attempting to fill out the commit message using
          information from the problem report and then takes you into edit-pr
		  so you don't forget to close the PR.
2000-05-01 19:53:54 +00:00
Michael Haro
8ec2364637 Future replacement to easy-import for adding ports to the tree.
This still needs work, but I want to get this out there so people
can comment on it.  This is really only of use to committers.
2000-05-01 19:47:14 +00:00
Michael Haro
784b307d44 A tool to check whether all your ports are installed properly, what files
have changed, what new files there are, and so forth.

Created by: Neil Blakey-Milner <nbm@mithrandr.moria.org>
2000-05-01 19:44:50 +00:00
Satoshi Asami
df6b4a0473 (1) Be a little less picky about finding read-only mounts.
(2) Create directories before trying to copy files over.

(3) There's no -a option to scp anymore.
2000-03-21 18:30:40 +00:00
Satoshi Asami
f95eee7f03 Add a few more error tags (bison, ELF, REQUIRES_MOTIF, dependency, new
compiler error).
2000-03-02 23:07:03 +00:00
Satoshi Asami
0a03ad0d0e Add a few more files to bindest. 2000-02-17 00:15:41 +00:00
Satoshi Asami
b0abcbc5f3 freebsd.org -> FreeBSD.org 1999-10-12 12:12:34 +00:00
Satoshi Asami
2adb18bf67 Increase wait from 4 hours to 5 hours. Seems the ports are taking longer
to build now.
1999-10-10 11:33:15 +00:00
Satoshi Asami
3bb7126018 Don't run make describe in parallel -- the outputs gets mangled sometimes. 1999-10-10 11:32:46 +00:00
Satoshi Asami
51d8f5dd29 Minor cleanup, remove excessive tests. 1999-09-24 01:20:23 +00:00
Satoshi Asami
ac78fcedc4 Adjust to new directory structure. 1999-09-24 01:19:22 +00:00
Satoshi Asami
face7489ea Put the logs and error logs in a dated subdirectory of the archive
directory and create symlinks to it.

Move index generation back into the parallel part, let's see if the
echo `perl` fix to bsd.port.mk will make a difference.  Move the index
syntax check out of the background job so it can be properly flagged.
1999-09-22 13:02:21 +00:00
Satoshi Asami
e8e78d7877 Call bothlogs. 1999-09-22 01:00:46 +00:00
Satoshi Asami
e25ec83995 A small script to generate a list of logs that are in both 3-stable
and 4-current.
1999-09-22 01:00:31 +00:00
Satoshi Asami
c1eecfce5a Put build logs in "archive/buildlogs" and make a symlink to it. 1999-09-22 00:59:47 +00:00
Satoshi Asami
84768fa69e Another case for compiler error. 1999-09-22 00:58:48 +00:00
Satoshi Asami
1ef91d42b2 Run chflags if rm -rf of chroot dir fails -- some port may have
left some schg junk around.
1999-09-22 00:58:26 +00:00
Satoshi Asami
1ba68ec84e Run Xvfb if it exists and set DISPLAY accordingly. This helps ports
that require xrdb and other inane stuff during build.
1999-09-22 00:57:02 +00:00
Satoshi Asami
4e920fa436 Remove /var/db/pkg/* *inside* chroot area, not outside. 1999-09-11 13:19:32 +00:00
Satoshi Asami
cae9020a73 Little whitespace fix. 1999-09-11 01:41:52 +00:00
Satoshi Asami
b3037be663 Note that you need /usr/lib/aout/c++rt0.o for package building. It's not
included in bindist or any of the compat*dists.
1999-09-11 00:57:00 +00:00
Satoshi Asami
95eddd5009 This is supposed to be 4-current, not 3.1-release. 1999-09-11 00:54:03 +00:00
Satoshi Asami
67b0efb7ed Don't delete the whole /usr/games, leave strfile behind. At least one port
(misc/fortuneit) needs it.
1999-09-11 00:51:51 +00:00
Satoshi Asami
632c2ef905 Improve snapshot ftp installation. Put hostnames, distributions etc. in
variables instead of command lines.  Create /var/db/port.mkversion.
1999-09-11 00:48:37 +00:00
Satoshi Asami
cf0ffa76bf (1) Instead of specifying list of package names of dummy ports (i.e.,
XFree86, Motif) to copy, make a variable hold directory names, and
    do a "make package-name" in there to obtain the package names.

(2) Exit if there is problem in INDEX.  A line that contains
    "non-existent" (suggesting a dangling dependency) or a line that
    has less or more than nine |'s flag errors.

(3) Pass the fifth argument (bindist.tar's md5) to setupnode.

(4) Typo in spelling "restricted".
Submitted by:	     marcel

(5) Run cvsup at verbosity level 0 instead of 1.

(6) Print out only ${PKGNAME}, not ${PKGNAME}.log or ${PKGNAME}.tgz
    when reporting new or old packages/failures.

(7) Archive /usr/ports used to build packages in ${branch}/tarballs.
Requested by:	       steve
1999-09-11 00:35:51 +00:00
Satoshi Asami
20f70843a3 (1) Remove FORCE_PKG_REGISTER, it is not necessary anymore. Remove
everything under /var/db/pkg/* before installing dependencies and
    during final cleanup.

(2) Change OSREL, OSVERSION and PORTOBJFORMAT (if necessary).  Comment
    out those for 3-stable.
Reported by:  paul, tg

(3) Move mtree until after we actually mount /usr/src. ;)
Reported by:   taoka

(4) Run ldconfig with and without -aout in all sorts of directories to
    pick up everything that could be in compat dirs etc.  Run ldconfig
    -aout -R after cleanup too.
1999-09-11 00:18:38 +00:00
Satoshi Asami
0a15669df6 Add extra argument md5 for bindist.tar. Skip scp if md5 matches
what the client already has.
1999-09-11 00:11:12 +00:00
Satoshi Asami
9a4b76df92 Change OSREL and OSVERSION for 3 and 4 branches. (The ones for 3-stable
are commented out anyway....)
1999-09-11 00:09:22 +00:00
Satoshi Asami
5a8bbc0d75 Add check for "invalid category" error.
Add another case for compilation error (undeclared variable).
1999-09-11 00:07:58 +00:00
Satoshi Asami
16773b1535 Explict specify NFSv2 for mounting /usr/src and /usr/obj during make world. 1999-09-11 00:06:08 +00:00
Satoshi Asami
10bd1061ba Copy logs to ${portbuild}/buildlogs/${branch}.log.${date}.
Replace another explicit mail address with ${mailto}.
1999-09-11 00:03:12 +00:00
David E. O'Brien
b6461b0294 Id->FreeBSD rename take 2
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1999-08-25 04:43:00 +00:00
Satoshi Asami
8d5bb6353e Do not require dependencies to be deleted to be explicitly listed.
Any dependency that doesn't exist as a package will be automatically
deleted from the list of dependencies.
1999-08-18 10:24:53 +00:00
Satoshi Asami
d2a070ab6a Move CHECKSUM.MD5 generation to after INDEX splitting. Not much change
in functionality but echo statements will print the counts right.
1999-08-01 19:27:43 +00:00
Satoshi Asami
230004a3c3 Parallelize things a bit more. Now we'll do index/cdrom/restricted
list generation at the same time we're setting up the clients.

duds generation is intentionally separate.  If we get an error back
from that one (usually means someone committed a Makefile with a
syntax error), abort the whole thing so we won't generate a faulty
index and destroy the stuff that's been builtbefore.

Lockfile handling is now moved to dopackages2 so we won't overwrite
the build.log file just to say "skipped".

Generate INDEX right after packages are built, from the same INDEX
that was used to build them.

Compare the packages from this build with the previous one and report
what's missing and whatnot.
1999-07-30 07:26:52 +00:00
Satoshi Asami
5779c79e66 Create lock file so you won't have two of these running. Also, separate
the report mailing address into the configurable variables section.
1999-07-30 07:19:44 +00:00
Satoshi Asami
83855eba5a Compare the last full runs (and not only the last partial runs). 1999-07-30 06:54:27 +00:00
Satoshi Asami
99a7dab167 Run with -j4.
Exit with error status if an error occured.
1999-07-30 06:53:31 +00:00
Satoshi Asami
79ab397bca Run with -j4. 1999-07-30 06:53:00 +00:00
Satoshi Asami
9c3aa283bc Intentionally set up ${PORTSDIR} with symlink to catch broken ports.
Suggested by:	takamune@avrl.mei.co.jp
1999-07-30 06:52:02 +00:00
Satoshi Asami
8f42a57801 Little script to convert ports/INDEX to packages/INDEX. 1999-07-30 05:51:04 +00:00
Satoshi Asami
a1431c4e37 Move message about skipping missing packages into the right else clause. 1999-07-14 05:58:12 +00:00
Satoshi Asami
7f1d21d66f Print out date and time the port is killed due to timeout. 1999-06-25 02:07:29 +00:00
Satoshi Asami
f07de8de4f Plularity typo. 1999-06-25 02:06:51 +00:00
Satoshi Asami
c2ae7d52ff Driver script for whole build process. It will
(1) cvsup
(2) run cvs update on the ports and doc trees
(3) generate new index
(4) generate new duds list
(5) move old packages and distfiles out of the way
(6) build packages
(7) build packages again (to salvage those died with transient errors)
(8) generate restricted list
(9) generate no-cdrom list

Steps (3)-(9) are repeated for 4-current and 3-stable.
1999-06-22 10:43:10 +00:00
Satoshi Asami
be0abd7000 Add support for 4-current. Add /compat to list of directories to
delete after building is done.  Run mtree regardless of the directory
exists or not.  Do not use local copy of dependency packages -- it is
too hard to maintain consistency -- always use one on master.
1999-06-22 10:37:46 +00:00
Satoshi Asami
45f51c8307 Timeout port builds after 4 hours. This will prevent ports that get
stuck indefinitely in fetch or configure from hanging up the entire
build process.
1999-06-22 10:18:40 +00:00
Satoshi Asami
d18483f0fa Print out the time when the build starts and ends. 1999-06-22 10:13:23 +00:00
Satoshi Asami
613cff9828 Three scripts to look into the error logs and generate the now-famous
web page of errors.
1999-06-22 10:11:00 +00:00
Satoshi Asami
50f1d25176 Little helper scripts to upgrade your machinery. 1999-06-22 09:51:31 +00:00
Satoshi Asami
ff4726b2bb A little script to copy changed/new distfiles over to wcarchive. This
probably won't be of much use to too many people, but just FYI.
1999-06-22 09:48:00 +00:00
Satoshi Asami
a0a221bc9c A little script to fire up checkmachines. Put in /usr/local/etc/rc.d. 1999-06-22 09:30:27 +00:00
Satoshi Asami
8ec91a7640 The makeindex and makeduds scripts now take a "branch" argument to work
on the specified branch.
1999-06-22 07:45:34 +00:00
Satoshi Asami
3dc9d1aad2 A perl script to run a command with a timeout. The command is killed if it
doesn't complete within the specified timeout period.

I tried to do this from within the pdispatch script, but I couldn't
get all the auxiliary processes to be killed correctly so implemented
this as a separate script in perl.
1999-06-22 06:47:21 +00:00
Satoshi Asami
9478eafe5e Setup a client machine. Unmounts all read-only mounts that looks like
portbuild temporary mounts, deletes all the chroot dirs and copies the
portbuild script and the correct bindist tarball.
1999-06-22 06:41:39 +00:00
Satoshi Asami
15d5069eb1 Delete the chroot dirs before starting the load average reporting
script so that a rebooting machine doesn't join the cluster in an
unclean state.
1999-06-22 06:34:52 +00:00
Satoshi Asami
547a32d999 Update to reflect recent world order. In particular, you need /dev/bpf0
to build some ports.
1999-05-12 08:09:18 +00:00
Satoshi Asami
60251381ce Correctly deal with the http field in index lines.
Submitted by:	steve
1999-05-05 07:25:57 +00:00
Satoshi Asami
8dddbbe6dd (1) Make it clear that only I am allowed to commit to bsd.port.mk.
(2) New variable USE_ZIP -- will change EXTRACT_SUFX to ".zip" and
    extract commands/arguments accordingly.
Submitted by:	jseger

(3) Use ${GREP} in some places where grep was used.

(4) A little update to the MASTER_SITES_GNU list.
Submitted by:	cpiazza@home.net

(5) New target clean-for-cdrom-list and clean-restricted-list -- will
    print out commands to delete un-cdromable or unredistributable
    files.  Save them into a shell script for later use.

(6) Add CXXFLAGS="${CXXFLAGS}" to configure's environment.
Submitted by:	reg@shale.csir.co.za
PR:		11353 (part 3/3)

(7) Print out a warning if you try to install without being root.
    Abort if ${PREFIX} is not writable.

(8) Add web site to INDEX as tenth field.
Reviewed by:	wosch, steve, scrappy
1999-04-28 06:20:23 +00:00
Satoshi Asami
b8ccbc9c4a We are now in 3.1-STABLE. 1999-03-22 08:46:24 +00:00
Satoshi Asami
42b27e8ff8 Various updates. 1999-03-22 05:44:47 +00:00
Marc G. Fournier
c5f0e8acef a print statement was added where it wasn't supposed to be, in a file that
I hadn't meant to change...
1999-03-13 04:25:21 +00:00
Marc G. Fournier
d5ba786a25 Commit all Y2K/WWW_SITE changes from today... 1999-03-11 21:47:15 +00:00
Satoshi Asami
679db78f2c Note that makeinfo and install-info also needs to be updated. 1999-01-26 03:09:17 +00:00
Satoshi Asami
8b817234de (1) Do not delete and recreate the chroot dir for every new package
that is built.  This saves a lot of time, especiall when the
    parallelism (the number of jobs per machine, not the number of
    machines) is low.

    However, the build script only blows away /usr/local and
    /usr/X11R6, so if there is a port that does some nasty things
    outside that area, all bets are off.

(2) Better load balancing.  Now, each machine reports its own
    load in a form of a text file, which the master merely aggregates
    to pick the lowest-loaded machine(s).  Other than generally
    running faster (and more up-to-date) under loaded conditions, the
    master script will no longer hold up until a timeout when a
    machine goes down.
1999-01-26 03:06:24 +00:00
Satoshi Asami
b568349be8 The build root is now one directory up from here. 1999-01-22 10:20:32 +00:00
Satoshi Asami
95573c6baf Moved the scripts into subdirectory "scripts" with repository copy. 1999-01-22 10:10:01 +00:00
Satoshi Asami
58dc5e1a21 By defining NOCLEAN in the environment, you can have the chroot dir left
behind.  Useful for debugging.

Touch package on master after copying it back.  This will avoid synchronization
problems when the machines' clocks are wildly skewed.

Remove log from master when build is successful.  No need to keep around
transient error logs.
1999-01-22 10:00:08 +00:00
Satoshi Asami
15f7d52568 Print out maintainer. 1999-01-22 09:57:16 +00:00
Satoshi Asami
a94fca4984 Sync this with my private copy. 1999-01-22 09:37:15 +00:00
Satoshi Asami
65d3ba8a30 Add /usr/libexec/elf/ld to list of files to update. 1999-01-08 11:22:29 +00:00
Satoshi Asami
a348de2d8c Typo in echo statement. 1999-01-07 08:21:37 +00:00
Satoshi Asami
8c6d5b075b Add sys.mk to list of files you need to update. 1999-01-05 06:51:27 +00:00
Satoshi Asami
75ec193fb8 The scripts to allow parallel package building. See the README file in
Tools/portbuild for details.

Note that this is still a major work in progress.  I probably forgot
something but I need to go to sleep.  At least it works here (most of
the time :).
1998-12-28 13:27:27 +00:00
Steve Price
8bc192fe23 Make this require perl version 5.002 or later to run.
Noticed by:	John Baldwin <jobaldwi@vt.edu>
1998-12-15 16:28:52 +00:00
Satoshi Asami
df0519ed93 Fast INDEX generation. See bsd.port.mk rev. 1.300 for details.
Submitted by:	steve
1998-12-12 07:41:49 +00:00