Skip to content

Modify: vcpkg add Json Lib & Tools#945

Merged
xsscx merged 3 commits intomasterfrom
modify-vcpkg-static
Apr 30, 2026
Merged

Modify: vcpkg add Json Lib & Tools#945
xsscx merged 3 commits intomasterfrom
modify-vcpkg-static

Conversation

@xsscx
Copy link
Copy Markdown
Member

@xsscx xsscx commented Apr 29, 2026

PR Summary

#943

What Changed

  • Adds JSON support to the vcpkg feature model.
  • Keeps the vcpkg port static-only via vcpkg_check_linkage(ONLY_STATIC_LIBRARY).
  • Moves feature behavior into upstream CMake options instead of patching CMake files inside the vcpkg port.
  • Makes XML, JSON, and tools opt-in features.
  • Updates exported CMake package behavior so consumers can link the expected RefIccMAX::* targets.
  • Updates the hello-world vcpkg example to consume iccdev with XML and JSON features.
  • Adds usage guidance for downstream find_package(RefIccMAX CONFIG REQUIRED) consumers.
  • Updates CI workflows to validate the vcpkg port and shared export consumer path across supported platforms.

Developer Impact

After this PR, downstream users can install:

  • iccdev provides the core static library.
  • iccdev[xml] enables XML library support.
  • iccdev[json] enables JSON library support.
  • iccdev[tools,xml,json] enables the command-line tooling path with XML and JSON tools.

Consumers can continue to use target-based CMake linkage:

find_package(RefIccMAX CONFIG REQUIRED)
target_link_libraries(my_app PRIVATE RefIccMAX::IccProfLib2)
target_link_libraries(my_app PRIVATE RefIccMAX::IccXML2)
target_link_libraries(my_app PRIVATE RefIccMAX::IccJSON2)

Checklist

  • Built locally with the documented build flow in docs/build.md
  • Ran relevant profile tests (Testing/CreateAllProfiles.* and Testing/RunTests.*)
  • Added or updated regression coverage for behavior changes
  • Checked sanitizer coverage for memory-safety or parser changes
  • Updated documentation for user-visible behavior changes
  • New source files include the ICC copyright and BSD 3-Clause license header
  • Code style matches nearby code: 2-space indent, K&R braces, m_ members

@xsscx xsscx requested a review from ChrisCoxArt April 29, 2026 02:46
@xsscx xsscx self-assigned this Apr 29, 2026
@xsscx xsscx requested a review from dwtza as a code owner April 29, 2026 02:46
@xsscx xsscx added PR Pull Request Merge Ready Maintainer indicates Merge Ready labels Apr 29, 2026
@xsscx xsscx removed the request for review from dwtza April 29, 2026 02:46
@xsscx xsscx linked an issue Apr 29, 2026 that may be closed by this pull request
@xsscx xsscx added Pending Merge Maintainer indicates Merge Pending and Requests No Further Changes and removed Merge Ready Maintainer indicates Merge Ready pending labels Apr 30, 2026
@xsscx xsscx merged commit b2b65a2 into master Apr 30, 2026
31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Pending Merge Maintainer indicates Merge Pending and Requests No Further Changes PR Pull Request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modify: vcpkg add Json Lib & Tools

2 participants