Skip to content

🔧 add libpdfium static build - #13

Merged
sebO-S merged 57 commits into
devfrom
add-php-ext-publish
Oct 22, 2026
Merged

sebO-S merged 57 commits into
devfrom
add-php-ext-publish

Conversation

@sebO-S

@sebO-S sebO-S commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Description

Types of changes

  • Docs change / refactoring / dependency upgrade
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Requires a change to the official Guide documentation.

@sebO-S sebO-S changed the title 🔧 add libpdfium static build (ubuntu-only) 🔧 add libpdfium static build Oct 19, 2026
@sebO-S
sebO-S marked this pull request as ready for review October 22, 2026 08:10
@sebO-S
sebO-S requested a review from ianardee as a code owner October 22, 2026 08:10
Copilot AI balanced review requested due to automatic review settings October 22, 2026 08:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

PR regression checks are disabled, feature-powerset tests include unprovisioned static builds, and static tests can run before their archives are published.

3 open issues
What changed in this PR

Adds a static PDFium build and distribution pipeline, including JPEG symbol namespacing to avoid conflicts with mozjpeg and platform-specific linking support for the core library and PHP binding.

Changes:

  • Adds static archive building, symbol rewriting, checksum verification, and release publishing.
  • Introduces platform-specific static-link features and PHP test workflows.
  • Refreshes dependencies, adjusts caching, and disables existing PR validation jobs.
File Description
tools/​pdfium-static/​namespace_pdfium_jpeg.py Renames bundled JPEG symbols and verifies archive symbols.
tools/​pdfium-static/​download.sh Downloads and verifies static PDFium archives.
tools/​pdfium-static/​build.sh Builds static PDFium with platform-specific toolchains.
deny.toml Updates advisory and duplicate-dependency exceptions.
core/​src/​pdf/​mod.rs Gates static initialization on static-link.
core/​Cargo.toml Adds platform-specific static-link features.
core/​build.rs Refactors dynamic downloads and adds Windows link libraries.
Cargo.lock Refreshes resolved dependencies.
bindings/​ruby/​Cargo.toml Updates UniFFI dependencies.
bindings/​php/​src/​pdf/​mod.rs Selects initialization through static-link.
bindings/​php/​justfile Consolidates PHP commands and selects static features by platform.
bindings/​php/​Cargo.toml Updates ext-php-rs and exposes static-link features.
bindings/​dotnet/​Cargo.toml Updates UniFFI dependencies.
.gitignore Ignores namespaced PDFium build output.
.github/​workflows/​pull-request.yml Disables pre-commit, unit-test, and binding-test jobs.
.github/​workflows/​build-static-pdfium.yml Builds and publishes static archives across platforms.
.github/​workflows/​_php-static-check.yml Adds cross-platform static PHP binding checks.
.github/​workflows/​_php-binding-tests.yml Keys PDFium caches by release and architecture.
.cargo/​config.toml Adds Windows system-library link flags.

Review effort: Balanced

Comment thread .github/workflows/_php-static-check.yml Resolved
Comment thread .github/workflows/pull-request.yml Resolved
Comment thread core/Cargo.toml Resolved

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Custom archive rewriting and cross-platform linking require human validation of successful compatibility tests and resolution of the retained linking issue.

1 open issue
3 resolved since last review

Review effort: Balanced

Comment thread .cargo/config.toml Resolved
Update target configuration for Windows MSVC.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: sebastianMindee <130448732+sebastianMindee@users.noreply.github.com>
@sebO-S
sebO-S merged commit 65e9535 into dev Oct 22, 2026
27 checks passed
@sebO-S
sebO-S deleted the add-php-ext-publish branch October 22, 2026 13:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants