Bug 256329 - devel/scons: update to 4.1.0.post1
Summary: devel/scons: update to 4.1.0.post1
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Po-Chuan Hsieh
URL: https://scons.org/scons-410-is-availa...
Depends on:
Reported: 2021-06-01 09:11 UTC by Ronald Klop
Modified: 2021-07-14 16:25 UTC (History)
2 users (show)

See Also:
ronald-lists: maintainer-feedback?

git diff (1.59 KB, patch)
2021-06-01 09:11 UTC, Ronald Klop
no flags Details | Diff
git diff 4.1.0.post1 (1.61 KB, patch)
2021-06-01 09:44 UTC, Ronald Klop
ronald-lists: maintainer-approval?
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ronald Klop 2021-06-01 09:11:27 UTC
Created attachment 225445 [details]
git diff
Comment 1 Ronald Klop 2021-06-01 09:20:43 UTC
Updated scons to 4.0.1. This removes support for python 2. Which is possible since all users of scons are updated to python 3 or removed.

Patch fixes this:
[00:00:08] ===>  Patching for scons-py38-4.0.1
[00:00:08] find: script/scons*: No such file or directory
[00:00:08] *** Error code 1
[00:00:08] Stop.
[00:00:08] make: stopped in /usr/ports/devel/scons

And this:
[00:00:24] ===>  Staging for scons-py38-4.0.1
[00:00:24] ===>   Generating temporary packing list
[00:00:25] usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
[00:00:25]    or: setup.py --help [cmd1 cmd2 ...]
[00:00:25]    or: setup.py --help-commands
[00:00:25]    or: setup.py cmd --help
[00:00:25] error: option --standard-lib not recognized
[00:00:25] *** Error code 1
[00:00:25] Stop.
[00:00:25] make: stopped in /usr/ports/devel/scons

My mongodb* ports compile properly with this version. Did not test other ports. An exp-run might be wanted.

I tried upgrading to scons 4.1.0, but that still gives an error during stage I could not resolve quickly.
Comment 2 Ronald Klop 2021-06-01 09:44:14 UTC
Created attachment 225447 [details]
git diff 4.1.0.post1

New patch for 4.1.0.
Includes: https://github.com/SCons/scons/issues/3950 to fetch the new tarball.
Comment 3 Po-Chuan Hsieh freebsd_committer 2021-07-01 13:17:42 UTC
The patch is incorrect. I was testing the dependent ports.
Comment 4 Ronald Klop 2021-07-01 22:41:32 UTC
(In reply to Po-Chuan Hsieh from comment #3)
Would you mind sharing more of your results?
Comment 5 Ronald Klop 2021-07-06 09:05:09 UTC
(In reply to Po-Chuan Hsieh from comment #3)
I've build all the depended ports of devel/scons in my poudriere on aarch64.

astro/gpsd, audio/mixxx, audio/rhvoice, devel/godot, devel/godot-tools, devel/godot2, devel/godot2-tools, games/battletanks, games/dxx-rebirth, games/endless-sky, games/gtkradiant, games/pingus, games/pink-pony, games/powder-toy, games/rlvm, graphics/dcp2icc, lang/tolua++, multimedia/ffmpeg2theora, multimedia/flvtool++, net/fspclient, net/fspd, net/fsplib, net-p2p/linuxdcpp, security/revealrk, sysutils/rmlint, www/serf, x11/xsettingsd

Failed ports: games/powder-toy:build games/dxx-rebirth:build audio/mixxx:build
Skipped ports: games/pink-pony graphics/devil
Ignored ports: graphics/nvidia-texture-tools security/revealrk

* Powder-toy and dxx-rebirth have reason "clang-bug" which is already happening with the current scons. So no regression.
* nvidia-texture-tools is not available on aarch64.
* security/revealrk is broken on FreeBSD-14.

* Audio/mixxx has a scons error which seems solved by https://github.com/SCons/scons/pull/3731/commits. This needs verification still. We also have bug #249348 which replaces scons with cmake.

So AFAIK this devel/scons is in a pretty good shape.
When time permits I want to try the mixxx patch and compile nvidia-texture-tools on amd64.
Comment 6 Po-Chuan Hsieh freebsd_committer 2021-07-06 17:40:52 UTC
This is my patch for devel/scons and audio/mixxx [1].
AFAIR, if you do not patch scons, it installs manpages to the wrong place (under ${PREFIX}).

The dependent ports are as follows:
- astro/gpsd
- audio/mixxx
- audio/rhvoice
- databases/mongodb36
- databases/mongodb40
- databases/mongodb42
- databases/mongodb44
- databases/mongodb49
- databases/mongodb50
- devel/asmutils
- devel/godot
- devel/godot-tools
- devel/godot2
- devel/godot2-tools
- games/battletanks
- games/dxx-rebirth
- games/endless-sky
- games/gtkradiant
- games/pingus
- games/pink-pony
- games/powder-toy
- games/rlvm
- graphics/dcp2icc
- lang/tolua++
- multimedia/ffmpeg2theora
- multimedia/flvtool++
- net/fspclient
- net/fspd
- net/fsplib
- net-p2p/linuxdcpp
- security/revealrk
- sysutils/rmlint
- www/serf
- x11/xsettingsd

However, databases/mongodb* do not build on my box. They failed for unknown reason.
scons: *** [build/opt/mongo/shell/mongo] Error 254
scons: building terminated because of errors.
build/opt/mongo/shell/mongo failed: Error 254

Since you're the maintainer of 4 mongodb ports, could you please help check all databases/mongodb* ports?

[1] https://people.FreeBSD.org/~sunpoet/patch/devel-scons.txt
Comment 7 Ronald Klop 2021-07-09 14:14:21 UTC
(In reply to Po-Chuan Hsieh from comment #6)
Thanks for taking a look also.
I came up with the same patch for audio/mixxx.

Mongodb36 & mongodb40 compile clean. Later versions give a linker error about a missing symbol which does not seem related to scons.

Official packages seem to have the same linker error with scons3 on arm64: http://www.ipv6proxy.net/go.php?u=http://ampere2.nyi.freebsd.org/data/main-arm64-default/ped4b8e417ef2_s348c41d181/logs/errors/mongodb44-4.4.6.log

This builds fine on amd64 on the official pkg cluster: http://beefy18.nyi.freebsd.org/data/main-amd64-default/ped4b8e417ef2_s348c41d181/logs/mongodb44-4.4.6.log

I'm going to test some more on amd64 at home and will post the results here as soon as I find the time.

BTW: your error in building mongodb might by an outofmemory condition. Mongodb is compiled with LTO enabled which consumes an enormous amount of memory. I disabled LTO on my RPI4.
Comment 8 Ronald Klop 2021-07-13 07:39:58 UTC
Check is done.

Mongodb ports compile fine with scons 4.10. The compilation error is due to an assert of clang12 on aarch64 and also happens with scons 3.
No problems on amd64 with clang12 and both scons versions.

So I'll come up with a separate patch for the clang12 issue.

I see no troubles for committing scons 4.10 anymore. Do you?
Comment 9 commit-hook freebsd_committer 2021-07-14 16:20:36 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4a4944fb5c3b0460880b436bb419aed0b327dc02

commit 4a4944fb5c3b0460880b436bb419aed0b327dc02
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2021-07-14 15:50:16 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2021-07-14 16:09:40 +0000

    devel/scons: Update to 4.1.0.post1

    Changes:        https://scons.org/tag/releases.html
    PR:             256329
    Tested by:      Ronald Klop <ronald-lists@klop.ws>

 devel/scons/Makefile                    | 22 +++++-----------------
 devel/scons/distinfo                    |  6 +++---
 devel/scons/files/patch-setup.cfg (new) | 11 +++++++++++
 3 files changed, 19 insertions(+), 20 deletions(-)
Comment 10 Po-Chuan Hsieh freebsd_committer 2021-07-14 16:25:14 UTC
Committed. Ronald, thanks for your help on mongodb ports.