How portable is BSDBuild?
BSDBuild is portable to many operating systems including most flavors of
Unix, MacOS X and Windows.
It requires nothing more than a standard
make utility (such as GNU make
or BSD make), a standard Bourne shell with test, echo and
sed.
See the Portability page for more details.
Which languages are supported?
At the time, executables and libraries can be compiled from sources in
C, C++, Objective C, assembler, Lex and Yacc. The language of a source file
in
${SRCS} is determined solely by the file extension.
Refer to the current build.prog.mk and build.lib.mk manual
pages for the complete list.
Is profiling supported?
Yes, you only need to set
${GMONOUT} to the desired output filename
and invoke make ${GMONOUT} explicitely.
How do I produce a single library from source files located in different
subdirectories?
You can create a standard build.lib.mk makefile and use relative path
names in ${SRCS}, for example:
TOP= .
LIB= mylib
SRCS= source1.c \
subdir1/source2.c \
subdir2/source3.c
include ${TOP}/Makefile.config
include ${TOP}/mk/build.lib.mk
Can I create a Makefile in a directory without any sources?
Yes, by including only build.subdir.mk, and setting the targets
explicitely:
TOP= .
SUBDIR= dir1 \
dir2
all: all-subdir
install: install-subdir
deinstall: deinstall-subdir
clean: clean-subdir
cleandir: cleandir-subdir
depend: depend-subdir
include ${TOP}/mk/build.subdir.mk
Is BSDBuild sudo-aware?
Yes, BSDBuild will automatically prefix
${SUDO}, when set, to such
commands as make install.