[Scons-users] Manpages are not installed in 4.8.0

Mats Wichmann mats at wichmann.us
Wed Jul 17 11:35:42 EDT 2024


On 7/16/24 22:01, Ryan Carsten Schmidt wrote:
> Oops, the last two messages didn't make it to the list. Resending.
> 
> On Jul 16, 2024, at 19:18, Mats Wichmann wrote:
>> ah, okay, that makes some sense.  Sometimes it's hard to keep track of how people use the source tree if it's not the way we do ourselves, may have let through a PR that made things more complicated.  Is there a place we can grab your build script to get a bit more educated?
> 
> 
> My build script is a MacPorts Portfile which will be difficult for you to understand unless you're quite familiar with the Tcl programming language, what behaviors MacPorts uses for each port by default, how it responds to different options being set in the Portfile, and the behaviors implemented in the python-1.0.tcl portgroup, an include file that abstracts away the details of building python modules.

I do have the 1990's Osterhout book still on my shelf, but agreed, let's 
not go there ;-)

> 
> Fortunately, the problem can be reproduced outside of MacPorts on the command line using the build command I gave earlier.
> 
> With 4.7.0:
> 
> % tar xf SCons-4.7.0.tar.gz
> % cd SCons-4.7.0.tar.gz
> % mkdir out
> % python3.12 -m build --no-isolation --wheel --outdir out
> % unzip -l out/SCons-4.7.0-py3-none-any.whl | grep 1$
>   24954  03-18-2024 00:34   SCons-4.7.0.data/data/scons-time.1
> 693084  03-18-2024 00:34   SCons-4.7.0.data/data/scons.1
>    6427  03-18-2024 00:34   SCons-4.7.0.data/data/sconsign.1
> %
> 
> With 4.8.0:
> 
> % tar xf SCons-4.8.0.tar.gz
> % cd scons-4.8.0.tar.gz
> % mkdir out
> % python3.12 -m build --no-isolation --wheel --outdir out
> % unzip -l out/SCons-4.8.0-py3-none-any.whl | grep 1$
> %

It seems likely the changing of setup files is involved, then.  And 
indeed, after some prospecting, the prior setup.cfg included this stanza:

[options.data_files]
. = scons.1
	scons-time.1
	sconsign.1

which is not replicated into pyproject.toml. data_files is long 
deprecated (apparently, it's considered to work with eggs and not work 
with wheels. ymmv.) and I think didn't make the transition to 
pyproject.toml, and I assume the intent is the stanza in 
[options.package_data] is supposed to pick it up:

[tool.setuptools.package-data]
"*" = ["*.txt", "*.rst", "*.1"]
"scons.tool.docbook" = ["*.*"]

that's clearly a translation from setup.cfg:

[options.package_data]
* = *.txt, *.rst, *.1
SCons.Tool.docbook = *.*

which maybe didn't pick up the manpages but it was covered up by the 
data_files section? If we can only find someone who understands these 
incantations, we should be able to sort it out.

When other people have had this sort of problem they've just fudged it, 
e.g. I found this somewhere:

"What we do in arch is just install the files manually in these 
situations, "





More information about the Scons-users mailing list