summaryrefslogtreecommitdiff
path: root/docs/macos.rst
blob: 582d65e2e868ff7dde4d604180d67d88532bc9a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Notes for macOS
================

Mesa builds on macOS without modifications. However, there are some details to
be aware of.

-  Mesa has a number of build-time dependencies. Most dependencies, including
   Meson itself, are available in `homebrew <https://brew.sh>`, which has a
   Mesa package for reference. The exception seems to be Mako, a Python module
   used for templating, which you can install as `pip3 install mako`.
-  macOS's default C compiler doesn't play nice with some C11 idioms used in
   Mesa. To workaround, set `-Dc_std=c11`.
-  macOS is picky about its build-time environment. Type `brew sh` before
   building to get the Homebrew dependencies in your path.

Mesa's default builds with the Apple GLX uses Mesa as a front for the
hardware-accelerated system OpenGL framework, to provide hardware acceleration
to X11 applications on macOS running via XQuartz.

Mesa's software rasterizers also work on macOS. To build, set the build options
`-Dosmesa=true -Dglx=gallium-xlib` and select an appropriate Gallium software
rasterizer.

For native hardware, stay tuned for updates here!