🏛️ Help other developers use your project. A CMake script for packaging C/C++ projects for simple project installation while employing best-practices for maximum compatibility.
MIT License
Bot releases are hidden (Show)
Full Changelog: https://github.com/TheLartians/PackageProject.cmake/compare/v1.11.1...v1.11.2
Published by TheLartians 11 months ago
Full Changelog: https://github.com/TheLartians/PackageProject.cmake/compare/v1.11.0...v1.11.1
Published by TheLartians over 1 year ago
Full Changelog: https://github.com/TheLartians/PackageProject.cmake/compare/v1.10.0...v1.11.0
Published by TheLartians almost 2 years ago
INCLUDE_DESTINATION
by @OlivierLDff in https://github.com/TheLartians/PackageProject.cmake/pull/33
Full Changelog: https://github.com/TheLartians/PackageProject.cmake/compare/v1.9.0...v1.10.0
Published by TheLartians over 2 years ago
Using the INCLUDE_HEADER_PATTERN
it is now possible to filter installed files inside the PROJECT_INCLUDE_DIR
directory.
Full Changelog: https://github.com/TheLartians/PackageProject.cmake/compare/v1.8.0...v1.9.0
Published by TheLartians over 3 years ago
Using the VERSION
flag with a CMake version identifier (<major>[.<minor>[.<patch>[.<tweak>]]]
) will now also define macros containing integer values for the major, minor, patch and tweak components. They are accessed in C++ by appending the component name to the version macro, e.g. <uppercase package name>_VERSION_MAJOR
.
Thanks to @mscofield0 for the PR!
Published by TheLartians over 3 years ago
This release adds a new feature: Export Headers!
Simply add the parameter EXPORT_HEADER
, e.g. to EXPORT_HEADER "${PROJECT_NAME}/export.h"
, for CMake to generate an export header next to your version header file. This feature is useful for those writing a libraries that users should be able to link to both statically and dynamically.
Thanks to @ClausKlein for the implementation!
Published by TheLartians over 3 years ago
The project has been updated to provide a cleaner separation of components, sets the install location to a catchable variable as well as other correctness updates. An option ARCH_INDEPENDENT
has been added that allows for architecture independent installations. This is enabled by default for INTERFACE
libraries. See #24 for details.
Published by TheLartians over 3 years ago
Fixes a bug where the flag NO_VERSION_SUFFIX
couldn't be disabled. The option has now been renamed to the named parameter PROJECT_VERSION_SUFFIX
.
Published by TheLartians over 3 years ago
Add optional flag NO_VERSION_SUFFIX
to remove versioned installation suffix. See the readme or #15 for details.
Published by TheLartians over 3 years ago
Fixes a bug preventing the version may now be specified in dependencies. For example: DEPENDENCIES "fmt 7.1.3;cxxopts 2.2.0"
is now a valid parameter.
Published by TheLartians almost 4 years ago
We now support namespaced targets using the additional NAMESPACE
parameter. See the readme for more information.
Published by TheLartians over 4 years ago
Added an option to automatically create a version header which is installed and included in the project's target.
Published by TheLartians over 4 years ago