Re: sccache(-overlay) to speed up rust builds in poudriere (was: Re: dns/bind916 builds rust unexpectedly)

From: Charlie Li <vishwin_at_freebsd.org>
Date: Wed, 27 Sep 2023 08:56:18 UTC
Alexander Leidinger wrote:
> Am 2023-09-26 14:06, schrieb Kurt Jaeger:
>> sccache-overlay upstream is at 0.5.4, the port is at 0.2.15 --
>> do you know why it diverges that much ?
> 
> devel/sccache is maintained by pizzamig@ (CCed) and at v0.5.4, whereas 
> the ports-mgmt/sccache-overlay port is maintained by rust@ (CCed). Maybe 
> they can shed some light on this...
> 
ports-mgmt/sccache-overlay's functionality that allows it to work in a 
poudriere/port build environment relies on code that was never submitted 
upstream to sccache.

My last reading of sccache, they have a client-server architecture which 
is very unlike ccache. Their client-server implementation only supports 
TCP/IP network sockets despite their default operation mode being 
entirely "local", and assumes that a loopback IP always exists in the 
environment (it doesn't!).

In poudriere, apart from the fetch phase, network access is not allowed 
by default so spawning a server that listens on an IP that does not 
necessarily exist that clients, individual compiler invocations, talk to 
isn't tenable. At the very least, one would need to architect and 
implement Unix domain socket support there, which they are happy to 
consider.

-- 
Charlie Li
...nope, still don't have an exit line.