Skip to content

Refactor libshaderc build pipeline to BuildShared and align package/docs metadata#5

Merged
cxfksword merged 3 commits intomainfrom
copilot/refactor-build-shared-integration
Apr 1, 2026
Merged

Refactor libshaderc build pipeline to BuildShared and align package/docs metadata#5
cxfksword merged 3 commits intomainfrom
copilot/refactor-build-shared-integration

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 1, 2026

This change aligns libshaderc-build with the shared mpvkit/BuildShared architecture used by other build repos (e.g. lcms2-build), including workflow reuse and script-layer consolidation. It also updates package template/docs metadata and appends the required BuildScripts lockfile ignore entry.

  • Build script architecture (BuildShared adoption)

    • Sources/BuildScripts/Package.swift now depends on https://github.com/mpvkit/BuildShared.git (main) and links target build against BuildShared.
    • Sources/BuildScripts/XCFrameworkBuild/main.swift migrated from local runner/base abstractions to BuildRunner/BaseBuild from BuildShared.
    • Removed local duplicated build core: Sources/BuildScripts/XCFrameworkBuild/base.swift.
    • Replaced release URL version sourcing from local static state with explicit runtime propagation from parsed options to avoid force-unwrapped global access.
  • GitHub Actions workflow refactor

    • Replaced inline job implementations with reusable workflows:
      • .github/workflows/build.ymlmpvkit/BuildShared/.github/workflows/build.yml@main
      • .github/workflows/check_version.ymlmpvkit/BuildShared/.github/workflows/check_version.yml@main
    • Passed repo-specific inputs (library: libshaderc, repository: google/shaderc, dispatch version passthrough).
    • Added explicit permissions blocks in both workflow jobs.
  • Package template + documentation updates

    • Updated docs/Package.template.swift product export to point to the dummy embedding target (_Libshaderc_combined) while preserving auto-generation markers/structure.
    • Updated README.md with MPVKit component context line, consistent with sibling build repositories.
  • Repository hygiene

    • Appended Sources/BuildScripts/Package.resolved to the end of .gitignore (as requested).

Example of the workflow consolidation pattern applied:

jobs:
  build:
    permissions:
      contents: write
    uses: mpvkit/BuildShared/.github/workflows/build.yml@main
    secrets: inherit
    with:
      version: '${{ github.event.inputs.version }}'
      library: 'libshaderc'

@cxfksword cxfksword marked this pull request as ready for review April 1, 2026 13:54
@cxfksword cxfksword merged commit 441956c into main Apr 1, 2026
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.

2 participants