After upgrading to glibc-2.28-r2 I tried updating my (upstream git 4.20-rc+) kernel. The kernel build fails nearly immediately (the "Next: make" is from my kernel build script, the include path is /include/, not /usr/include/ due to reverse /usr merge, /usr -> .) : Next: make make[1]: Entering directory '/p/linux/output.x86_64' GEN Makefile DESCEND objtool make[5]: *** No rule to make target '/include/bits/byteswap-16.h', needed by '/p/linux/output.x86_64/tools/objtool/fixdep.o'. Stop. make[4]: *** [Makefile:43: /p/linux/output.x86_64/tools/objtool/fixdep-in.o] Error 2 make[3]: *** [/p/linux/tools/build/Makefile.include:4: fixdep] Error 2 make[2]: *** [Makefile:64: objtool] Error 2 make[1]: *** [/p/linux/Makefile:1689: tools/objtool] Error 2 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/p/linux/output.x86_64' make: *** [Makefile:152: sub-make] Error 2 Critical system header missing and I just updated glibc... Hmm... Checking the glibc binpkgs, sure enough, the new glibc-2.28-r2 package (along with the live system I merged it to) does not include the include/bits/byteswap-16.h file, while the freshly unmerged glibc-2.27-r6 package that I successfully built the kernel with just a day or two ago, does.
Oops. Invalid! A make clean and make solved the problem.