Skip to content

lang/python311: fix build failure on DragonFly#1560

Merged
tuxillo merged 1 commit into
masterfrom
agentic/lang-python311-20260612-080058Z
Jun 12, 2026
Merged

lang/python311: fix build failure on DragonFly#1560
tuxillo merged 1 commit into
masterfrom
agentic/lang-python311-20260612-080058Z

Conversation

@dragonflybot

Copy link
Copy Markdown
Member

Generated by the DragonFly agentic build-fix loop and verified in a clean dev-env. Reviewed and accepted by operator operator before submission.

Problem

The build failed on @2026Q2 — classified plist-error, confidence high.

Python’s build system generates the _sysconfigdata module with the host platform string (dragonfly6_ on DragonFly 6.x), but the port’s pkg-plist hardcodes the prefix freebsd. The PLIST_SUB expansion therefore expects files named _sysconfigdata__freebsd%%OSMAJOR%%_*.pyc while the installed files are _sysconfigdata__dragonfly%%OSMAJOR%%_*.py*. Packaging fails because the listed files do not exist.

Evidence:

  • pkg-static: Unable to access file /construction/lang/python311/stage/usr/local/lib/python3.11/__pycache__/_sysconfigdata__freebsd99_.cpython-311.opt-1.pyc:No such file or directory (and the same for opt-2 and non-opt variants) – the expected freebsd* names are missing.
  • Build log shows the module is generated with the dragonfly6_ suffix:
    copying build/lib.dragonfly-6.5-x86_64-3.11/_sysconfigdata__dragonfly6_.py -> /construction/lang/python311/stage/usr/local/lib/python3.11/lib-dynload
    and corresponding .pyc files are installed under dragonfly6 names, not freebsd*.
  • pkg-plist contains entries like:
    %%PYTHON_LIBDIR%%/__pycache__/_sysconfigdata_%%ABI%%_freebsd%%OSMAJOR%%_%%PYTHON_TAG%%.opt-1.pyc
    where freebsd%%OSMAJOR%% is expanded with the DragonFly OS major version, but the actual file uses dragonfly%%OSMAJOR%%.

Fix

Automated fix for the build failure in lang/python311.

What changed

1 file changed, +12/-11

  • ports/lang/python311/overlay.dops

Verification

Built successfully in a DragonFly dev-env (dsynth) for target @2026Q2.
Verified 2026-06-12T22:17:55.673496+00:00.

Provenance

  • Operator: operator
  • Agent: model=deepseek/deepseek-v4-pro attempts=1 tokens=1347397

> Generated by the DragonFly agentic build-fix loop and verified in a clean dev-env. Reviewed and accepted by operator `operator` before submission.

## Problem

The build failed on `@2026Q2` — classified `plist-error`, confidence `high`.

Python’s build system generates the `_sysconfigdata` module with the host platform string (`dragonfly6_` on DragonFly 6.x), but the port’s `pkg-plist` hardcodes the prefix `freebsd`.  The `PLIST_SUB` expansion therefore expects files named `_sysconfigdata__freebsd%%OSMAJOR%%_*.pyc` while the installed files are `_sysconfigdata__dragonfly%%OSMAJOR%%_*.py*`.  Packaging fails because the listed files do not exist.

**Evidence:**

- `pkg-static: Unable to access file /construction/lang/python311/stage/usr/local/lib/python3.11/__pycache__/_sysconfigdata__freebsd99_.cpython-311.opt-1.pyc:No such file or directory` (and the same for opt-2 and non-opt variants) – the expected `freebsd*` names are missing.
- Build log shows the module is generated with the `dragonfly6_` suffix:
  `copying build/lib.dragonfly-6.5-x86_64-3.11/_sysconfigdata__dragonfly6_.py -> /construction/lang/python311/stage/usr/local/lib/python3.11/lib-dynload`
  and corresponding `.pyc` files are installed under `dragonfly6` names, not `freebsd*`.
- `pkg-plist` contains entries like:
  `%%PYTHON_LIBDIR%%/__pycache__/_sysconfigdata_%%ABI%%_freebsd%%OSMAJOR%%_%%PYTHON_TAG%%.opt-1.pyc`
  where `freebsd%%OSMAJOR%%` is expanded with the DragonFly OS major version, but the actual file uses `dragonfly%%OSMAJOR%%`.

## Fix

Automated fix for the build failure in `lang/python311`.

## What changed

1 file changed, +12/-11

- `ports/lang/python311/overlay.dops`

## Verification

Built successfully in a DragonFly dev-env (dsynth) for target `@2026Q2`.
Verified 2026-06-12T22:17:55.673496+00:00.

## Provenance

- Operator: operator
- Agent: model=deepseek/deepseek-v4-pro attempts=1 tokens=1347397

Signed-off-by: Fred [bot] <github@dragonflybsd.org>
@tuxillo tuxillo marked this pull request as ready for review June 12, 2026 22:45
@tuxillo tuxillo merged commit 6c1575b into master Jun 12, 2026
1 of 2 checks passed
@tuxillo tuxillo deleted the agentic/lang-python311-20260612-080058Z branch June 12, 2026 22:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants