# cp bmake/mk/[d-s]*.mk /usr/share/mkI've not yet worked out why, but FreeBSD installs man pages into /usr/share/man/man/man*. Look in sys.mk for conflicts with man.mk
BASE=`pwd` mkdir /tmp/bmake cd /tmp/bmake $BASE/bmake/configure gmake -f makefile.boot gmake -f makefile.boot installIf you really want to, you can use the bmake thus produced to re-build bmake
cd $BASE/bmake bmake obj bmake bmake installbut I don't bother.
These Makefiles use my own macro files which are derrived from the bsd.*.mk macros, if you are not allowed to install bmake/mk/*.mk in /usr/share/mk or /usr/local/share/mk you can use:
bmake -I ${BASE}/bmake/mkFinally, if you do not have the BSD mandoc macros for [nt]roff, or you do not want the man pages formatted, set NOMAN=no in your environment or in Makefile.base
symlink
s named
src pointing off to no where. These should point to the
directories holding the appropriate distribution. For instance:
$ ls -l ssl/bin/rdist/src lrwxrwxr-x 1 sjg wheel 17 Jun 20 1996 ssl/bin/rdist/src@ -> ../../../../rdist-6.1.3 $Obvriously you will need these links correct before you can expect to build things like SSLrdist. See other distributions for details on where to get the other distrbutions you might need.
Now just:
cd $BASE bmake obj bmake depend bmake bmake install
I have an arrangement like:
/usr/local/obj -> src/obj.${MACHINE}and then I set
BSDSRCDIR=`cd /usr/local/src; /bin/pwd` BSDOBJDIR=/usr/local/objYou must set BSDSRCDIR with the same value that /bin/pwd produces as otherwise obj.mk will do the wrong thing.
If you do not want shared libraries built, either set NOPIC in Makefile.base or on the command line, or create .nopic in the src or obj directories concerned.
First unpack all the Quick.com.au packages in a single tree such as /usr/local/src/sjg.
mkdir -p /usr/local/src/sjg cd /usr/local/src/sjg gzcat /tmp/bmake.tar.gz | tar xvf - gzcat /tmp/SSLrsh.tar.gz | tar xvf - .. ..Now, if you are only building for a single architecture you can:
cd bmake ./configure make -f makefile.boot make -f makefile.boot installOtherwise if you are shareing the src via NFS on different machines, you can:
mkdir /tmp/bmake cd /tmp/bmake /usr/local/src/sjg/bmake/configure # or whereever the src is gmake -f makefile.boot gmake -f makefile.boot installThe above relies on a make that handles VPATH correctly.
Unless you are on a BSD system you may have to create a /usr/share/mk/sys.mk (or /usr/local/share/mk if you prefer). bmake/mk/*.sys.mk are examples that I have used, pick one and copy it to sys.mk. Do NOT replace an existing /usr/share/mk/sys.mk
Anyway, now you can return to the main game.
cd /usr/local/src/sjg bmake obj bmake bmake installActually, the first time make is invoked it will cause Makefile.base to be created and then tell you to restart make. Also, you will need to be root to install anything as the install macros use chown which is usually restricted to root.