Skip to content

Add permanent header-only and compiled library targets with CMake export support#62

Merged
grdanny merged 9 commits into
imageworks:masterfrom
grdanny:header_only_separate_target
Jun 13, 2026
Merged

Add permanent header-only and compiled library targets with CMake export support#62
grdanny merged 9 commits into
imageworks:masterfrom
grdanny:header_only_separate_target

Conversation

@grdanny

@grdanny grdanny commented Apr 14, 2026

Copy link
Copy Markdown
Collaborator
  • replaced the PYSTRING_HEADER_ONLY build option with two permanent targets: pystring::pystring (compiled) and pystring::pystring_header_only (header-only). Consumers pick whichever they need.
  • added exported targets and package config files so downstream projects can consume pystring via find_package(pystring) and link against pystring::pystring or pystring::pystring_header_only.
  • Adjusted CI - making two test executables - pystring_test and pystring_test_header_only run on every CI invocation, verifying both modes work correctly.
  • Added test_header_only_define.cpp which fails the build with #error if PYSTRING_HEADER_ONLY isn't correctly propagated to consumers of the header-only target.
  • revving up release number to 1.2.0 to indicate build system changes.

Assisted-by: Claude / Sonnet 4.6

@grdanny grdanny marked this pull request as ready for review April 14, 2026 19:33
@grdanny grdanny requested a review from lgritz April 14, 2026 19:34

@lgritz lgritz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I guess? It looks ok, but I really don't feel like I have a full view of how this package is built and used to recognize if it were wrong.

@grdanny grdanny merged commit 266d23c into imageworks:master Jun 13, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants