On Wed, Apr 23, 2025 at 06:30:48PM +0900, Akira Yokosawa wrote: > On Tue, 22 Apr 2025 10:57:33 +0300, Andy Shevchenko wrote: > > On Mon, Apr 21, 2025 at 10:35:29AM -0600, Jonathan Corbet wrote: > >> Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com> writes:
[...] > >> > Would it be possible to properly support O= and create pyc / pycache > >> > inside the object/output dir? > >> > >> I have to confess, I've been wondering if we should be treating the .pyc > >> files like we treat .o files or other intermediate products. Rather > >> than trying to avoid their creation entirely, perhaps we should just be > >> sure they end up in the right place and are properly cleaned up...? > >> > >> To answer Dmitry's question, it seems that setting PYTHONPYCACHEPREFIX > >> should do the trick? > > > > It's not so easy. The Python is written in a way that it thinks it will > > never > > runs object files separately from the source. Hence that variable sets only > > the folder per script as _home_ for the cache. It's completely unusable. > > They > > took it wrong. It still can be _painfully_ used, but it will make Makefiles > > uglier. > > But, PYTHONPYCACHEPREFIX can be set as an environment variable. > > For example, try: > > export PYTHONPYCACHEPREFIX="$HOME/.cache/__pycache__" > > Wouldn't it be good enough for you? Of course not. We have _many_ scripts in python in kernel and having a cache there for _all_ of them is simply WRONG. You never know what clashes can be there with two complicated enough scripts which may have same module names, etc. -- With Best Regards, Andy Shevchenko