Subject: Re: linux-next: Tree for Sep 19 (make htmldocs problem)

From: Mauro Carvalho Chehab <[email-masked]>
Date: Sun, 21 Sep 2025 22:32:50 +0200

Em Sun, 21 Sep 2025 13:27:48 -0600
Jonathan Corbet <[email-masked]> escreveu:

> Randy Dunlap <[email-masked]> writes:
> 
> > lrwxrwxrwx 1 root root 4 Sep 11 01:42 /usr/bin/sphinx-build -> alts*
> >
> > $ file  /usr/bin/alts
> > /usr/bin/alts: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 4.3.0, BuildID[sha1]=17681640c9985eb36ae6d9eca0f08159509386c4, stripped  

Such setup looks weird on my eyes... why is it pointing to some other
exec?

> 
> That is clearly the problem, when combined with this code in
> sphinx-build-wrapper:
> 
> >             if self.venv:
> >                 cmd = ["python"]
> >             else:
> >                 cmd = [sys.executable,]

It ended that an extra comma is here, added on one of my final
rebases. I noticed it already and one of the patches I sent during
the weekend fixes it.

> > 
> >             cmd += [sphinx_build]  
> 
> Mauro, what is the reason for explicitly interposing the interpreter
> there rather than just invoking the sphinx-build binary directly?  It
> seems like we could take that out and make this problem go away?

I added it to ensure that it would be using exactly the same python
version that was called via makefile, which is called with:

	Documentation/Makefile: +$(Q)$(PYTHON3) $(BUILD_WRAPPER) $@ \

See, the other alternatives:

	# This may not run the same Python version, as it doesn't
	# take PYTHON3 var into account
	cmd = [sphinx_build]

and:
	# This would require some extra logic for it to work 
	# when calling shinx-build-wrapper directly from command line
	cmd = [PYTHON3, sphinx_build]

are, IMO, more problematic. The actual problem here seems to be that
/usr/bin/sphinx-build is not the actual sphinx-build, but something
else.

Randy,

do you know what is this "alts" file? Is it a custom script or
binary?

Thanks,
Mauro