haiku/docs/develop/build/index.rst
PulkoMandy abc159e3fd docs/develop: explain vendor branches for gcc and buildtools
Change-Id: I9bb3b4efd2d02013da1ec6656adb49cd7d050e86
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5476
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: nephele <nep@packageloss.eu>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2022-07-17 07:37:53 +00:00

24 lines
947 B
ReStructuredText

The build system
================
Building a complete operating system is a somewhat complex task. Simple tools like GNU make would
result in a lot of problems and hard to maintain scripts if used this way.
Haiku uses a slightly more elaborate tool called Jam. Jam was initially developed by Perforce, but
they have now abandoned the product. As a result, Haiku currently maintains its own fork of Jam
with several customizations.
The core idea of Jam is to provide generic rules (for example "how to build an application from a set
of source files") and then apply these rules several times. The Haiku build system defines a number
of custom rules, allowing to build code both for Haiku and for the host operating system (to be run
during the compiling process).
The build system also offers various ways to configure and customize your Haiku disk image.
.. toctree::
/build/sourcecode
/build/compilers
/build/repositories/README