[MacPorts] #67096: python portgroup's misuse of build.cmd causes base to add jobs arg

MacPorts noreply at macports.org
Tue Mar 14 08:23:32 UTC 2023


#67096: python portgroup's misuse of build.cmd causes base to add jobs arg
------------------------+------------------------
 Reporter:  ryandesign  |      Owner:  (none)
     Type:  defect      |     Status:  new
 Priority:  Normal      |  Milestone:
Component:  ports       |    Version:  2.8.1
 Keywords:              |       Port:  python-1.0
------------------------+------------------------
 In both the scons and cmake-language-server ports, trying to switch them
 from python 3.10 to python 3.11 resulted in this inscrutable error:

 {{{
 python -m build: error: unrecognized arguments: -j8
 }}}

 It looks like the python portgroup only adds the jobs arg when not
 `${python.pep517}`, and `${python.pep517}` is on by default for python
 3.11 and later.

 But MacPorts base adds the jobs arg whenever `${build.cmd}` ''matches''
 `*make*`, `*ninja*`, or `*scons*`. The python portgroup misuses
 `${build.cmd}` when `${python.pep517}`, setting it to `${python.bin} -m
 build --wheel --no-isolation --outdir ${workpath}`. The base check for
 whether this matches `*make*` triggers for the cmake-language-server port,
 and the check for whether this matches `*scons*` triggers for the scons
 port, because of the inclusion of `${workpath}`.

 Setting `${build.cmd}` to the build command and putting the args in either
 `${build.pre_args}` or `${build.post_args}` should solve the problem.

-- 
Ticket URL: <https://trac.macports.org/ticket/67096>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list