mirror of https://github.com/thesofproject/sof.git
ebaa1429f9
This is a typical example of why environment variables are (a sometimes
necessary) evil: imagine you're trying to reproduce exactly the `west
build` command run by xtensa-build-zephyr.py when building with the
`xt-xcc` toolchain. So you would typically look at the logs, feel lucky
that it shows the extra environment variables used and copy them:
```
XTENSA_TOOLCHAIN_PATH=/srv/home/jenkins/xcc/install/tools
TOOLCHAIN_VER=RG-2017.8-linux
XTENSA_SYSTEM=/home/jenkins/xcc/install/builds/RG-2017.8-linux/cavs...
In dir: workspace/sof; running: west build ...
```
Except this won't work because there's one variable currently missing:
`ZEPHYR_TOOLCHAIN_VARIANT`!
Of course there could be more in the future.
Fix this by leveraging the recent os.environ.copy() added by
commit
|
||
---|---|---|
.. | ||
cmake | ||
docker_build | ||
kconfig | ||
scan | ||
README.docker | ||
build-tools.sh | ||
checkpatch.pl | ||
const_structs.checkpatch | ||
docker-qemu.sh | ||
docker-run.sh | ||
fuzz.sh | ||
gen-doc.sh | ||
host-testbench.sh | ||
parse_sparse_output.sh | ||
qemu-check.sh | ||
rebuild-testbench.sh | ||
run-mocks.sh | ||
sof-post-commit-hook.sh | ||
sof-pre-commit-hook.sh | ||
sof-target-install.sh | ||
sof_fw.kb | ||
spelling.txt | ||
sudo-cwd.sh | ||
test-repro-build.sh | ||
xtensa-build-all.sh | ||
xtensa-build-zephyr.py |
README.docker
The docker container provided in docker_build sets up a build environment for building Sound Open Firmware. A working docker installation is needed to run the docker build container. Note: In order to run docker as non sudo/root user please run. sudo usermod -aG docker your-user-name Then logout and login again. Quick Start: First, build the docker container. This step needs to be done initially and when the toolchain or alsa dependencies are updated. cd scripts/docker_build ./docker-build.sh After the container is built, it can be used to run the scripts. To build for tigerlake: ./scripts/docker-run.sh ./scripts/xtensa-build-all.sh -l tgl or (may need password test0000 for rimage install) ./scripts/docker-run.sh ./scripts/xtensa-build-all.sh tgl To rebuild the topology and logger: ./scripts/docker-run.sh ./scripts/build-tools.sh An incremental sof.git build: ./scripts/docker-run.sh make Or enter a shell: ./scripts/docker-run.sh bash