freebsd-dev/contrib/bmake
Simon J. Gerraty 15441b18e2 Fix use after free bug.
Parse_SetInput:
curFile->fname was using the buffer passed to it - which ReadMakefile frees.
This change makes the comment in ParseEOF about leaking curFile->fname true.
2013-06-18 19:35:51 +00:00
..
lst.lib
mk Sync with upstream version (20130520) that includes same fixes made last week. 2013-05-20 22:51:11 +00:00
PSD.doc
unit-tests Update to bmake-20130330 2013-04-02 21:31:11 +00:00
aclocal.m4
arch.c
bmake.1 Update to bmake-20130330 2013-04-02 21:31:11 +00:00
bmake.cat1 Update to bmake-20130330 2013-04-02 21:31:11 +00:00
boot-strap Update to bmake-20130330 2013-04-02 21:31:11 +00:00
bsd.after-import.mk Merge bmake-20130123 2013-02-01 22:55:27 +00:00
buf.c
buf.h
ChangeLog Update to bmake-20130604 to fix file descriptor leak. 2013-06-05 16:12:50 +00:00
compat.c Merge bmake-20130123 2013-02-01 22:55:27 +00:00
cond.c Merge bmake-20121111 2012-11-16 01:37:25 +00:00
config.h.in
configure Update to bmake-20130330 2013-04-02 21:31:11 +00:00
configure.in Update to bmake-20130330 2013-04-02 21:31:11 +00:00
dir.c Update to bmake-20130330 2013-04-02 21:31:11 +00:00
dir.h
dirname.c
FILES Sync with upstream version (20130520) that includes same fixes made last week. 2013-05-20 22:51:11 +00:00
find_lib.sh
for.c
getopt.c
hash.c
hash.h
install-sh
job.c Update to bmake-20130604 to fix file descriptor leak. 2013-06-05 16:12:50 +00:00
job.h Update to bmake-20130330 2013-04-02 21:31:11 +00:00
lst.h
machine.sh
main.c We really need to get the bsd.own.mk from this tree so the 2013-05-17 19:37:16 +00:00
make_malloc.c
make_malloc.h
make-bootstrap.sh.in Merge bmake-20130123 2013-02-01 22:55:27 +00:00
make-conf.h
make.1 Update to bmake-20130604 to fix file descriptor leak. 2013-06-05 16:12:50 +00:00
make.c Merge bmake-20121111 2012-11-16 01:37:25 +00:00
make.h Update to bmake-20130330 2013-04-02 21:31:11 +00:00
Makefile Update to bmake-20130604 to fix file descriptor leak. 2013-06-05 16:12:50 +00:00
Makefile.config.in Merge bmake-20130123 2013-02-01 22:55:27 +00:00
makefile.in Merge bmake-20130123 2013-02-01 22:55:27 +00:00
meta.c Sync with upstream version (20130520) that includes same fixes made last week. 2013-05-20 22:51:11 +00:00
meta.h Update to bmake-20130330 2013-04-02 21:31:11 +00:00
mkdeps.sh
nonints.h
os.sh
parse.c Fix use after free bug. 2013-06-18 19:35:51 +00:00
pathnames.h
ranlib.h
README
realpath.c Merge bmake-20130123 2013-02-01 22:55:27 +00:00
setenv.c
sigcompat.c
sprite.h
str.c
stresep.c
strlcpy.c
strlist.c
strlist.h
suff.c Sync with upstream version (20130520) that includes same fixes made last week. 2013-05-20 22:51:11 +00:00
targ.c
trace.c
trace.h
util.c
var.c Update to bmake-20130604 to fix file descriptor leak. 2013-06-05 16:12:50 +00:00
wait.h

			       bmake

This directory contains a port of the BSD make tool (from NetBSD)
I have run it on SunOS,Solaris,HP-UX,AIX,IRIX,FreeBSD and Linux.

Version 3 was re-worked from scratch to better facilitate
importing newer make(1) versions from NetBSD.  The original code base
was NetBSD-1.0, so version 3 was built by doing a fresh import of the
NetBSD-1.0 usr.bin/make, adding the autoconf and other portability
patches to sync it with bmake v2, and then NetBSD's make 
of Feb 20, 2000 was imported and conflicts dealt with.
NetBSD's make was again imported on June 6 and December 15, 2000.

In 2003 bmake switched to a date based version (first was 20030714)
which generally represents the date it was last merged with NetBSD's
make.  Since then, NetBSD's make is imported within a week of any
interesting changes, so that bmake tracks it very closely.

Building:

The prefered way to bootstrap bmake is:

./bmake/boot-strap

there are a number of args - most of which get passed to configure,
eg.

./bmake/boot-strap --prefix=/opt

see the boot-strap script for details.

To make much use of bmake you will need the bsd.*.mk macros or my
portable *.mk macros.  See 
http://www.crufty.net/ftp/pub/sjg/mk.tar.gz
which will be links to the latest versions.

On a non-BSD system, you would want to unpack mk[-YYYYmmdd].tar.gz in
the same directory as bmake (so ./mk and ./bmake exist), and
./bmake/boot-strap will do the rest.

If you want to do it all by hand then read boot-strap first to get the
idea.

Even if you have an earlier version of bmake installed, use boot-strap
to ensure that all goes well.

--sjg