FreeBSD/src e988c5e. meta.c var.c, unit-tests dep.mk

Import bmake-20260704

Intersting/relevant changes since bmake-20260508

ChangeLog since bmake-20260508

2026-07-04  Simon J Gerraty  <sjg at beast.crufty.net>

        * VERSION (_MAKE_VERSION): 20260704

2026-07-03  Simon J Gerraty  <sjg at beast.crufty.net>

        * VERSION (_MAKE_VERSION): 20260703
        Merge with NetBSD make, pick up
        o meta.c: do a better job of resolving relative paths
        o var.c: add alternation support to :M
        eg. :M*{Makefile*,.mk} matches any *Makefile* or *.mk

2026-07-02  Simon J Gerraty  <sjg at beast.crufty.net>

    [56 lines not shown]
DeltaFile
+268-105meta.c
+46-8unit-tests/dep.mk
+40-12var.c
+32-8make.1
+32-8bmake.1
+25-12bmake.cat1
+443-15319 files not shown
+648-20325 files

LLVM/project e657ed7clang/lib/Analysis/LifetimeSafety FactsGenerator.cpp Loans.cpp, clang/test/Sema/LifetimeSafety invalidations.cpp

[LifetimeSafety] Support container interior paths and invalidations

This patch completes the implementation of path-sensitive lifetime tracking by supporting container interior paths (`.*`) and deep-nested invalidation.

- Enables `PathElement::getInterior` generation in `FactsGenerator` for GSL Owners and Views (e.g. member functions, function parameters, lambda captures).
- Removes bypass checks in `FactsGenerator::handleInvalidatingCall` to track container invalidation on fields.
- Updates `Checker` to use strict prefix comparison (`isStrictPrefixOf`) for container invalidations, ensuring invalidation of container contents (interior) correctly invalidates iterators but not other sibling fields.
- Reorganizes tests in `invalidations.cpp` by resolving duplicates and distributing them logically.
- Updates unit tests and sema tests with correct expectations for interior paths.

TAG=agy
CONV=2cfd8d00-18d7-4a03-8d78-2aba2f9a8f23
DeltaFile
+243-65clang/test/Sema/LifetimeSafety/invalidations.cpp
+228-67clang/unittests/Analysis/LifetimeSafetyTest.cpp
+30-10clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+9-4clang/test/Sema/LifetimeSafety/Inputs/lifetime-analysis.h
+12-0clang/lib/Analysis/LifetimeSafety/Loans.cpp
+9-2clang/lib/Analysis/LifetimeSafety/Checker.cpp
+531-1486 files

FreeBSD/ports 8051a9asysutils/conky distinfo Makefile

sysutils/conky{-awesome}: Update to 1.24.2

ChangeLog: https://github.com/brndnmtthws/conky/releases/tag/v1.24.1

 * fix(x11): fix cursor event stealing
 * fix: various small bugs

ChangeLog https://github.com/brndnmtthws/conky/releases/tag/v1.24.2

Features

 * feat: wayland improvements
 * Add querying of Nvidia GPUs with Nvidia's NVML API to 'nvidia' variable

Bug fixes

 * fix: wayland double-buffer management and release listener

Since upstream broke the root button propagation, build from the branch that
contains the fix.
DeltaFile
+3-7sysutils/conky/distinfo
+2-1sysutils/conky/Makefile
+5-82 files

FreeBSD/doc 3590b05documentation/content/en/books/handbook/zfs _index.adoc

handbook/zfs: Add new section about ZFS native encryption

This change adds a new section describing how to use ZFS native
encryption including examples to the handbook. It is based on my own
training material, the open-zfs.org documentation on the subject and the
corresponding man pages (zfs-load-key(8), zfs-unload-key(8)).
I ran my writeup through an AI for grammar, typo and active voice fixes,
instructing it to not make any changes to the text itself.

PR:                     264531
Reviewed by:            michaelo@
Event:                  Halifax Hackathon 202606
Differential Revision:  https://reviews.freebsd.org/D57889
DeltaFile
+299-0documentation/content/en/books/handbook/zfs/_index.adoc
+299-01 files

FreeBSD/ports aab770anet-mgmt/prometheus3 distinfo Makefile

net-mgmt/prometheus3: Update to 3.13.0

Changelog:
https://github.com/prometheus/prometheus/releases/tag/v3.13.0
DeltaFile
+7-7net-mgmt/prometheus3/distinfo
+1-1net-mgmt/prometheus3/Makefile
+8-82 files

LLVM/project a090408clang/lib/Analysis/LifetimeSafety FactsGenerator.cpp Checker.cpp, clang/test/Sema/LifetimeSafety invalidations.cpp

[LifetimeSafety] Support container interior paths and invalidations

This patch completes the implementation of path-sensitive lifetime tracking by supporting container interior paths (`.*`) and deep-nested invalidation.

- Enables `PathElement::getInterior` generation in `FactsGenerator` for GSL Owners and Views (e.g. member functions, function parameters, lambda captures).
- Removes bypass checks in `FactsGenerator::handleInvalidatingCall` to track container invalidation on fields.
- Updates `Checker` to use strict prefix comparison (`isStrictPrefixOf`) for container invalidations, ensuring invalidation of container contents (interior) correctly invalidates iterators but not other sibling fields.
- Reorganizes tests in `invalidations.cpp` by resolving duplicates and distributing them logically.
- Updates unit tests and sema tests with correct expectations for interior paths.

TAG=agy
CONV=2cfd8d00-18d7-4a03-8d78-2aba2f9a8f23
DeltaFile
+228-67clang/unittests/Analysis/LifetimeSafetyTest.cpp
+223-65clang/test/Sema/LifetimeSafety/invalidations.cpp
+31-12clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+9-2clang/lib/Analysis/LifetimeSafety/Checker.cpp
+11-0clang/lib/Analysis/LifetimeSafety/Loans.cpp
+6-3clang/test/Sema/LifetimeSafety/Inputs/lifetime-analysis.h
+508-1496 files

LLVM/project 076af82llvm/include/llvm/CodeGen/GlobalISel LegacyLegalizerInfo.h LegalizerInfo.h, llvm/lib/CodeGen/GlobalISel LegacyLegalizerInfo.cpp LegalizerInfo.cpp

[GlobalISel] Remove LegacyLegalizerInfo (#197308)

After #197238, #197370, #197371, #197374, #197375, #197377, #197378 and
#197379, this removes the legacy rules from global isel.

The above patches attempt to make all _tested_ operations legal, but
have only gone through the operations that have llvm tests. If more
fallbacks are now found to be happening, the other operations from
#197238 might be needed.
DeltaFile
+0-466llvm/include/llvm/CodeGen/GlobalISel/LegacyLegalizerInfo.h
+0-385llvm/lib/CodeGen/GlobalISel/LegacyLegalizerInfo.cpp
+0-198llvm/unittests/CodeGen/GlobalISel/LegalizerInfoTest.cpp
+0-57llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
+1-13llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
+1-4llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
+2-1,12315 files not shown
+2-1,14621 files

OpenBSD/ports SftFNvYmail/mutt distinfo Makefile, mail/mutt/patches patch-main_c

   update to mutt-2.4.1
VersionDeltaFile
1.85+2-2mail/mutt/distinfo
1.184+1-1mail/mutt/Makefile
1.22+1-1mail/mutt/patches/patch-main_c
+4-43 files

LLVM/project 925f4f2libcxx/include/__configuration abi.h, libcxx/include/__random mersenne_twister_engine.h

[libc++] Add an ABI flag to optimize mersenne_twister_engine (#206423)

Instead of updating the status array every time `operator()` is called,
we can instead update it once every time the entire array has been read.
That allows the compiler to vectorize the updating code, improving
performance.

Apple M4:
```
Benchmark                                     old      new    Difference    % Difference
----------------------------------------  -------  -------  ------------  --------------
std::mt19937::operator()                     1.39     0.65         -0.74         -53.26%
std::mt19937::operator()_(into_array)      172.92    80.69        -92.23         -53.34%
std::mt19937_64::operator()                  1.46     0.99         -0.47         -31.99%
std::mt19937_64::operator()_(into_array)   187.31   108.10        -79.21         -42.29%
```

Fixes #197221
DeltaFile
+415-282libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_sseq.pass.cpp
+358-225libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_result_type.pass.cpp
+36-7libcxx/include/__random/mersenne_twister_engine.h
+25-0libcxx/test/benchmarks/random.bench.cpp
+1-0libcxx/include/__configuration/abi.h
+1-0libcxx/utils/libcxx/test/features/libcxx_macros.py
+836-5146 files

OpenBSD/ports Xny0Rnddevel/libstdthreads Makefile distinfo, devel/libstdthreads/patches patch-threads_h

   Update to libstdthreads 0.3.3. ok and tweaks sthen@ volker@

   Patch merged upstream + doc udpate from Christian Schulte.
VersionDeltaFile
1.7+4-7devel/libstdthreads/Makefile
1.3+2-2devel/libstdthreads/distinfo
1.3+0-0devel/libstdthreads/patches/patch-threads_h
+6-93 files

LLVM/project a68147flibcxx/include/__thread thread.h, libcxx/test/libcxx/thread/thread.threads/thread.thread.class/thread.thread.id format.functions.pass.cpp

[libc++] Use std::to_chars to format thread::id and canonicalize the representation across platforms (#181624)

This makes printing `thread::id` faster, since we avoid a bunch of
boilerplate code that isn't optimized away. It also avoids including
`<sstream>` and `<__locale>`, cutting the time to parse `<thread>` in
half.

This also changes the output when printing the id on a platform that
uses a pointer as the underlying type. I don't think that's a problem,
since the thread id isn't in any way stable. It also makes the output
consistent across all platforms we support.
DeltaFile
+94-0libcxx/test/libcxx/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.pass.cpp
+0-83libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
+0-57libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
+37-11libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
+17-11libcxx/include/__thread/thread.h
+7-9libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
+155-1717 files not shown
+170-19413 files

LLVM/project 4a02e11libcxxabi/test thread_local_destruction_order.pass.cpp

[libcxxabi] Re-enable `thread_local_destruction_order.pass.cpp‎` on FreeBSD (#186129)

The underlying bug has been fixed in https://reviews.freebsd.org/D55826.
DeltaFile
+0-2libcxxabi/test/thread_local_destruction_order.pass.cpp
+0-21 files

NetBSD/pkgsrc-wip b831440zmap PLIST Makefile, zmap/patches patch-src_CMakeLists.txt patch-src_get__gateway-bsd.h

zmap: update to 4.4.0
DeltaFile
+26-9zmap/patches/patch-src_CMakeLists.txt
+18-0zmap/patches/patch-src_get__gateway-bsd.h
+17-0zmap/patches/patch-lib_logger.h
+10-2zmap/PLIST
+8-3zmap/Makefile
+6-4zmap/distinfo
+85-181 files not shown
+92-187 files

NetBSD/src LBmHHmvsys/net bpfjit.c, tests/lib/libbpfjit t_bpfjit.c

   Increase size of bpfjit interal stack, follow bpf_validate() closely.

   Increase a size of M[] array allocated on the stack by bpfjit.

   When bpf_validate() fails, bpfjit now fails too:
    - Fail to validate/compile BVF_DIV+BPF_K and BPF_MOD+BPF_K with K=0.
    - Fail unless the last instruction is BPF_RET+BPF_A or BPF_RET+BPF_K.

   If a program contains additional BPF_RET instructions, it is accepted
   by bpf_validate() and it compiles fine by bpfjit but both bpf_filter()
   and bpfjit reject it (return 0) at runtime.

   Adjust existing bpfjit test to follow the changes, add new tests.
VersionDeltaFile
1.16+187-35tests/lib/libbpfjit/t_bpfjit.c
1.13+204-18tests/net/bpfjit/t_bpfjit.c
1.49+30-20sys/net/bpfjit.c
+421-733 files

FreeBSD/ports c35c71atextproc/languagetool Makefile, textproc/languagetool/files server.properties.sample languagetool.in

textproc/languagetool: Harden HTTP server against OOM

A single pathological check request (e.g. a very long sentence hitting
the OpenNLP chunker) can exhaust the Java heap, leaving the JVM alive
but with its HTTP dispatcher thread dead.  Make OutOfMemoryError fatal,
have daemon(8) restart the server after 10 seconds, and bound
per-request work in the sample configuration.

Sponsored by:   The FreeBSD Foundation
DeltaFile
+6-1textproc/languagetool/files/server.properties.sample
+3-2textproc/languagetool/files/languagetool.in
+1-0textproc/languagetool/Makefile
+10-33 files

NetBSD/pkgsrc-wip 8536552sftpgo distinfo go-modules.mk

sftpgo: update to 2.7.4
DeltaFile
+291-291sftpgo/distinfo
+96-96sftpgo/go-modules.mk
+1-1sftpgo/Makefile
+388-3883 files

FreeBSD/doc 96a1b07website/content/en/status _index.adoc

Status/2026Q2: Fix submission deadline

Pull Request:   https://github.com/freebsd/freebsd-doc/pull/688
DeltaFile
+1-1website/content/en/status/_index.adoc
+1-11 files

FreeBSD/ports 54414a0lang/gcc16-devel distinfo Makefile

lang/gcc16-devel: Update to 16.1.1.s20260627
DeltaFile
+3-3lang/gcc16-devel/distinfo
+1-1lang/gcc16-devel/Makefile
+4-42 files

FreeBSD/ports f0e600dlang/gcc15-devel distinfo Makefile

lang/gcc15-devel: Update to 15.3.1.s20260626
DeltaFile
+3-3lang/gcc15-devel/distinfo
+1-1lang/gcc15-devel/Makefile
+4-42 files

NetBSD/pkgsrc-wip 3b68e16chromium distinfo, chromium/patches patch-net_base_network__change__notifier.h patch-net_base_network__change__notifier.cc

chromium: fix build
DeltaFile
+35-36chromium/distinfo
+0-35chromium/patches/patch-net_base_network__change__notifier.h
+0-18chromium/patches/patch-net_base_network__change__notifier.cc
+0-9chromium/patches/patch-net_base_features.cc
+1-1chromium/patches/patch-build_toolchain_netbsd_BUILD.gn
+1-1chromium/patches/patch-build_toolchain_openbsd_BUILD.gn
+37-10031 files not shown
+68-13137 files

LLVM/project d8b2232llvm/lib/Transforms/InstCombine InstCombineCasts.cpp, llvm/test/Transforms/InstCombine fptoui-of-fdiv.ll

[InstCombine] Fold fpto{u,s}i of int-cast fdiv into {u,s}div (#205853)

Fixes #205305.

Adds an InstCombine fold for the pattern `fpto{u,s}i (fdiv ({u,s}itofp
X), C)` to `{u,s}div X, C`.

Safe when
- Unsigned: C > 0 and the integer width N <= the FP mantissa width p.
- Signed:  C != 0 and N - 1 <= p, excluding (X == INT_MIN, C == -1). 

See linked issue for detailed reasoning.
DeltaFile
+395-0llvm/test/Transforms/InstCombine/fptoui-of-fdiv.ll
+58-1llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
+453-12 files

FreeBSD/ports 8006801security Makefile, security/py-kdcproxy Makefile pkg-descr

security/py-kdcproxy: Add new Port

kdcproxy is a WSGI module for proxying Kerberos KDC requests over
HTTP and HTTPS. It is required by the upcoming FreeIPA server port.

WWW: https://github.com/latchset/kdcproxy

Sponsored by:   Netzkommune GmbH
DeltaFile
+24-0security/py-kdcproxy/Makefile
+5-0security/py-kdcproxy/pkg-descr
+3-0security/py-kdcproxy/distinfo
+1-0security/Makefile
+33-04 files

NetBSD/pkgsrc-wip 1e5899atinyssh Makefile PLIST, tinyssh/patches patch-Makefile

tinyssh: update to 20260601, tested with tcpserver
DeltaFile
+27-0tinyssh/patches/patch-Makefile
+3-8tinyssh/Makefile
+4-3tinyssh/PLIST
+4-3tinyssh/distinfo
+38-144 files

LLVM/project e3c8818llvm/lib/Transforms/InstCombine InstCombineAddSub.cpp, llvm/test/Transforms/InstCombine add4.ll

[InstCombine] Fold commuted add of udiv/urem by two (#206272) (#207462)

Fixes #206272.

`SimplifyAddWithRemainder` folds `(X / C0) * C1 + (X % C0) * C2`,
treating `and X, lowmask` as a remainder and `lshr X, N` as a division.
The commuted form `add (and X, C), (lshr X, N)` was missed because the
operand-order swap only recognized a real `urem`/`srem`.

Now the fold is tried with both operand orders instead of relying on
that swap. Verified with Alive2.

Supersedes #207249 (re-opened from the correct account; already
incorporates the both-operand-orders refactor suggested there by
nikic).

Prepared with AI assistance per the [LLVM AI Tool
Policy](https://llvm.org/docs/AIToolPolicy.html); not a "good first
issue".

    [3 lines not shown]
DeltaFile
+32-28llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
+26-0llvm/test/Transforms/InstCombine/add4.ll
+58-282 files

LLVM/project 5bc1978llvm/include/llvm/CodeGen TargetSubtargetInfo.h, llvm/include/llvm/MC MCSubtargetInfo.h

[MC][NFC] Store SubTypeKV names as string table (#207580)

This moves the large SubTypeKV arrays to .rodata, as they no longer
contain the key pointers that need to be relocated.

Additionally, remove the largely redundant CPUNames arrays and integrate
the AArch64 aliases into the sorted string table. There was really no
need to introduce these 17 kiB arrays solely for including AArch64
aliases in help output.... (added in b6c22a4)
DeltaFile
+43-62llvm/utils/TableGen/SubtargetEmitter.cpp
+17-12llvm/include/llvm/MC/MCSubtargetInfo.h
+11-13llvm/lib/MC/MCSubtargetInfo.cpp
+4-4llvm/unittests/CodeGen/MFCommon.inc
+2-1llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
+1-1llvm/unittests/CodeGen/MachineInstrTest.cpp
+78-933 files not shown
+81-969 files

NetBSD/src Jnkpwffsys/arch/m68k/conf files.m68k

   defflag M68K_MMU_CUSTOM.  Checks for this were added a while ago, but
   the defflag was missed.  It's not expected to be used directly by
   configus, but is there as something other MMU options can add as a
   dependency.
VersionDeltaFile
1.75+2-1sys/arch/m68k/conf/files.m68k
+2-11 files

FreeBSD/ports 7000031net-im/libpurple Makefile pkg-plist, net-im/pidgin Makefile

net-im/(pidgin,libpurple): Remove SILC and make Evolution optional

The port of silc-toolkit was removed in 2025. Evolution is not required
to build Pidgin -- and is not necessary for many -- leave it optional,
defaulting to off (raise PORTREVISION).
DeltaFile
+4-13net-im/libpurple/Makefile
+0-2net-im/libpurple/pkg-plist
+1-0net-im/pidgin/Makefile
+5-153 files

FreeBSD/ports 959cec0games/battletanks Makefile, games/battletanks/files patch-SConstruct

games/battletanks: fix version detection against modern Python

- Use correct function to open files, file() is an old method,
  which also makes version.replace() below work as intended
- Drop needless copy of env.Append(CPPDEFINES=['ENABLE_LUA'])
DeltaFile
+14-17games/battletanks/files/patch-SConstruct
+2-2games/battletanks/Makefile
+16-192 files

FreeBSD/ports 6ed3b21ports-mgmt/portlint Makefile, ports-mgmt/portlint/src portlint.pl

ports-mgmt/portlint: Update to 2.25.0

* fix: Warn on late use of macros in the rest of the Makefile [1]
* feat: Do not throw errors for metaports [2]

PR:             295710 [1]
Reported by:    des [2]
DeltaFile
+37-11ports-mgmt/portlint/src/portlint.pl
+1-1ports-mgmt/portlint/Makefile
+38-122 files

FreeBSD/ports 73d292csecurity/vuxml/vuln 2026.xml

security/vuxml: Document Weechat vulnerability
DeltaFile
+25-0security/vuxml/vuln/2026.xml
+25-01 files