On Wed, Aug 09, 2023 at 03:42:44PM -0500, Pierre-Louis Bossart wrote: > > > Ah, I still think you will need to pass CC to make directly, rather than > > through the environment but you should be able to prevent > > merge_config.sh from getting in the way by passing '-m' to avoid having > > it invoke make itself, then you can add a 'make olddefconfig' step after > > that, perhaps something like this? > > > > - name: build start > > run: | > > export ARCH=x86_64 KCFLAGS="-Wall -Werror" > > export MAKEFLAGS=j"$(nproc)" > > bash kconfig/kconfig-sof-default.sh -m > > The -m doesn't work since it's added last, but it's not even needed. The > sequence below re-adds clang, that's just fine. Ah right! > > make CC=clang olddefconfig > > make CC=clang sound/ > > make CC=clang drivers/soundwire/ > > make CC=clang > The fun part now is that I get tons of unrelated errors - but at least > that's a sign we're using the clang compiler > sound/pci/hda/hda_bind.c:232:18: error: format string is not a string > literal (potentially insecure) [-Werror,-Wformat-security] Heh, I suppose that is somewhat self inflicted with the '-Wall -Wextra', as '-Wformat-security' gets re-enabled after being disabled in the main Makefile. May be worth sticking a '-Wno-format-security' back on there. Glad to hear that it is working now and thank you for testing with clang to help catch issues before they make it to a tree :) Cheers, Nathan