diff options
| author | Martin Hořeňovský | 2024-02-17 22:30:26 +0100 |
|---|---|---|
| committer | Martin Hořeňovský | 2024-02-17 23:04:04 +0100 |
| commit | 562f31029a64fa6204eefa266b201b6c3f6e05e6 (patch) | |
| tree | 4a14915509bd2b3a0ff67f15131fb109706359cd | |
| parent | 62d4aecb8c9c30b04188d6846e3ad072eee790ba (diff) | |
| download | catch3-562f31029a64fa6204eefa266b201b6c3f6e05e6.tar.gz | |
Use the same Conan CMake target setup for Conan v1 and v2.
This requires Conan v1 in version 1.53.0 or greater, but that
should not pose a problem in practice.
| -rwxr-xr-x | conanfile.py | 49 |
1 files changed, 17 insertions, 32 deletions
diff --git a/conanfile.py b/conanfile.py index 2edb475b..f8892ad6 100755 --- a/conanfile.py +++ b/conanfile.py @@ -6,6 +6,7 @@ import os import shutil import re +required_conan_version = ">=1.53.0" class CatchConan(ConanFile): name = "catch2" @@ -68,35 +69,19 @@ class CatchConan(ConanFile): def package_info(self): lib_suffix = "d" if self.settings.build_type == "Debug" else "" - if conan_version < scm.Version("2.0.0"): - self.cpp_info.names["cmake_find_package"] = "Catch2" - self.cpp_info.names["cmake_find_package_multi"] = "Catch2" - # Catch2 - self.cpp_info.components["catch2base"].names["cmake_find_package"] = "Catch2" - self.cpp_info.components["catch2base"].names["cmake_find_package_multi"] = "Catch2" - self.cpp_info.components["catch2base"].names["pkg_config"] = "catch2" - self.cpp_info.components["catch2base"].libs = ["Catch2" + lib_suffix] - self.cpp_info.components["catch2base"].builddirs.append("lib/cmake/Catch2") - # Catch2WithMain - self.cpp_info.components["catch2main"].names["cmake_find_package"] = "Catch2WithMain" - self.cpp_info.components["catch2main"].names["cmake_find_package_multi"] = "Catch2WithMain" - self.cpp_info.components["catch2main"].names["pkg_config"] = "Catch2WithMain" - self.cpp_info.components["catch2main"].libs = ["Catch2Main" + lib_suffix] - self.cpp_info.components["catch2main"].requires = ["catch2base"] - else: - self.cpp_info.set_property("cmake_file_name", "Catch2") - self.cpp_info.set_property("cmake_target_name", "Catch2::Catch2WithMain") - self.cpp_info.set_property("pkg_config_name", "catch2-with-main") - - # Catch2 - self.cpp_info.components["catch2base"].set_property("cmake_file_name", "Catch2::Catch2") - self.cpp_info.components["catch2base"].set_property("pkg_config_name", "catch2") - self.cpp_info.components["catch2base"].libs = ["Catch2" + lib_suffix] - self.cpp_info.components["catch2base"].builddirs.append("lib/cmake/Catch2") - - # Catch2WithMain - self.cpp_info.components["catch2main"].set_property("cmake_file_name", "Catch2::Catch2WithMain") - self.cpp_info.components["catch2main"].set_property("cmake_target_name", "Catch2::Catch2WithMain") - self.cpp_info.components["catch2main"].set_property("pkg_config_name", "catch2-with-main") - self.cpp_info.components["catch2main"].libs = ["Catch2Main" + lib_suffix] - self.cpp_info.components["catch2main"].requires = ["catch2base"]
\ No newline at end of file + self.cpp_info.set_property("cmake_file_name", "Catch2") + self.cpp_info.set_property("cmake_target_name", "Catch2::Catch2WithMain") + self.cpp_info.set_property("pkg_config_name", "catch2-with-main") + + # Catch2 + self.cpp_info.components["catch2base"].set_property("cmake_file_name", "Catch2::Catch2") + self.cpp_info.components["catch2base"].set_property("pkg_config_name", "catch2") + self.cpp_info.components["catch2base"].libs = ["Catch2" + lib_suffix] + self.cpp_info.components["catch2base"].builddirs.append("lib/cmake/Catch2") + + # Catch2WithMain + self.cpp_info.components["catch2main"].set_property("cmake_file_name", "Catch2::Catch2WithMain") + self.cpp_info.components["catch2main"].set_property("cmake_target_name", "Catch2::Catch2WithMain") + self.cpp_info.components["catch2main"].set_property("pkg_config_name", "catch2-with-main") + self.cpp_info.components["catch2main"].libs = ["Catch2Main" + lib_suffix] + self.cpp_info.components["catch2main"].requires = ["catch2base"]
\ No newline at end of file |