pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/scons4



Module Name:    pkgsrc
Committed By:   gdt
Date:           Sun Aug 30 22:02:38 UTC 2026

Modified Files:
        pkgsrc/devel/scons4: Makefile PLIST distinfo

Log Message:
devel/scons4: Update to 4.11.1

Tested on NetBSD 10 amd64:
  geography/gpsd builds and passes tests
  databases/mongodb4 builds

Take MAINTAINERSHIP.

* 4.11.1

FIXES

    Revert the change to the internal implementation of reading a
    saved-Variables file. This also undoes the minor API change made when
    the change was introduced in SCons 4.11.0: in that release is was
    possible to use a top-relative path in the Variables() call when giving
    the name of a file (that is, a path that begins with #). This is once
    again disallowed. The plan is to reintroduce this change in a future
    release, once the issues are fully resolved.

* 4.11.0

DEPRECATED FUNCTIONALITY

    Deprecated Python 3.7 & 3.8 support.
    Deprecated using signature-file-per-directory (aka old-style SConsign)
    via the SConsignFile(name=None) call.
    The legacy job scheduler, which was superseded by a new scheduler in
    SCons 4.7 but remained available as a fallback, is deprecated and
    will be removed in the next release. The --experimental feature flag
    to select the legacy scheduler is renamed to "legacy_sched_deprecated"
    to give a clear indication of the status change; the flag will also
    be removed in the next release.

REMOVED FUNCTIONALITY

    The qt3 tool module, deprecated since version 4.3, is removed due to
    the general unavailability of the obsolete build-time Qt3 package.

CHANGED/ENHANCED EXISTING FUNCTIONALITY

    The tool search order now prefers clang over gcc on FreeBSD and OpenBSD.

IMPROVEMENTS

    Reduce unneeded computation of overrides. The Mkdir builder used an
    unknown argument ('explain') on creation, causing it to be considered
    an override. Also, if override dict is empty, don't even call the
    Override factory function.
    Subst: Multiple substitution optimizations providing up to 8-12% performance
    improvement on typical builds, with larger gains (up to 20-30%) on builds with
    many callable construction variables:
        Consolidate dictionary merging operations to reduce unnecessary copies
        Use functools.lru_cache for callable signature inspection with bounded
        memory (256 entries max, ~1MB)
        Make Action classes (CommandAction, FunctionAction, ListAction) hashable
        to enable cache optimization
        Fix for_signature logic bug in ListSubber.expand() for correct signature
        generation
        Modernize string formatting to f-strings
        Also, separately, some code-style cleanups and docstring work in Subst.py.
    Test runner reworked to use Python logging; the portion of the test suite
    which tests the runner was adjusted to match.
    Used Gemini to refactor runtest.py to better organize the code and add docstrings.
    Simplified and sped up compilation database generation. No longer requires
    each entry to have a dedicated node that's always built; instead, the database
    itself is set to always build.
    Switch remaining "original style" docstring parameter listings to Google style.
    Additional small tweaks to Environment.py type hints, fold some overly
    long function signature lines, and some linting-inspired cleanups.
    Test framework: tweak module docstrings
    Test suite: end to end tests don't use assert in result checks
    Don't duplicate the creation of Tool objects if "default" is part of
    the tool list.
    Test suite: add support for Python 3.15 in the Action unit tests.
    zip tool now uses zipfile module's "from_file" method to populate ZipInfo
    records, rather than doing manually.
    Add RequiredPackage to the LaTeX scanner for recursive scanning of custom
    LaTeX packages.
    Java tool recognizes all released versions, and no longer needs manual
    updating as new releases are made. Default is now latest LTS - v25.
    Clarify internal usage of zipimporter (not user-visible code)
    Handle missing/malformed manifest in mslink more gracefully (issue 4866).
    Change the way ldc D compiler specifies including libdruntime when
    making a shared object. ldc version 1.3 (2017) introduced shared
    druntime on some platforms, with an odd library naming scheme. SCons
    specification was "too precise" to work cross-platform with the new
    scheme, now let the linker pass pick. Adjust $SHDLINKFLAGS to change this,
    or choose other schemes, such as LTO libs.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 pkgsrc/devel/scons4/Makefile
cvs rdiff -u -r1.7 -r1.8 pkgsrc/devel/scons4/PLIST
cvs rdiff -u -r1.9 -r1.10 pkgsrc/devel/scons4/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/scons4/Makefile
diff -u pkgsrc/devel/scons4/Makefile:1.18 pkgsrc/devel/scons4/Makefile:1.19
--- pkgsrc/devel/scons4/Makefile:1.18   Thu Aug 13 23:06:54 2026
+++ pkgsrc/devel/scons4/Makefile        Sun Aug 30 22:02:38 2026
@@ -1,14 +1,15 @@
-# $NetBSD: Makefile,v 1.18 2026/08/13 23:06:54 gdt Exp $
+# $NetBSD: Makefile,v 1.19 2026/08/30 22:02:38 gdt Exp $
 
-# Please do not update to 4.11; breaks gpsd. -gdt
-#   https://gitlab.com/gpsd/gpsd/-/work_items/412
-DISTNAME=      scons-4.10.1
+# Updates must be tested not to break gpsd (history:
+#   https://gitlab.com/gpsd/gpsd/-/work_items/412 )
+# and should be tested against databses/mongodb.
+DISTNAME=      scons-4.11.1
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME:tl}
 CATEGORIES=    devel python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=s/scons/}
 EXTRACT_USING= bsdtar
 
-MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+MAINTAINER=    gdt%NetBSD.org@localhost
 HOMEPAGE=      https://www.scons.org/
 COMMENT=       Python-based, open-source build system
 LICENSE=       mit

Index: pkgsrc/devel/scons4/PLIST
diff -u pkgsrc/devel/scons4/PLIST:1.7 pkgsrc/devel/scons4/PLIST:1.8
--- pkgsrc/devel/scons4/PLIST:1.7       Sat Oct 11 22:03:50 2025
+++ pkgsrc/devel/scons4/PLIST   Sun Aug 30 22:02:38 2026
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.7 2025/10/11 22:03:50 wiz Exp $
+@comment $NetBSD: PLIST,v 1.8 2026/08/30 22:02:38 gdt Exp $
 bin/scons-${PYVERSSUFFIX}
 bin/scons-configure-cache-${PYVERSSUFFIX}
 bin/sconsign-${PYVERSSUFFIX}
@@ -59,6 +59,9 @@ ${PYSITELIB}/SCons/Platform/__init__.pyo
 ${PYSITELIB}/SCons/Platform/aix.py
 ${PYSITELIB}/SCons/Platform/aix.pyc
 ${PYSITELIB}/SCons/Platform/aix.pyo
+${PYSITELIB}/SCons/Platform/bsd.py
+${PYSITELIB}/SCons/Platform/bsd.pyc
+${PYSITELIB}/SCons/Platform/bsd.pyo
 ${PYSITELIB}/SCons/Platform/cygwin.py
 ${PYSITELIB}/SCons/Platform/cygwin.pyc
 ${PYSITELIB}/SCons/Platform/cygwin.pyo
@@ -1855,12 +1858,6 @@ ${PYSITELIB}/SCons/Tool/pdftex.pyo
 ${PYSITELIB}/SCons/Tool/python.py
 ${PYSITELIB}/SCons/Tool/python.pyc
 ${PYSITELIB}/SCons/Tool/python.pyo
-${PYSITELIB}/SCons/Tool/qt.py
-${PYSITELIB}/SCons/Tool/qt.pyc
-${PYSITELIB}/SCons/Tool/qt.pyo
-${PYSITELIB}/SCons/Tool/qt3.py
-${PYSITELIB}/SCons/Tool/qt3.pyc
-${PYSITELIB}/SCons/Tool/qt3.pyo
 ${PYSITELIB}/SCons/Tool/rmic.py
 ${PYSITELIB}/SCons/Tool/rmic.pyc
 ${PYSITELIB}/SCons/Tool/rmic.pyo

Index: pkgsrc/devel/scons4/distinfo
diff -u pkgsrc/devel/scons4/distinfo:1.9 pkgsrc/devel/scons4/distinfo:1.10
--- pkgsrc/devel/scons4/distinfo:1.9    Mon Nov 17 07:43:46 2025
+++ pkgsrc/devel/scons4/distinfo        Sun Aug 30 22:02:38 2026
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.9 2025/11/17 07:43:46 adam Exp $
+$NetBSD: distinfo,v 1.10 2026/08/30 22:02:38 gdt Exp $
 
-BLAKE2s (scons-4.10.1.tar.gz) = 18865d3216cde622ec28132763acbf2a1fcd62b469facebf34b28adc983f45de
-SHA512 (scons-4.10.1.tar.gz) = 4c64070714ba16c8e231ecfac9c1df6fad252b5509e0d260cc05f28865e3068f58c169d73c1559373b7a2d517bcb94a07593ab00781afd9a6a55893455471bc4
-Size (scons-4.10.1.tar.gz) = 3258403 bytes
+BLAKE2s (scons-4.11.1.tar.gz) = 101a612e171b17723d68825aee372aaf25e4814735ed458ee01047e7386d6bdf
+SHA512 (scons-4.11.1.tar.gz) = 44ec5a45e6adc39de167c42e8e85c2e506f922af82d6d8459caf91b301e5a789c038ce41818df20e311127def35da2f860fb62bcb6ff6cae344134f6c767a537
+Size (scons-4.11.1.tar.gz) = 3268963 bytes
 SHA1 (patch-SCons_Platform_____init____.py) = 3505bd3aa579115b24aab0dac09649129693f6fa



Home | Main Index | Thread Index | Old Index