Repository navigation
Install CMake package exports and pkg-config metadata - #23
Merged
Merged
Conversation
Export memtailor::memtailor with C++17, Threads and the installed debug ABI setting. Use GNUInstallDirs and the Autotools SONAME, and test relocated shared/static installations in CI. Co-authored-by: Codex <noreply@openai.com>
Ubuntu does not search lib64 by default; let GNUInstallDirs select the platform library directory for prefix-based discovery. Co-authored-by: Codex <noreply@openai.com>
dimpase
commented
Sep 17, 2026
dimpase
left a comment
Author
There was a problem hiding this comment.
lgtm. @d-torrance - can you have a look?
dimpase
marked this pull request as ready for review
September 17, 2026 20:51
This was referenced Sep 18, 2026
3 tasks done
6 tasks
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.
CMake builds currently install the library and headers but no package configuration, exported target, or pkg-config metadata. This prevents consumers from using
find_package(memtailor CONFIG)directly and makes distribution packaging require extra installation fixes.This change installs
memtailorConfig.cmake, version metadata, and thememtailor::memtailortarget using GNUInstallDirs. The target supplies include paths, C++17, Threads, and the installed library's ABI-affectingMEMT_DEBUGsetting, including when the consumer uses a different build configuration. Shared libraries use the existing Autotools SONAME/version. CMake also installsmemtailor.pc, including debug flags, and the README documents building and consuming the package.The existing Linux/macOS CI gains relocated install-and-consume checks for shared/static and Release/Debug builds. The consumer deliberately requests C++11 to check that the exported C++17 requirement upgrades it. CTest is enabled at the project root so a normal root-level test invocation discovers the unit tests. Autotools distribution metadata includes the new CMake templates and consumer fixture.
Local Gentoo validation:
MEMT_DEBUG.FindMemtailor.cmake.The Gentoo ebuild carries the CMake changes as a patch against v1.4 until an upstream release includes them. It is maintained outside this repository.
🤖 gpt-6-astra worked on this 🤖