Building AVIRT
===================================
## Table of Contents
1. [Out of Tree](#out-of-tree)
2. [In Tree](#in-tree)
## Out Of Tree
The kernel modules can be built either in-tree, or out-of-tree.
To build both AVIRT and the dummy Audio Path out-of-tree, use the following command:
```sh
$ CONFIG_AVIRT=m CONFIG_AVIRT_BUILDLOCAL=y CONFIG_AVIRT_DUMMYAP=m make -C /lib/modules/$(uname -r)/build/ M=$(pwd)
```
To build both AVIRT and the dummy Audio Path out-of-tree for [AGL](http://docs.automotivelinux.org/) (`aarch64` currently supported), use the [XDS](http://docs.automotivelinux.org/docs/devguides/en/dev/reference/xds/part-1/0_Abstract.html) build system together with the `make_agl.sh` script:
```sh
$ ./make_agl.sh ${XDS_SDK_ID}
```
## In tree
To build in tree, use the [Fiberdyne Linux fork](https://github.com/fiberdyne/linux), which will automatically clone the AVIRT Driver and required AudioPath modules to the `drivers/staging` directory. You can then turn AVIRT Support on by setting to ``. The drivers can be found here:
```
$ make menuconfig
# Navigate to: Device Drivers--->Staging Drivers--->AVIRT Support
```
Finally build the kernel with the configuration selected by making.
```
$ make
```