Merge topic 'fix-cps-version' into release-3.31

f04dd93c47 cmExportPackageInfoGenerator: Fix version properties

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9914
This commit is contained in:
Brad King
2024-10-18 11:39:59 +00:00
committed by Kitware Robot
4 changed files with 43 additions and 2 deletions

View File

@@ -106,10 +106,10 @@ Json::Value cmExportPackageInfoGenerator::GeneratePackageInfo() const
if (!this->PackageVersion.empty()) {
package["version"] = this->PackageVersion;
if (!this->PackageVersion.empty()) {
if (!this->PackageVersionCompat.empty()) {
package["compat_version"] = this->PackageVersionCompat;
}
if (!this->PackageVersion.empty()) {
if (!this->PackageVersionSchema.empty()) {
package["version_schema"] = this->PackageVersionSchema;
}
}

View File

@@ -0,0 +1,21 @@
include(${CMAKE_CURRENT_LIST_DIR}/Assertions.cmake)
set(out_dir "${RunCMake_BINARY_DIR}/MinimalVersion-build/CMakeFiles/Export/510c5684a4a8a792eadfb55bc9744983")
file(READ "${out_dir}/foo1.cps" content)
expect_value("${content}" "foo1" "name")
expect_value("${content}" "1.0" "version")
expect_missing("${content}" "compat_version")
expect_missing("${content}" "version_schema")
file(READ "${out_dir}/foo2.cps" content)
expect_value("${content}" "foo2" "name")
expect_value("${content}" "1.5" "version")
expect_value("${content}" "1.0" "compat_version")
expect_missing("${content}" "version_schema")
file(READ "${out_dir}/foo3.cps" content)
expect_value("${content}" "foo3" "name")
expect_value("${content}" "1.0" "version")
expect_missing("${content}" "compat_version")
expect_value("${content}" "simple" "version_schema")

View File

@@ -0,0 +1,19 @@
add_library(foo INTERFACE)
install(TARGETS foo EXPORT foo DESTINATION .)
install(PACKAGE_INFO foo1
EXPORT foo
VERSION 1.0
DESTINATION cps)
install(PACKAGE_INFO foo2
EXPORT foo
VERSION 1.5
COMPAT_VERSION 1.0
DESTINATION cps)
install(PACKAGE_INFO foo3
EXPORT foo
VERSION 1.0
VERSION_SCHEMA simple
DESTINATION cps)

View File

@@ -27,6 +27,7 @@ run_cmake(Appendix)
run_cmake(InterfaceProperties)
run_cmake(Metadata)
run_cmake(Minimal)
run_cmake(MinimalVersion)
run_cmake(LowerCaseFile)
run_cmake(Requirements)
run_cmake(TargetTypes)