Re: [NEWBIE] Compiling a stock circle I got from ceramicmouse

From: George Greer (
Date: 01/24/01

On Tue, 23 Jan 2001, Daniel A. Koepke wrote:

>On Tue, 23 Jan 2001, Peter Ajamian wrote:
>> You're not alone.  I think that one of the most common errors people
>> make when submitting a server as a contribution is they neglect to
>> delete the generated files (config.*, Makefile, *.o, circle and other
>> binaries, etc.).  When someone posts with a problem with compiling a
>> contributed server that's the first thing that I think of.
>I've always sort of wondered why configure pays attention to config.cache.

It's convenient for configuring multiple packages.  There could even be a
system-wide configure cache file so speed up the process of installing new

>Anyway, maybe a distclean script or Makefile rule is in order?

I'd go for Makefile rule so I can get rid of the 'ship' script currently
used to package up a new CircleMUD patchlevel:

--- 8< ---

if [ $# = 0 ];
        echo "ship: usage: ship <cvs-revision-tag>"


if [ -d $VERSION ];
        echo "ship: error: directory $VERSION already exists"

echo Exporting $VERSION from CVS...
cvs -Q export -r $VERSION -d $VERSION circle

echo Now in directory:
echo Preparing $VERSION for shipping...

rm -f src/.accepted
rm -f `find src -name "*.o" -print`
rm -f `find . -name core -print`
rm -f src/conf.h

rm -f src/Makefile
rm -f src/util/Makefile
cat >> src/Makefile << __EOF__
        # You must run "configure" in Circle's top-level directory.  See the
        # README file in that directory for more information.

rm -f bin/[a-z]*
rm -f config.cache
rm -f config.log
rm -f config.status
rm -f lib/core
rm -f lib/etc/players
rm -f lib/etc/players.old
rm -f lib/etc/DELETED
touch lib/etc/players
rm -f lib/etc/board.*
rm -f lib/etc/plrmail
touch lib/etc/plrmail
rm -f lib/etc/hcontrol
touch lib/etc/hcontrol
rm -f syslog
rm -f syslog.CRASH
touch syslog
rm -f log/*
echo "This directory is for log files." > log/README
rm -f lib/house/*
echo "This directory is to save objects in player houses." > lib/house/README
rm -f lib/plrobjs/*/*.objs
cd ..

echo Creating tar.gz...
rm -f $VERSION.tar.gz
tar cf $VERSION.tar $VERSION
gzip -c $VERSION.tar > $VERSION.tar.gz

echo Creating bz2...
bzip2 $VERSION.tar

echo Creating zip...
rm -f $
zip -rq $ $VERSION
--- 8< ---

You'll have to adjust it, but that's what to base it on.

>-dak: thinks CircleMUD should have Makefile at its root.

If we ever autogenerated documentation, sure.  Until then there isn't
anything else actually made except in src/.

George Greer

   | FAQ: |
   | Archives: |

This archive was generated by hypermail 2b30 : 12/03/01 PST