[Midnightbsd-cvs] [MidnightBSD/mports] 155ca6: dns/libidn2: enable ELF symbol versioning (#1613)

Lucas Holt noreply at github.com
Wed Sep 23 23:25:56 EDT 2026


  Branch: refs/heads/master
  Home:   https://github.com/MidnightBSD/mports
  Commit: 155ca6f99990bc0d7fbd289a6dfc7213add4fc44
      https://github.com/MidnightBSD/mports/commit/155ca6f99990bc0d7fbd289a6dfc7213add4fc44
  Author: Lucas Holt <luke at foolishgames.com>
  Date:   2026-09-23 (Wed, 23 Sep 2026)

  Changed paths:
    M dns/libidn2/Makefile

  Log Message:
  -----------
  dns/libidn2: enable ELF symbol versioning (#1613)

Refs #1380 (follow-up identified in #1612).

## Problem
gnulib's `gl_LD_VERSION_SCRIPT` probe links a test program with a map
naming a symbol the program never defines. LLD 16+ defaults to
`--no-undefined-version`, so the probe reports no and libidn2 was built
without its `IDN2_*` version nodes. The FreeBSD 13 amd64 package carries
`IDN2_0.0.0`, `IDN2_2.1.0`, `IDN2_2.3.5`.

## Change
- `--enable-ld-version-script` and `LDFLAGS+= -Wl,--undefined-version`,
matching FreeBSD's port.
- `HAS_SYMBOL_VERSION` on `libidn2.so.0` so `fake-sanity` fails if the
versions are dropped again.
- `TEST_TARGET=check` so `bmake test` runs the upstream suite (it was a
no-op before).
- `PORTREVISION=1` since installed libraries gain symbol versions.

## Verification
- `bmake package` succeeds; staged `libidn2.so.0.4.0` now has
`IDN2_0.0.0 IDN2_2.1.0 IDN2_2.3.5`, identical to the FreeBSD package.
- `bmake test`: 14 tests, 0 failures.
- `portlint -A`: 0 fatal errors.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

## Summary by Sourcery

Enable and validate ELF symbol versioning for libidn2 while integrating
its upstream test suite into port testing.

New Features:
- Enable ELF symbol versioning for the libidn2 shared library.

Enhancements:
- Add an installed-library symbol-version check to prevent version nodes
from being lost.
- Run libidn2’s upstream test suite during port tests.

Tests:
- Verify the expected libidn2 symbol versions are present in the
installed library.

Chores:
- Increment the port revision to reflect the changed library ABI
metadata.

Signed-off-by: Lucas Holt <luke at foolishgames.com>
Co-authored-by: Claude Fable 5.1 <noreply at anthropic.com>



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