Hi Stefan,
> Well, finally my actual goal is to build GCC differently: There is no need to > patch in CROSS_C_INCLUDE_PATH etc. The include paths to standard header > files must not be provided through > environment variables at all. This is the cause of all the troubles people > have with GCC in Guix for both native and cross building. In the end only > the one > gcc-12-strmov-store-file-names.patch is necessary, and this not even for > static builds during bootstrapping. Keeping (package (inherit …) …) will > tear in all the mistakes, which I try > hard to avoid. I think it's good idea to move away from C_INCLUDE_PATH, LIBRARY_PATH for the toolchain libraries (glibc, stdlibc++, ...), but what about other libraries? Those, as far as I can tell, have to be provided by a search path, as they cannot be compiled inside the toolchain. Or am I mistaken in this? And if this is true, I think it would be good to still keep this CROSS_* convention that allows at least gcc for base system, libraries for the base system, along with cross gcc and libraries for cross target. Of course there will still be problems with multiple target toolchains, and I am not sure what could be done to resolve that. Regards, Rutherther