[Midnightbsd-cvs] [MidnightBSD/mports] c92ebc: lang/ocaml: fix the packing list for the nox11 fla...

Lucas Holt noreply at github.com
Sun Aug 16 23:38:12 EDT 2026


  Branch: refs/heads/master
  Home:   https://github.com/MidnightBSD/mports
  Commit: c92ebc2bbcaed9f6eefdb07a1ae11ac5ec565693
      https://github.com/MidnightBSD/mports/commit/c92ebc2bbcaed9f6eefdb07a1ae11ac5ec565693
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M lang/ocaml/Makefile
    M lang/ocaml/pkg-plist

  Log Message:
  -----------
  lang/ocaml: fix the packing list for the nox11 flavor and drop duplicate docs

Two independent packing list bugs.

The X11 option already drives PLIST_SUB (X11="" / "@comment ") and passes
-no-graph when it is off, but none of the graphics entries carried the
%%X11%% marker, so ocaml-nox11 demanded 14 files its own build never
produces:

  lib/ocaml/graphics.cma not installed.
  lib/ocaml/libgraphics.a not installed.
  ...
  Fake failed.

Separately, the documentation was listed twice.  pkg-plist named all 491
%%DOCSDIR%% files by hand while PORTDOCS already installs htmlman and the
two reference manuals, so add-plist-docs appended the same files again as
absolute paths.  Each doc file appeared once as
"share/doc/ocaml/htmlman/libnum.html" and once as
"/usr/local/share/doc/ocaml/htmlman/libnum.html", and installing the package
failed on the second copy:

  mport.install: Can't create '/usr/local/share/doc/ocaml/htmlman/libnum.html'

That is why lang/ocaml is only "warn" in the build cluster yet
devel/ocaml-ocamlbuild and math/facile fail: the port builds, but nothing can
install it.  Let PORTDOCS own those entries.

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: ba88a0be939fb9ed1b056b6130435a21b3f92a5f
      https://github.com/MidnightBSD/mports/commit/ba88a0be939fb9ed1b056b6130435a21b3f92a5f
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M devel/llvm21/Makefile
    M devel/llvm21/files/llvm-wrapper.sh.in

  Log Message:
  -----------
  devel/llvm21: fix wrapper script dispatching all commands to bugpoint

The realpath call resolved symlinks before extracting the basename, so
every command (clang21, llvm-ar21, ld.lld21, etc.) resolved to bugpoint21
and executed bugpoint instead of the intended tool. Use ${0##*/} directly.

This is the same defect fixed in devel/llvm19 by 2d080d0ca3.

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: 16ef53681b4254f234cc865eb007fb0f289ccec6
      https://github.com/MidnightBSD/mports/commit/16ef53681b4254f234cc865eb007fb0f289ccec6
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M devel/gn/Makefile
    M devel/gn/distinfo
    M devel/gn/files/patch-build_gen.py
    M devel/gn/files/patch-src_gn_args.cc

  Log Message:
  -----------
  devel/gn: update to 2345

Required by newer Chromium/V8 build files, which use tool substitutions
and variables that 1962 does not implement (for example {{cc_module_name}}
in the cc/cxx tool commands).

Switch to compiler:c++20-lang and refresh patch-build_gen.py and
patch-src_gn_args.cc, which no longer applied against 2345.

Drop USES=alias: gn only reads __FreeBSD__ to select OS_FREEBSD, and
forcing -D__FreeBSD__=11 now collides with the compiler's own definition,
which gn's -Werror turns into a build failure.

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: 3081872003f1230c5bef31fc040106a68e01c421
      https://github.com/MidnightBSD/mports/commit/3081872003f1230c5bef31fc040106a68e01c421
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M ai/codex/Makefile
    A ai/codex/files/patch-cargo-crates_v8-149.2.0_build_config_compiler_BUILD.gn
    A ai/codex/files/patch-cargo-crates_v8-149.2.0_build_config_compiler__cpu__abi.gn
    A ai/codex/files/patch-cargo-crates_v8-149.2.0_build_toolchain_gcc__solink__wrapper.py
    A ai/codex/files/patch-cargo-crates_v8-149.2.0_build_toolchain_gcc__toolchain.gni

  Log Message:
  -----------
  ai/codex: build and install codex-code-mode-host

Codex resolves the Code Mode helper next to its own executable, so without
bin/codex-code-mode-host it reported the helper as missing and fell back to
direct tools. Build the second binary and install it.

codex-code-mode-host pulls in codex-code-mode-runtime, which depends
unconditionally on the v8 crate, so this is the first time V8 is actually
compiled by this port. Getting it to build needed:

- Three build patches from FreeBSD's misc/codex, adapted to v8-150.4.0:
  gcc_toolchain.gni, config/compiler/BUILD.gn and gcc_solink_wrapper.py
  (args.sofile became args.output).
- A new patch for config/compiler_cpu_abi.gn, which 150.4.0 split out of
  config/compiler/BUILD.gn.
- Guarding c_additional_outputs, which no released gn implements, and
  dropping the alink tool's inputs assignment, which gn 2345 rejects.
- enable_pkeys=false: partition_alloc keys pkeys support off is_linux, which
  this port's BUILDCONFIG.gn patch sets true for FreeBSD, but the syscalls
  do not exist here.
- use_allocator_shim=false: the shim overrides libc calloc, and libthr calls
  calloc during its own initialization, so the lazy PartitionRoot setup took
  a mutex and re-entered libthr init. That deadlocked torque at startup and
  hung the build.

Switch to llvm:min=21 and alias the tools to ${LLVM_PREFIX}/bin, which are
the real binaries rather than the multi-call wrapper that dispatches on $0.

Verified with bmake build, fake and package; the package contains both
bin/codex and bin/codex-code-mode-host.

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: d831a59990fd4ff822bae94c27f7bfb71bacf6ed
      https://github.com/MidnightBSD/mports/commit/d831a59990fd4ff822bae94c27f7bfb71bacf6ed
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M archivers/rpm4/Makefile

  Log Message:
  -----------
  archivers/rpm4: derive the platform directory name on every 4.x release

rpm names its platform macro directories after the configure host triplet,
which carries the OS major version, so they install as <arch>-midnightbsd4.
RPM_OPSYS only appended the version when OSREL was exactly "4.1", so on any
other 4.x the packing list expanded to <arch>-midnightbsd and all 67 platform
entries were reported missing:

    /usr/local/lib/rpm/platform/amd64-midnightbsd4/macros is missing from the plist
    ... (67 total)
  Fake failed.

Drop the version test.  ${OSREL:R} yields 4 for any 4.x, which is what rpm
uses.  Both flavors build and package here on 4.2, which reproduced the
failure before the change.

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: 984614158f36c5a9340e3b0d359099d153199d07
      https://github.com/MidnightBSD/mports/commit/984614158f36c5a9340e3b0d359099d153199d07
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M mail/dovecot24/Makefile
    M mail/dovecot24/pkg-plist

  Log Message:
  -----------
  mail/dovecot24: fix the python shebang and two missing headers

The QA stage rejected the installed helper script:

  Error: '/usr/bin/env python3' is an invalid shebang you need USES=shebangfix
  for 'libexec/dovecot/settings-history.py'

Add shebangfix for it, and list include/dovecot/auth-sasl.h and
include/dovecot/smtp-dovecot.h, which fake reported as missing from the plist.

Rewriting the shebang makes settings-history.py newer than the pre-generated
settings-history-core.h, which fires the regeneration rule in
src/lib-settings/Makefile.  That rule uses the GNU make $< variable, which is
empty under BSD make, so the script runs without its input file:

  settings-history.py: error: the following arguments are required: output-file

Touch the shipped header after the shebang is rewritten so the rule stays
satisfied.

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: 36e70a21728c9b96f95250342553c12266e3dc76
      https://github.com/MidnightBSD/mports/commit/36e70a21728c9b96f95250342553c12266e3dc76
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M irc/znc-clientbuffer/Makefile

  Log Message:
  -----------
  irc/znc-clientbuffer: add the missing pkgconfig dependency

znc-buildmod drives cmake, and znc's own ZNCConfig.cmake pulls in
find_dependency(PkgConfig).  Without devel/pkgconf on the build path the
configure step dies:

  CMake Error ... Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
  /usr/local/share/znc/cmake/ZNCConfig.cmake:22 (find_dependency_pc)

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


  Commit: 9bc36e8b89a57fbfdcd2b4b6e008443ee8bd7a8d
      https://github.com/MidnightBSD/mports/commit/9bc36e8b89a57fbfdcd2b4b6e008443ee8bd7a8d
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-08-16 (Sun, 16 Aug 2026)

  Changed paths:
    M irc/znc-push/Makefile

  Log Message:
  -----------
  irc/znc-push: add the missing pkgconfig dependency

znc-buildmod drives cmake, and znc's own ZNCConfig.cmake pulls in
find_dependency(PkgConfig).  Without devel/pkgconf on the build path the
configure step dies:

  CMake Error ... Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
  /usr/local/share/znc/cmake/ZNCConfig.cmake:22 (find_dependency_pc)

AI-Assisted-by: Claude Opus 5 (1M context) <noreply at anthropic.com>
Signed-off-by: Lucas Holt <luke at foolishgames.com>


Compare: https://github.com/MidnightBSD/mports/compare/7a7c9ab1df07...9bc36e8b89a5

To unsubscribe from these emails, change your notification settings at https://github.com/MidnightBSD/mports/settings/notifications


More information about the Midnightbsd-cvs mailing list