Merge branch 'vendor/LESS'
[dragonfly.git] / contrib / bmake / README
1                                bmake
2
3 This directory contains a port of the BSD make tool (from NetBSD)
4 I have run it on SunOS,Solaris,HP-UX,AIX,IRIX,FreeBSD and Linux.
5
6 Version 3 was re-worked from scratch to better facilitate
7 importing newer make(1) versions from NetBSD.  The original code base
8 was NetBSD-1.0, so version 3 was built by doing a fresh import of the
9 NetBSD-1.0 usr.bin/make, adding the autoconf and other portability
10 patches to sync it with bmake v2, and then NetBSD's make 
11 of Feb 20, 2000 was imported and conflicts dealt with.
12 NetBSD's make was again imported on June 6 and December 15, 2000.
13
14 In 2003 bmake switched to a date based version (first was 20030714)
15 which generally represents the date it was last merged with NetBSD's
16 make.  Since then, NetBSD's make is imported within a week of any
17 interesting changes, so that bmake tracks it very closely.
18
19 Building:
20
21 The prefered way to bootstrap bmake is:
22
23 ./bmake/boot-strap
24
25 there are a number of args - most of which get passed to configure,
26 eg.
27
28 ./bmake/boot-strap --prefix=/opt
29
30 see the boot-strap script for details.
31
32 To make much use of bmake you will need the bsd.*.mk macros or my
33 portable *.mk macros.  See 
34 http://www.crufty.net/ftp/pub/sjg/mk.tar.gz
35 which will be links to the latest versions.
36
37 On a non-BSD system, you would want to unpack mk[-YYYYmmdd].tar.gz in
38 the same directory as bmake (so ./mk and ./bmake exist), and
39 ./bmake/boot-strap will do the rest.
40
41 If you want to do it all by hand then read boot-strap first to get the
42 idea.
43
44 Even if you have an earlier version of bmake installed, use boot-strap
45 to ensure that all goes well.
46
47 --sjg