BSDBuild is a compact, cross-platform build system which follows the Principle of Least Astonishment. Derived from the traditional 4.4BSD make libraries, BSDBuild allows programs and libraries to be built portably using simple BSD-style Makefiles
(without BSD make extensions). BSDBuild works on most operating systems and make flavors.
It can generate Bourne configure scripts, foo-config
installation scripts, pkg-config .pc
files and platform-specific application/framework bundles. BSDBuild-generated configure
scripts look and function similar to a GNU autotools generated script, although BSDBuild uses a different configure.in
language.
The base distribution currently includes over 100 built-in Test Modules for detecting and testing the compatibility of various software. New test modules can be written quickly. BSDBuild tests can also be used from CMake. The configure
script generator outputs a CMake macro package that contains all BSDBuild tests available as CMake macros.
For an introductory tutorial, see the FAQ. Please direct any issues, comments or suggestions to GitHub Issues. You can chat with the developers over at the LibAgar Discord.
- mkconfigure: Generate portable Bourne configure scripts.
- build.common.mk: Common definitions (filesystem paths, etc).
- build.man.mk: Process mdoc sources into ASCII, PostScript, PDF and HTML.
- build.lib.mk: Compile (or cross-compile) static or shared libraries from sources (Ada, assembly, C, C++, Objective C, Lex, Yacc).
- build.prog.mk: Compile (or cross-compile) programs from sources (Ada, assembly, C, C++, Objective C, Lex, Yacc).
- build.www.mk: Compile HTML documents (and optionally language/character set variants) from sources using
m4
andxsltproc
.
- Download Source
- On FreeBSD: pkg install bsdbuild
- Main Repo: https://dev.csoft.net/bsdbuild/trunk
- On GitHub: JulNadeauCA/bsdbuild
You can support the BSDBuild project through the LibAgar Patreon.