From ebe33ca38d7e637b25994cd649091a95d677d230 Mon Sep 17 00:00:00 2001 From: Laurentiu Mihalcea Date: Mon, 22 Apr 2024 18:30:26 +0300 Subject: [PATCH] .github/zephyr: disable disassembly with inline source code By default, the disassembly file (.lst) generated during the build process when enabling `CONFIG_OUTPUT_DISASSEMBLY` will also contain inline source code. This is not ideal for reproducible builds that compare the .lst files obtained on different platforms (i.e: Windows and Linux) because of the differences in the inline source code that may appear. One of the identified causes for such differences were the ".." include paths, which resulted in the Windows .lst omitting some bits of the inline source code that were present in the Linux .lst file. Because these issues are hard to debug and unintuitive, the solution is to disable the inline source code. This way, the CI can keep testing for reproductibility using just the assembly and machine code from the .lst file, which are more important than the inline source code. This fixes thesofproject/sof/issues/9034. Signed-off-by: Laurentiu Mihalcea --- .github/workflows/zephyr.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/zephyr.yml b/.github/workflows/zephyr.yml index 1101d08f0..73c20fcb5 100644 --- a/.github/workflows/zephyr.yml +++ b/.github/workflows/zephyr.yml @@ -195,6 +195,7 @@ jobs: --cmake-args=-DEXTRA_AFLAGS='-Werror -Wa,--fatal-warnings' --cmake-args=--warn-uninitialized --cmake-args=-DCONFIG_OUTPUT_DISASSEMBLY=y + --cmake-args=-DCONFIG_OUTPUT_DISASSEMBLY_WITH_SOURCE=n ${{ matrix.build_opts }} ${{ matrix.IPC_platforms }} - name: Upload build artifacts @@ -361,6 +362,7 @@ jobs: --cmake-args=-DEXTRA_AFLAGS='-Werror -Wa,--fatal-warnings' --cmake-args=--warn-uninitialized --cmake-args=-DCONFIG_OUTPUT_DISASSEMBLY=y + --cmake-args=-DCONFIG_OUTPUT_DISASSEMBLY_WITH_SOURCE=n ${{ matrix.build_opts }} ${{ matrix.platforms }} - name: Upload build artifacts