Repository navigation
Avoid modifying alias targets in the installed CMake config - #192
Merged
HexDecimal merged 1 commit intoOct 11, 2026
Merged
Conversation
HexDecimal
approved these changes
Oct 11, 2026
HexDecimal
left a comment
Collaborator
There was a problem hiding this comment.
It's nice to confirm that includes were already exported. Thanks also for confirming the error.
The job and tests are well written, though I might split up the workflow commands into more steps later.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An existing
libtcod::libtcodalias makesfind_package(libtcod)fail because the installed config callstarget_include_directorieson that alias.Remove the redundant include-directory mutation. The exported target already carries the install include paths. Keep
LIBTCOD_INCLUDE_DIR,LIBTCOD_LIBRARY, dependency lookup, and required-component checking unchanged.Add a downstream CMake consumer and a separate Linux CI job for static/shared packages. The tests relocate the installation before compiling, linking, and running a consumer; check that repeated
find_packagedoes not change include directories; and check that an existing alias is preserved. The package job disables optional SDL/zlib/PNG/Unicode dependencies to isolate the config/export behavior.Validation on Linux (GCC 12, CMake 3.25):
GUI-dependent tests tagged
[!nonportable], Windows, and macOS were not run locally.Fixes #191