Codebase list bsdowl / scrub-obsolete/main INSTALL.bmake.md
scrub-obsolete/main

Tree @scrub-obsolete/main (Download .tar.gz)

INSTALL.bmake.md @scrub-obsolete/mainraw · history · blame

# Installation of BMake

If you are working in hostile wilderness and do not have access to an
appropriately packaged compatible **make** program, you may try the
**bmake** program found at crufty's.

Let us review together the installation procedure.


## Download

We downlad the files `bmake.tar.gz` and `mk.tar.gz` distributed by
their author:

    http://void.crufty.net/ftp/pub/sjg/bmake.tar.gz
    http://void.crufty.net/ftp/pub/sjg/mk.tar.gz

In the sequel, we assume that the tarballs were downloaded to
`~/distfiles`.


## Explode

Point your shell to a working directory and explode the tarballs with

```console
% tar xzf ~/distfiles/bmake.tar.gz
% tar xzfC ~/distfiles/mk.tar.gz bmake
```

## Build and install

The tarballs are shipped with a _build and install_ script, that will
use `/usr/local` as installation prefix.

```console
% ./bmake/boot-strap --prefix=/usr/local --install
```

It is possible to change this prefix, as in

```console
% ./bmake/boot-strap --prefix=${HOME} --install
```

If the command completes succesfully, the `bmake` program is then
installed under the given prefix *PREFIX* and the standard macros
shipped with the program are in `${PREFIX}/share/mk`.  If appropriate,
use the same installation prefix for BSD Make Pallas Scripts when you
later install them.


## Portability

The portability of **bmake** is excellent, I only experienced problems
while trying to build it with an obsolete GCC on Solaris 10.  Versions
of GCC newer as 3.6 seem to build **bmake** without error.