https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/ Issue: net-fs/openafs-1.8.8.1-r1 fails to compile. Discovered on: amd64 (internal ref: tinderbox) NOTE: This machine uses CLANG as a compiler and LLD as a linker
Created attachment 762335 [details] build.log.xz build log and emerge --info (compressed because it exceeds attachment limit, use 'xzless' to read it)
From an upstream view, this is going to take a little more effort to fix. Some of the autoconf tests are also broken with clang and building the kernel module (there is an unintentional reliance on a GCC enhancement -- nested functions). But I might have a set of patches that will fix this.
I've submitted a series of patches to upstream openafs that clean up some of the problems building the kernel module with clang. The patches are still in upstream review and have not yet received any feedback. Building the kernel module with clang has not been tested beyond just performing the build. If you look at the openafs gerrit: https://gerrit.openafs.org/#/c/14903/ you will find the 4 commits. Missing from the above list are the modifications to the makefiles to use CC= and LD= when building the kernel module (or running the kernel related autoconf tests). Adding in this breaks certain existing build configurations and will require some additional thought and upstream discussion.
Just a quick comment on the upstream status of the commits mentioned cf: Use -Werror when checking for -Wno-* flags https://gerrit.openafs.org/#/c/15054 has been merged into openafs-stable-1_8_x cf: Avoid nested C functions built by autoconf https://gerrit.openafs.org/#/c/14901 has been merged into master afs: Use literal NULL for NULL function pointer https://gerrit.openafs.org/#/c/14902 has been merged into master LINUX: Use bitwise & for f_flags test https://gerrit.openafs.org/#/c/14903 is still in review for master. I believe that the 3 commits that are not in openafs-stable-1_8_x will cleanly fit into openafs-stable-1_8_x The last change, 14903, as mentioned is still in review, but I believe that all items brought up in review have been addressed, so I don't think there will be any additional changes commit.
The above 3 patches have been merged into openafs 1.8.9