xref: /haiku/3rdparty/docker/bootstrap/README.md (revision 21258e2674226d6aa732321b6f8494841895af5f)
1# Haiku bootstrap in a container
2
3The Haiku bootstrap process is highly dependant on what tools are installed
4on the host machine.  Bootstraped haikuporter builds can pick up on things
5like the locally installed clang vs the gcc toolchain we are providing.
6
7By running bootstrap within a container, we can better isolate the process
8from the end users host and create more-reproduceable bootstrap builds.
9
10> This is designed for GCC bootstraps. In theory if Haiku changed to clang,
11> the need for a crosstools toolchain is removed... however the clang work
12> is too early to know exactly how this process will work.
13
14## Requirements
15
161) docker
172) make
183) An internet connection
19
20## Process
21
221) Build the docker container
23
24```make```
25
262) Check out the required sources
27
28```make prep```
29
30
313) Build the crosstools (gcc only) for your target architecture
32
33```TARGET_ARCH=arm make crosstools```
34
354) Begin the bootstrap (building Haiku + the required bootstrap hpkgs)
36
37```TARGET_ARCH=arm make bootstrap```
38
395) If you need to enter the build environment, ```TARGET_ARCH=arm make enter``` will quickly let you do so.
406) profit!
41