From d57266c3ad9eb3dbda6e369df33a0daa764a39c3 Mon Sep 17 00:00:00 2001 From: SpaceIm <30052553+SpaceIm@users.noreply.github.com> Date: Thu, 14 Dec 2023 14:42:48 +0100 Subject: [PATCH 01/44] (#17338) coin-lemon: allow to consume coin-lemon with C++20 or higher * allow to consume coin-lemon with C++20 or higher * allow C++20 without dropping C++98 support --- recipes/coin-lemon/all/conandata.yml | 11 +- ... 0001-cmake-add-runtime-destination.patch} | 0 ...pp17-compat-remove-register-keyword.patch} | 0 .../all/patches/0003-cpp20-compat-alloc.patch | 199 ++++++++++++++++++ .../all/test_package/CMakeLists.txt | 3 +- 5 files changed, 209 insertions(+), 4 deletions(-) rename recipes/coin-lemon/all/patches/{cmake-add-runtime-destination_1.3.1.patch => 0001-cmake-add-runtime-destination.patch} (100%) rename recipes/coin-lemon/all/patches/{0001-remove-register-keyword.patch => 0002-cpp17-compat-remove-register-keyword.patch} (100%) create mode 100644 recipes/coin-lemon/all/patches/0003-cpp20-compat-alloc.patch diff --git a/recipes/coin-lemon/all/conandata.yml b/recipes/coin-lemon/all/conandata.yml index f00f950c896c3b..9db91250ca346b 100644 --- a/recipes/coin-lemon/all/conandata.yml +++ b/recipes/coin-lemon/all/conandata.yml @@ -4,5 +4,12 @@ sources: sha256: "71b7c725f4c0b4a8ccb92eb87b208701586cf7a96156ebd821ca3ed855bad3c8" patches: "1.3.1": - - patch_file: "patches/cmake-add-runtime-destination_1.3.1.patch" - - patch_file: "patches/0001-remove-register-keyword.patch" + - patch_file: "patches/0001-cmake-add-runtime-destination.patch" + patch_description: "Fix install destination of dll" + patch_type: "conan" + - patch_file: "patches/0002-cpp17-compat-remove-register-keyword.patch" + patch_description: "C++17 compatibility: remove register keyword" + patch_type: "portability" + - patch_file: "patches/0003-cpp20-compat-alloc.patch" + patch_description: "C++20 compatibility: remove usage of std::allocator::construct & destroy" + patch_type: "portability" diff --git a/recipes/coin-lemon/all/patches/cmake-add-runtime-destination_1.3.1.patch b/recipes/coin-lemon/all/patches/0001-cmake-add-runtime-destination.patch similarity index 100% rename from recipes/coin-lemon/all/patches/cmake-add-runtime-destination_1.3.1.patch rename to recipes/coin-lemon/all/patches/0001-cmake-add-runtime-destination.patch diff --git a/recipes/coin-lemon/all/patches/0001-remove-register-keyword.patch b/recipes/coin-lemon/all/patches/0002-cpp17-compat-remove-register-keyword.patch similarity index 100% rename from recipes/coin-lemon/all/patches/0001-remove-register-keyword.patch rename to recipes/coin-lemon/all/patches/0002-cpp17-compat-remove-register-keyword.patch diff --git a/recipes/coin-lemon/all/patches/0003-cpp20-compat-alloc.patch b/recipes/coin-lemon/all/patches/0003-cpp20-compat-alloc.patch new file mode 100644 index 00000000000000..9aa9db47a396bc --- /dev/null +++ b/recipes/coin-lemon/all/patches/0003-cpp20-compat-alloc.patch @@ -0,0 +1,199 @@ +--- a/lemon/bits/array_map.h ++++ b/lemon/bits/array_map.h +@@ -88,7 +88,11 @@ namespace lemon { + Item it; + for (nf->first(it); it != INVALID; nf->next(it)) { + int id = nf->id(it);; ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(values[id]), Value()); ++#else + allocator.construct(&(values[id]), Value()); ++#endif + } + } + +@@ -102,7 +106,11 @@ namespace lemon { + Item it; + for (nf->first(it); it != INVALID; nf->next(it)) { + int id = nf->id(it);; ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(values[id]), value); ++#else + allocator.construct(&(values[id]), value); ++#endif + } + } + +@@ -121,7 +129,11 @@ namespace lemon { + Item it; + for (nf->first(it); it != INVALID; nf->next(it)) { + int id = nf->id(it);; ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(values[id]), copy.values[id]); ++#else + allocator.construct(&(values[id]), copy.values[id]); ++#endif + } + } + +@@ -218,15 +230,24 @@ namespace lemon { + for (nf->first(it); it != INVALID; nf->next(it)) { + int jd = nf->id(it);; + if (id != jd) { ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(new_values[jd]), values[jd]); ++ std::allocator_traits::destroy(allocator, &(values[jd])); ++#else + allocator.construct(&(new_values[jd]), values[jd]); + allocator.destroy(&(values[jd])); ++#endif + } + } + if (capacity != 0) allocator.deallocate(values, capacity); + values = new_values; + capacity = new_capacity; + } ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(values[id]), Value()); ++#else + allocator.construct(&(values[id]), Value()); ++#endif + } + + // \brief Adds more new keys to the map. +@@ -260,8 +281,13 @@ namespace lemon { + } + } + if (found) continue; ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(new_values[id]), values[id]); ++ std::allocator_traits::destroy(allocator, &(values[id])); ++#else + allocator.construct(&(new_values[id]), values[id]); + allocator.destroy(&(values[id])); ++#endif + } + if (capacity != 0) allocator.deallocate(values, capacity); + values = new_values; +@@ -269,7 +295,11 @@ namespace lemon { + } + for (int i = 0; i < int(keys.size()); ++i) { + int id = nf->id(keys[i]); ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(values[id]), Value()); ++#else + allocator.construct(&(values[id]), Value()); ++#endif + } + } + +@@ -279,7 +309,11 @@ namespace lemon { + // and it overrides the erase() member function of the observer base. + virtual void erase(const Key& key) { + int id = Parent::notifier()->id(key); ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::destroy(allocator, &(values[id])); ++#else + allocator.destroy(&(values[id])); ++#endif + } + + // \brief Erase more keys from the map. +@@ -289,7 +323,11 @@ namespace lemon { + virtual void erase(const std::vector& keys) { + for (int i = 0; i < int(keys.size()); ++i) { + int id = Parent::notifier()->id(keys[i]); ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::destroy(allocator, &(values[id])); ++#else + allocator.destroy(&(values[id])); ++#endif + } + } + +@@ -303,7 +341,11 @@ namespace lemon { + Item it; + for (nf->first(it); it != INVALID; nf->next(it)) { + int id = nf->id(it);; ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::construct(allocator, &(values[id]), Value()); ++#else + allocator.construct(&(values[id]), Value()); ++#endif + } + } + +@@ -317,7 +359,11 @@ namespace lemon { + Item it; + for (nf->first(it); it != INVALID; nf->next(it)) { + int id = nf->id(it); ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits::destroy(allocator, &(values[id])); ++#else + allocator.destroy(&(values[id])); ++#endif + } + allocator.deallocate(values, capacity); + capacity = 0; +--- a/lemon/path.h ++++ b/lemon/path.h +@@ -582,7 +582,11 @@ namespace lemon { + void clear() { + while (first != 0) { + last = first->next; ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits>::destroy(alloc, first); ++#else + alloc.destroy(first); ++#endif + alloc.deallocate(first, 1); + first = last; + } +@@ -596,7 +600,11 @@ namespace lemon { + /// \brief Add a new arc before the current path + void addFront(const Arc& arc) { + Node *node = alloc.allocate(1); ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits>::construct(alloc, node, Node()); ++#else + alloc.construct(node, Node()); ++#endif + node->prev = 0; + node->next = first; + node->arc = arc; +@@ -617,7 +625,11 @@ namespace lemon { + } else { + last = 0; + } ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits>::destroy(alloc, node); ++#else + alloc.destroy(node); ++#endif + alloc.deallocate(node, 1); + } + +@@ -629,7 +641,11 @@ namespace lemon { + /// \brief Add a new arc behind the current path. + void addBack(const Arc& arc) { + Node *node = alloc.allocate(1); ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits>::construct(alloc, node, Node()); ++#else + alloc.construct(node, Node()); ++#endif + node->next = 0; + node->prev = last; + node->arc = arc; +@@ -650,7 +666,11 @@ namespace lemon { + } else { + first = 0; + } ++#if ((defined(_MSVC_LANG) && _MSVC_LANG >= 202002L) || __cplusplus >= 202002L) ++ std::allocator_traits>::destroy(alloc, node); ++#else + alloc.destroy(node); ++#endif + alloc.deallocate(node, 1); + } + diff --git a/recipes/coin-lemon/all/test_package/CMakeLists.txt b/recipes/coin-lemon/all/test_package/CMakeLists.txt index 5343530b3b2839..2230f5888e3970 100644 --- a/recipes/coin-lemon/all/test_package/CMakeLists.txt +++ b/recipes/coin-lemon/all/test_package/CMakeLists.txt @@ -1,8 +1,7 @@ -cmake_minimum_required(VERSION 3.8) +cmake_minimum_required(VERSION 3.1) project(test_package LANGUAGES CXX) find_package(LEMON CONFIG REQUIRED) add_executable(${PROJECT_NAME} test_package.cpp) target_link_libraries(${PROJECT_NAME} PRIVATE LEMON::LEMON) -target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_14) From 36ce780733aa968a913565eb9a2062436ed4da20 Mon Sep 17 00:00:00 2001 From: Martin Valgur Date: Sun, 17 Dec 2023 16:27:28 +0200 Subject: [PATCH 02/44] (#21654) mbedtls: add version 3.5.1 Generated and committed by [Conan Center Bot](https://github.com/qchateau/conan-center-bot) Find more updatable recipes in the [GitHub Pages](https://qchateau.github.io/conan-center-bot/) Co-authored-by: Quentin Chateau via Conan Center Bot --- recipes/mbedtls/all/conandata.yml | 3 +++ recipes/mbedtls/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/mbedtls/all/conandata.yml b/recipes/mbedtls/all/conandata.yml index ea482e12f5ff12..6768571f77c353 100644 --- a/recipes/mbedtls/all/conandata.yml +++ b/recipes/mbedtls/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "3.5.1": + url: "https://github.com/Mbed-TLS/mbedtls/archive/mbedtls-3.5.1.tar.gz" + sha256: "0da345cda55ec6f6d71afa84cfae55632a16ba0b8b4644f4d0e8a32c9d1117b0" "3.5.0": url: "https://github.com/Mbed-TLS/mbedtls/archive/refs/tags/v3.5.0.tar.gz" sha256: "bdee0e3e45bbf360541306cac0cc27e00402c7a46b9bdf2d24787d5107f008f2" diff --git a/recipes/mbedtls/config.yml b/recipes/mbedtls/config.yml index 004f51becf1f56..292e2461de0ef0 100644 --- a/recipes/mbedtls/config.yml +++ b/recipes/mbedtls/config.yml @@ -1,4 +1,6 @@ versions: + "3.5.1": + folder: all "3.5.0": folder: all "3.4.1": From d82ea7fafb6fb9c37ebd90c8442c4583c2170672 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 17 Dec 2023 23:47:54 +0900 Subject: [PATCH 03/44] (#21778) fast_float: add version 6.0.0 --- recipes/fast_float/all/conandata.yml | 3 +++ recipes/fast_float/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/fast_float/all/conandata.yml b/recipes/fast_float/all/conandata.yml index c4a46f9c557aaa..291d202302e376 100644 --- a/recipes/fast_float/all/conandata.yml +++ b/recipes/fast_float/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "6.0.0": + url: "https://github.com/fastfloat/fast_float/archive/v6.0.0.tar.gz" + sha256: "7e98671ef4cc7ed7f44b3b13f80156c8d2d9244fac55deace28bd05b0a2c7c8e" "5.3.0": url: "https://github.com/fastfloat/fast_float/archive/v5.3.0.tar.gz" sha256: "2f3bc50670455534dcaedc9dcd0517b71152f319d0cec8625f21c51d23eaf4b9" diff --git a/recipes/fast_float/config.yml b/recipes/fast_float/config.yml index 92a05dc14b869b..4e03f0967676dc 100644 --- a/recipes/fast_float/config.yml +++ b/recipes/fast_float/config.yml @@ -1,4 +1,6 @@ versions: + "6.0.0": + folder: all "5.3.0": folder: all "5.2.0": From 77acb72e142a7e5edefd6cf992d08ea7b062b2d1 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 00:08:36 +0900 Subject: [PATCH 04/44] (#21779) valijson: add version 1.0.2 --- recipes/valijson/all/conandata.yml | 3 +++ recipes/valijson/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/valijson/all/conandata.yml b/recipes/valijson/all/conandata.yml index 60d1924df19160..9c69d92d45720d 100644 --- a/recipes/valijson/all/conandata.yml +++ b/recipes/valijson/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.0.2": + url: "https://github.com/tristanpenman/valijson/archive/v1.0.2.tar.gz" + sha256: "35d86e54fc727f1265226434dc996e33000a570f833537a25c8b702b0b824431" "1.0.1": url: "https://github.com/tristanpenman/valijson/archive/v1.0.1.tar.gz" sha256: "b478b82af1db1d98c2ce47de4ad28647ec66800eaf704dba8b5e785cbca1d785" diff --git a/recipes/valijson/config.yml b/recipes/valijson/config.yml index 12f40d7975787a..2244034e468665 100644 --- a/recipes/valijson/config.yml +++ b/recipes/valijson/config.yml @@ -1,4 +1,6 @@ versions: + "1.0.2": + folder: "all" "1.0.1": folder: "all" "1.0": From ce85241908ad693a76133f01c7dc400749c7bd2f Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 02:59:31 +0900 Subject: [PATCH 05/44] (#21793) objectbox: add version 0.20.0 --- recipes/objectbox/all/conandata.yml | 9 +++++++++ recipes/objectbox/config.yml | 2 ++ 2 files changed, 11 insertions(+) diff --git a/recipes/objectbox/all/conandata.yml b/recipes/objectbox/all/conandata.yml index 6a064833981c31..b4ebf9918d7ba0 100644 --- a/recipes/objectbox/all/conandata.yml +++ b/recipes/objectbox/all/conandata.yml @@ -1,4 +1,9 @@ sources: + # The release tarball is invalid, so we need to get the tarball from the v0.20.0 commit. + # https://github.com/objectbox/objectbox-c/issues/38 + "0.20.0": + url: "https://github.com/objectbox/objectbox-c/archive/7e4a5a3ed94aa486acf0737b354726b493fd204c.tar.gz" + sha256: "cb6ec8b7ceaed7963ad582c4519d06ddc887294f0893b3f9bf89e7d0789ce216" "0.19.0": url: "https://github.com/objectbox/objectbox-c/archive/v0.19.0.tar.gz" sha256: "372520a744e9ae135a309ee834e4e936058abb0630fafd70a400546109089a89" @@ -12,6 +17,10 @@ sources: url: "https://github.com/objectbox/objectbox-c/archive/refs/tags/v0.17.0.tar.gz" sha256: "3b936b3352ae0c8ea3706cc0a1790d2714a415cdce16007c2caca367ead5af8d" patches: + "0.20.0": + - patch_file: "patches/0001-fix-cmake.patch" + patch_description: "add sync option, disable tests/examples, support max length of windows path" + patch_type: "conan" "0.19.0": - patch_file: "patches/0001-fix-cmake.patch" patch_description: "add sync option, disable tests/examples, support max length of windows path" diff --git a/recipes/objectbox/config.yml b/recipes/objectbox/config.yml index e6304cf62bb40c..2fdec99a504b8e 100644 --- a/recipes/objectbox/config.yml +++ b/recipes/objectbox/config.yml @@ -1,4 +1,6 @@ versions: + "0.20.0": + folder: all "0.19.0": folder: all "0.18.1": From 18907d7b238d7a89a1c4d33baa870acd62efd757 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 04:12:23 +0900 Subject: [PATCH 06/44] (#21794) scnlib: update fast_float/6.0.0 --- recipes/scnlib/all/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/scnlib/all/conanfile.py b/recipes/scnlib/all/conanfile.py index 1e79fd87d6da6e..3760576fb64381 100644 --- a/recipes/scnlib/all/conanfile.py +++ b/recipes/scnlib/all/conanfile.py @@ -55,7 +55,7 @@ def layout(self): def requirements(self): if Version(self.version) >= "1.0": - self.requires("fast_float/5.3.0") + self.requires("fast_float/6.0.0") def validate(self): if self.settings.compiler.get_safe("cppstd"): From a31bb632114a586985c65599ca0c942708de44f5 Mon Sep 17 00:00:00 2001 From: temap Date: Sun, 17 Dec 2023 21:38:19 +0200 Subject: [PATCH 07/44] (#21726) readline: fix build with shared ncurses --- recipes/readline/all/conanfile.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/recipes/readline/all/conanfile.py b/recipes/readline/all/conanfile.py index 52881bbd4d54a3..0c46be5b31c246 100644 --- a/recipes/readline/all/conanfile.py +++ b/recipes/readline/all/conanfile.py @@ -38,7 +38,7 @@ def requirements(self): if self.options.with_library == "termcap": self.requires("termcap/1.3.1") elif self.options.with_library == "curses": - self.requires("ncurses/6.4") + self.requires("ncurses/6.4", transitive_headers=True, transitive_libs=True) def configure(self): if self.options.shared: @@ -74,9 +74,10 @@ def generate(self): deps.generate() def _patch_sources(self): - replace_in_file(self, os.path.join(self.source_folder, "shlib", "Makefile.in"), "-o $@ $(SHARED_OBJ) $(SHLIB_LIBS)", + if self.options.with_library == "termcap": + replace_in_file(self, os.path.join(self.source_folder, "shlib", "Makefile.in"), "-o $@ $(SHARED_OBJ) $(SHLIB_LIBS)", "-o $@ $(SHARED_OBJ) $(SHLIB_LIBS) -ltermcap") - replace_in_file(self, os.path.join(self.source_folder, "Makefile.in"), "@TERMCAP_LIB@", "-ltermcap") + replace_in_file(self, os.path.join(self.source_folder, "Makefile.in"), "@TERMCAP_LIB@", "-ltermcap") def build(self): self._patch_sources() From 9c1c5d821a3b548f5061c41514bcce827c899a7f Mon Sep 17 00:00:00 2001 From: ericLemanissier Date: Sun, 17 Dec 2023 20:58:36 +0100 Subject: [PATCH 08/44] (#21773) wayland/all: bump deps * wayland/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) * wayland/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) * wayland/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) --- recipes/wayland/all/conanfile.py | 4 ++-- recipes/wayland/all/test_package/conanfile.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/wayland/all/conanfile.py b/recipes/wayland/all/conanfile.py index 7e341eb9914d74..d23bcb66ab8ee0 100644 --- a/recipes/wayland/all/conanfile.py +++ b/recipes/wayland/all/conanfile.py @@ -50,7 +50,7 @@ def requirements(self): if self.options.enable_libraries: self.requires("libffi/3.4.4") if self.options.enable_dtd_validation: - self.requires("libxml2/2.11.5") + self.requires("libxml2/2.12.2") self.requires("expat/2.5.0") def validate(self): @@ -60,7 +60,7 @@ def validate(self): def build_requirements(self): self.tool_requires("meson/1.3.0") if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str): - self.tool_requires("pkgconf/2.0.3") + self.tool_requires("pkgconf/2.1.0") if cross_building(self): self.tool_requires(str(self.ref)) diff --git a/recipes/wayland/all/test_package/conanfile.py b/recipes/wayland/all/test_package/conanfile.py index e9a83534cede73..ad22b7b8367de5 100644 --- a/recipes/wayland/all/test_package/conanfile.py +++ b/recipes/wayland/all/test_package/conanfile.py @@ -21,7 +21,7 @@ def requirements(self): def build_requirements(self): self.tool_requires(self.tested_reference_str) if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str): - self.tool_requires("pkgconf/2.0.3") + self.tool_requires("pkgconf/2.1.0") def layout(self): cmake_layout(self) From d76c639ae22de3d1dde2a30a0dadc441bf400783 Mon Sep 17 00:00:00 2001 From: ericLemanissier Date: Sun, 17 Dec 2023 21:18:23 +0100 Subject: [PATCH 09/44] (#21777) libdrm/all: bump deps * libdrm/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericlemanissier.github.io/conan-center-index-bump-deps/) * libdrm/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericlemanissier.github.io/conan-center-index-bump-deps/) * libdrm/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) * libdrm/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) --- recipes/libdrm/all/conanfile.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/libdrm/all/conanfile.py b/recipes/libdrm/all/conanfile.py index 9fc352be868112..af355e6b5b875c 100644 --- a/recipes/libdrm/all/conanfile.py +++ b/recipes/libdrm/all/conanfile.py @@ -81,16 +81,16 @@ def requirements(self): if self.options.intel: self.requires("libpciaccess/0.17") if self.settings.os in ["Linux", "FreeBSD"]: - self.requires("linux-headers-generic/5.15.128") + self.requires("linux-headers-generic/6.5.9") def validate(self): if self.settings.os not in ["Linux", "FreeBSD"]: raise ConanInvalidConfiguration("libdrm supports only Linux or FreeBSD") def build_requirements(self): - self.tool_requires("meson/1.2.2") + self.tool_requires("meson/1.3.0") if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str): - self.tool_requires("pkgconf/2.0.3") + self.tool_requires("pkgconf/2.1.0") def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) From 96163987d7e6a9a97c7b2b1a27d72969e6e7032c Mon Sep 17 00:00:00 2001 From: Nicholas Frechette Date: Sun, 17 Dec 2023 16:19:35 -0500 Subject: [PATCH 10/44] (#21797) rtm: add version 2.2.1 --- recipes/rtm/all/conandata.yml | 3 +++ recipes/rtm/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/rtm/all/conandata.yml b/recipes/rtm/all/conandata.yml index 97395fe668a679..41cc19013d6fa7 100644 --- a/recipes/rtm/all/conandata.yml +++ b/recipes/rtm/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "2.2.1": + url: "https://github.com/nfrechette/rtm/archive/v2.2.1.tar.gz" + sha256: "678989368bc9859138db00719ad9e2f82b51acb0d8da6905426e4134223cee2a" "2.2.0": url: "https://github.com/nfrechette/rtm/archive/v2.2.0.tar.gz" sha256: "e627c46de1895b78eee63612ce4e5ade3af28e040edab6ec6f6521366b4e8b9b" diff --git a/recipes/rtm/config.yml b/recipes/rtm/config.yml index 43718a82a0e636..3a396aa92fa443 100644 --- a/recipes/rtm/config.yml +++ b/recipes/rtm/config.yml @@ -1,4 +1,6 @@ versions: + "2.2.1": + folder: "all" "2.2.0": folder: "all" "2.1.5": From 6d555fbefb71d18005ef93505c3abcf2b3a3af7f Mon Sep 17 00:00:00 2001 From: ericLemanissier Date: Mon, 18 Dec 2023 01:08:09 +0100 Subject: [PATCH 11/44] (#21774) wayland-protocols/all: bump deps * wayland-protocols/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericlemanissier.github.io/conan-center-index-bump-deps/) * wayland-protocols/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) * wayland-protocols/all: bump deps Generated and committed by [Conan Center Bump Deps](https://github.com/ericLemanissier/conan-center-index-bump-deps) Find more updatable recipes in the [GitHub Pages](https://ericLemanissier.github.io/conan-center-index-bump-deps/) --- recipes/wayland-protocols/all/conanfile.py | 2 +- recipes/wayland-protocols/all/test_package/conanfile.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/wayland-protocols/all/conanfile.py b/recipes/wayland-protocols/all/conanfile.py index 5888f7b0c3ad17..ad20a22df526ec 100644 --- a/recipes/wayland-protocols/all/conanfile.py +++ b/recipes/wayland-protocols/all/conanfile.py @@ -27,7 +27,7 @@ def validate(self): raise ConanInvalidConfiguration(f"{self.ref} only supports Linux") def build_requirements(self): - self.tool_requires("meson/1.2.2") + self.tool_requires("meson/1.3.0") def layout(self): basic_layout(self, src_folder="src") diff --git a/recipes/wayland-protocols/all/test_package/conanfile.py b/recipes/wayland-protocols/all/test_package/conanfile.py index 6004f71f932671..d6a32dbe0d2d52 100644 --- a/recipes/wayland-protocols/all/test_package/conanfile.py +++ b/recipes/wayland-protocols/all/test_package/conanfile.py @@ -20,9 +20,9 @@ def requirements(self): self.requires("wayland/1.22.0") def build_requirements(self): - self.tool_requires("meson/1.2.2") + self.tool_requires("meson/1.3.0") if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str): - self.tool_requires("pkgconf/2.0.3") + self.tool_requires("pkgconf/2.1.0") self.tool_requires("wayland/1.22.0") def layout(self): From c38451acaa0a234a0f8ad2a1de137e3d90e4e557 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 10:30:48 +0900 Subject: [PATCH 12/44] (#21801) ssp: update fast_float/6.0.0 --- recipes/ssp/all/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/ssp/all/conanfile.py b/recipes/ssp/all/conanfile.py index 4df3741e9cacb8..16b88f523f6b22 100644 --- a/recipes/ssp/all/conanfile.py +++ b/recipes/ssp/all/conanfile.py @@ -37,7 +37,7 @@ def layout(self): basic_layout(self, src_folder="src") def requirements(self): - self.requires("fast_float/5.3.0") + self.requires("fast_float/6.0.0") def package_id(self): self.info.clear() From 00f832b93d45eaf87b74db8a87887bb25ae6e7cb Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 11:34:06 +0900 Subject: [PATCH 13/44] (#21800) highfive: update hdf5/1.14.3 --- recipes/highfive/all/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/highfive/all/conanfile.py b/recipes/highfive/all/conanfile.py index d86d1301d6ab80..0d48c634c34c52 100644 --- a/recipes/highfive/all/conanfile.py +++ b/recipes/highfive/all/conanfile.py @@ -40,7 +40,7 @@ def requirements(self): if Version(self.version) < "2.5.1": self.requires("hdf5/1.14.1") else: - self.requires("hdf5/1.14.2") + self.requires("hdf5/1.14.3") if self.options.with_boost: self.requires("boost/1.83.0") if self.options.with_eigen: From f96e079bf910577d829166d0c01c92f719362ec8 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 12:27:42 +0900 Subject: [PATCH 14/44] (#21799) c4core: update fast_float/6.0.0 --- recipes/c4core/all/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/c4core/all/conanfile.py b/recipes/c4core/all/conanfile.py index 4caf7065d65d35..d0a1927baa811b 100644 --- a/recipes/c4core/all/conanfile.py +++ b/recipes/c4core/all/conanfile.py @@ -47,7 +47,7 @@ def layout(self): def requirements(self): if self.options.with_fast_float: - self.requires("fast_float/5.3.0", transitive_headers=True) + self.requires("fast_float/6.0.0", transitive_headers=True) def validate(self): if self.settings.compiler.get_safe("cppstd"): From ef9fc72cf680d658a7ca4553fda38207cd12a67f Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 13:58:34 +0900 Subject: [PATCH 15/44] (#21780) jsoncons: add version 0.173.0 --- recipes/jsoncons/all/conandata.yml | 3 +++ recipes/jsoncons/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/jsoncons/all/conandata.yml b/recipes/jsoncons/all/conandata.yml index 612bdd0c9980f7..b5e73a3ea8b918 100644 --- a/recipes/jsoncons/all/conandata.yml +++ b/recipes/jsoncons/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.173.0": + url: "https://github.com/danielaparker/jsoncons/archive/refs/tags/v0.173.0.tar.gz" + sha256: "61abb5e4fbdb3ef7601b4fdc263bc806785609c47b4d7e81f8c3110bd53a9282" "0.172.1": url: "https://github.com/danielaparker/jsoncons/archive/refs/tags/v0.172.1.tar.gz" sha256: "710ac7656373a118cee4ad10ecb2225d331ca5b4706a4add3a2b482b7fceef1f" diff --git a/recipes/jsoncons/config.yml b/recipes/jsoncons/config.yml index d03c26c731d887..e0e954ddc8022c 100644 --- a/recipes/jsoncons/config.yml +++ b/recipes/jsoncons/config.yml @@ -1,4 +1,6 @@ versions: + "0.173.0": + folder: "all" "0.172.1": folder: "all" "0.172.0": From 52a7a6cc7f5dd53c74f7fa690b7939a88efa6d31 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 15:08:16 +0900 Subject: [PATCH 16/44] (#21701) asio: add version 1.29.0 --- recipes/asio/all/conandata.yml | 3 +++ recipes/asio/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/asio/all/conandata.yml b/recipes/asio/all/conandata.yml index 9f0189b8cd3f0c..5d0a18b1c54ced 100644 --- a/recipes/asio/all/conandata.yml +++ b/recipes/asio/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.29.0": + url: "https://github.com/chriskohlhoff/asio/archive/asio-1-29-0.tar.gz" + sha256: "44305859b4e6664dbbf853c1ef8ca0259d694f033753ae309fcb2534ca20f721" "1.28.2": url: "https://github.com/chriskohlhoff/asio/archive/asio-1-28-2.tar.gz" sha256: "5705a0e403017eba276625107160498518838064a6dd7fd8b00b2e30c0ffbdee" diff --git a/recipes/asio/config.yml b/recipes/asio/config.yml index 7bf4410d24d456..5385ba92196448 100644 --- a/recipes/asio/config.yml +++ b/recipes/asio/config.yml @@ -1,4 +1,6 @@ versions: + "1.29.0": + folder: all "1.28.2": folder: all "1.28.1": From 834a741a3206910ca55b648659c14803d354b4b9 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Dec 2023 15:22:18 +0900 Subject: [PATCH 17/44] (#21802) hictk: update dependencies --- recipes/hictk/all/conanfile.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/hictk/all/conanfile.py b/recipes/hictk/all/conanfile.py index 1951fe8bdc793f..7e609444e89da8 100644 --- a/recipes/hictk/all/conanfile.py +++ b/recipes/hictk/all/conanfile.py @@ -40,12 +40,12 @@ def layout(self): def requirements(self): self.requires("bshoshany-thread-pool/3.5.0", transitive_headers=True) - self.requires("fast_float/5.3.0", transitive_headers=True) + self.requires("fast_float/6.0.0", transitive_headers=True) if self.options.with_eigen: self.requires("eigen/3.4.0", transitive_headers=True) self.requires("fmt/10.1.1", transitive_headers=True) - self.requires("hdf5/1.14.1", transitive_headers=True) - self.requires("highfive/2.7.1", transitive_headers=True) + self.requires("hdf5/1.14.3", transitive_headers=True) + self.requires("highfive/2.8.0", transitive_headers=True) self.requires("libdeflate/1.19", transitive_headers=True) self.requires("parallel-hashmap/1.37", transitive_headers=True) self.requires("span-lite/0.10.3", transitive_headers=True) From 5ff3625b6cf3940055fa98e7c49e5648ab1727e2 Mon Sep 17 00:00:00 2001 From: Martin Valgur Date: Mon, 18 Dec 2023 09:43:43 +0200 Subject: [PATCH 18/44] (#18681) libelfin: migrate to Conan v2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * libelfin: migrate to Conan v2 * libelfin: restore VirtualRunEnv in test_package * libelfin: fix v1 build * libelfin: fix patched sources not being used * libelfin: add legacy pkg_config names --------- Co-authored-by: Francisco Ramírez --- recipes/libelfin/all/CMakeLists.txt | 51 +++++------ recipes/libelfin/all/conandata.yml | 5 +- recipes/libelfin/all/conanfile.py | 84 +++++++++++-------- .../libelfin/all/test_package/CMakeLists.txt | 7 +- .../libelfin/all/test_package/conanfile.py | 25 ++++-- .../all/test_v1_package/CMakeLists.txt | 8 ++ .../libelfin/all/test_v1_package/conanfile.py | 19 +++++ 7 files changed, 122 insertions(+), 77 deletions(-) create mode 100644 recipes/libelfin/all/test_v1_package/CMakeLists.txt create mode 100644 recipes/libelfin/all/test_v1_package/conanfile.py diff --git a/recipes/libelfin/all/CMakeLists.txt b/recipes/libelfin/all/CMakeLists.txt index eb2aa34b81ac86..98010e37969935 100644 --- a/recipes/libelfin/all/CMakeLists.txt +++ b/recipes/libelfin/all/CMakeLists.txt @@ -1,9 +1,6 @@ -cmake_minimum_required(VERSION 3.1) +cmake_minimum_required(VERSION 3.12) project(libelfin CXX) -include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) -conan_basic_setup() - if(NOT CMAKE_CXX_STANDARD) set(CMAKE_CXX_STANDARD 11) endif() @@ -11,19 +8,21 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) find_package(PythonInterp 3 REQUIRED) -file(GLOB_RECURSE elf_sources source_subfolder/elf/*.cc) +set(src ${CMAKE_CURRENT_LIST_DIR}) + +file(GLOB_RECURSE elf_sources ${src}/elf/*.cc) set(elf_headers - source_subfolder/elf/common.hh - source_subfolder/elf/data.hh - source_subfolder/elf/elf++.hh) -file(GLOB_RECURSE dwarf_sources source_subfolder/dwarf/*.cc) + ${src}/elf/common.hh + ${src}/elf/data.hh + ${src}/elf/elf++.hh) +file(GLOB_RECURSE dwarf_sources ${src}/dwarf/*.cc) set(dwarf_headers - source_subfolder/dwarf/data.hh - source_subfolder/dwarf/dwarf++.hh - source_subfolder/dwarf/small_vector.hh) + ${src}/dwarf/data.hh + ${src}/dwarf/dwarf++.hh + ${src}/dwarf/small_vector.hh) add_custom_command( - OUTPUT source_subfolder/elf/to_string.cc + OUTPUT ${src}/elf/to_string.cc COMMAND ${CMAKE_COMMAND} -E echo '// Automatically generated' > to_string.cc COMMAND ${CMAKE_COMMAND} -E echo '// DO NOT EDIT' >> to_string.cc COMMAND ${CMAKE_COMMAND} -E echo >> to_string.cc @@ -34,11 +33,11 @@ add_custom_command( COMMAND ${CMAKE_COMMAND} -E echo >> to_string.cc COMMAND ${PYTHON_EXECUTABLE} enum-print.py -u --hex --no-type --mask shf --mask pf -x loos -x hios -x loproc -x hiproc < data.hh >> to_string.cc COMMAND ${CMAKE_COMMAND} -E echo 'ELFPP_END_NAMESPACE' >> to_string.cc - DEPENDS source_subfolder/elf/enum-print.py source_subfolder/elf/data.hh - WORKING_DIRECTORY source_subfolder/elf) + DEPENDS ${src}/elf/enum-print.py ${src}/elf/data.hh + WORKING_DIRECTORY ${src}/elf) add_custom_command( - OUTPUT source_subfolder/dwarf/to_string.cc + OUTPUT ${src}/dwarf/to_string.cc COMMAND ${CMAKE_COMMAND} -E echo '// Automatically generated' > to_string.cc COMMAND ${CMAKE_COMMAND} -E echo '// DO NOT EDIT' >> to_string.cc COMMAND ${CMAKE_COMMAND} -E echo >> to_string.cc @@ -49,29 +48,23 @@ add_custom_command( COMMAND ${PYTHON_EXECUTABLE} ../elf/enum-print.py < dwarf++.hh >> to_string.cc COMMAND ${PYTHON_EXECUTABLE} ../elf/enum-print.py -s _ -u --hex -x hi_user -x lo_user < data.hh >> to_string.cc COMMAND ${CMAKE_COMMAND} -E echo 'DWARFPP_END_NAMESPACE' >> to_string.cc - DEPENDS source_subfolder/elf/enum-print.py source_subfolder/dwarf/data.hh - WORKING_DIRECTORY source_subfolder/dwarf) + DEPENDS ${src}/elf/enum-print.py ${src}/dwarf/data.hh + WORKING_DIRECTORY ${src}/dwarf) -add_library(elf++ ${elf_sources} source_subfolder/elf/to_string.cc) +add_library(elf++ ${elf_sources} ${src}/elf/to_string.cc) set_target_properties(elf++ PROPERTIES PUBLIC_HEADER "${elf_headers}" - VERSION ${CONAN_PACKAGE_VERSION}) + VERSION ${libelfin_VERSION}) -add_library(dwarf++ ${dwarf_sources} source_subfolder/dwarf/to_string.cc) +add_library(dwarf++ ${dwarf_sources} ${src}/dwarf/to_string.cc) set_target_properties(dwarf++ PROPERTIES PUBLIC_HEADER "${dwarf_headers}" - VERSION ${CONAN_PACKAGE_VERSION}) + VERSION ${libelfin_VERSION}) include(GNUInstallDirs) install(TARGETS elf++ - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libelfin/elf) install(TARGETS dwarf++ - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libelfin/dwarf) -install(FILES source_subfolder/LICENSE DESTINATION licenses) +install(FILES ${src}/LICENSE DESTINATION licenses) diff --git a/recipes/libelfin/all/conandata.yml b/recipes/libelfin/all/conandata.yml index e1b6341e831851..c74c8954691d87 100644 --- a/recipes/libelfin/all/conandata.yml +++ b/recipes/libelfin/all/conandata.yml @@ -5,7 +5,6 @@ sources: patches: "0.3": - patch_file: "patches/commit-9d0db16d0a0b3c4f8aaa60a3e4dab295df34b6b2.patch" - base_path: "source_subfolder" - patch_file: "patches/const-fix.patch" - base_path: "source_subfolder" - # patch_source: https://github.com/aclements/libelfin/pull/54 + patch_source: "https://github.com/aclements/libelfin/pull/54" + patch_type: "bugfix" diff --git a/recipes/libelfin/all/conanfile.py b/recipes/libelfin/all/conanfile.py index d53acbbfd0abe4..852c1494c8a650 100644 --- a/recipes/libelfin/all/conanfile.py +++ b/recipes/libelfin/all/conanfile.py @@ -1,64 +1,82 @@ -import os -from conans import ConanFile, CMake, tools -from conans.errors import ConanInvalidConfiguration +from conan import ConanFile +from conan.errors import ConanInvalidConfiguration +from conan.tools.build import check_min_cppstd +from conan.tools.cmake import CMake, CMakeToolchain, cmake_layout +from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get +from conan.tools.microsoft import is_msvc + +required_conan_version = ">=1.53.0" class LibelfinConan(ConanFile): name = "libelfin" description = "C++11 library for reading ELF binaries and DWARFv4 debug information" + license = "MIT" url = "https://github.com/conan-io/conan-center-index" homepage = "https://github.com/aclements/libelfin" - license = "MIT" - topics = ("conan", "elf", "dwarf", "libelfin") + topics = ("elf", "dwarf") + package_type = "library" settings = "os", "arch", "compiler", "build_type" - options = {"shared": [True, False], "fPIC": [True, False]} - default_options = {"shared": False, "fPIC": True} - - exports_sources = "CMakeLists.txt", "patches/*" - generators = "cmake" + options = { + "shared": [True, False], + "fPIC": [True, False], + } + default_options = { + "shared": False, + "fPIC": True, + } - _cmake = None - _source_subfolder = "source_subfolder" + def export_sources(self): + copy(self, "CMakeLists.txt", src=self.recipe_folder, dst=self.export_sources_folder) + export_conandata_patches(self) def config_options(self): if self.settings.os == "Windows": del self.options.fPIC def configure(self): - if self.settings.compiler == "Visual Studio": - raise ConanInvalidConfiguration("libelfin doesn't support compiler: {} on OS: {}.". - format(self.settings.compiler, self.settings.os)) if self.options.shared: - del self.options.fPIC - if self.settings.compiler.cppstd: - tools.check_min_cppstd(self, "11") + self.options.rm_safe("fPIC") + + def layout(self): + cmake_layout(self, src_folder="src") + + def validate(self): + if self.settings.compiler.get_safe("cppstd"): + check_min_cppstd(self, 11) + if is_msvc(self): + raise ConanInvalidConfiguration(f"libelfin doesn't support compiler: {self.settings.compiler}.") def source(self): - tools.get(**self.conan_data["sources"][self.version]) - extracted_dir = self.name + "-" + self.version - os.rename(extracted_dir, self._source_subfolder) + get(self, **self.conan_data["sources"][self.version], strip_root=True) - def _configure_cmake(self): - if self._cmake: - return self._cmake - self._cmake = CMake(self) - self._cmake.configure() - return self._cmake + def generate(self): + tc = CMakeToolchain(self) + tc.variables["libelfin_VERSION"] = self.version + tc.generate() + + def _patch_sources(self): + apply_conandata_patches(self) + copy(self, "CMakeLists.txt", src=self.export_sources_folder, dst=self.source_folder) def build(self): - for patch in self.conan_data.get("patches", {}).get(self.version, []): - tools.patch(**patch) - cmake = self._configure_cmake() + self._patch_sources() + cmake = CMake(self) + cmake.configure() cmake.build() def package(self): - cmake = self._configure_cmake() + cmake = CMake(self) cmake.install() def package_info(self): - self.cpp_info.components["libelf++"].names["pkg_config"] = "libelf++" + self.cpp_info.components["libelf++"].set_property("pkg_config_name", "libelf++") self.cpp_info.components["libelf++"].libs = ["elf++"] - self.cpp_info.components["libdwarf++"].names["pkg_config"] = "libdwarf++" + self.cpp_info.components["libdwarf++"].set_property("pkg_config_name", "libdwarf++") self.cpp_info.components["libdwarf++"].libs = ["dwarf++"] self.cpp_info.components["libdwarf++"].requires = ["libelf++"] + + # TODO: Legacy, to be removed on Conan 2.0 + self.cpp_info.components["libelf++"].names["pkg_config"] = "libelf++" + self.cpp_info.components["libdwarf++"].names["pkg_config"] = "libdwarf++" diff --git a/recipes/libelfin/all/test_package/CMakeLists.txt b/recipes/libelfin/all/test_package/CMakeLists.txt index 36df85d833b7f2..3d1d60bfa18346 100644 --- a/recipes/libelfin/all/test_package/CMakeLists.txt +++ b/recipes/libelfin/all/test_package/CMakeLists.txt @@ -1,11 +1,10 @@ -cmake_minimum_required(VERSION 3.1) +cmake_minimum_required(VERSION 3.15) project(test_package CXX) -include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) -conan_basic_setup() +find_package(libelfin REQUIRED CONFIG) add_executable(${PROJECT_NAME} test_package.cpp) -target_link_libraries(${PROJECT_NAME} ${CONAN_LIBS}) +target_link_libraries(${PROJECT_NAME} PRIVATE libelfin::libelfin) set_target_properties(${PROJECT_NAME} PROPERTIES CXX_STANDARD 11 CXX_STANDARD_REQUIRED ON) diff --git a/recipes/libelfin/all/test_package/conanfile.py b/recipes/libelfin/all/test_package/conanfile.py index e2a48eb337ec0b..c2a19b9121acf4 100644 --- a/recipes/libelfin/all/test_package/conanfile.py +++ b/recipes/libelfin/all/test_package/conanfile.py @@ -1,10 +1,20 @@ -from conans import ConanFile, CMake, tools import os +from conan import ConanFile +from conan.tools.build import can_run +from conan.tools.cmake import cmake_layout, CMake + class TestPackageConan(ConanFile): - settings = "os", "compiler", "build_type", "arch" - generators = "cmake" + settings = "os", "arch", "compiler", "build_type" + generators = "CMakeDeps", "CMakeToolchain", "VirtualRunEnv" + test_type = "explicit" + + def requirements(self): + self.requires(self.tested_reference_str) + + def layout(self): + cmake_layout(self) def build(self): cmake = CMake(self) @@ -12,8 +22,7 @@ def build(self): cmake.build() def test(self): - if tools.cross_building(self.settings): - return - bin_path = os.path.join("bin", "test_package") - elf_path = os.path.join(self.source_folder, "hello") - self.run("{} {}".format(bin_path, elf_path), run_environment=True) + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindir, "test_package") + elf_path = os.path.join(self.source_folder, "hello") + self.run(f"{bin_path} {elf_path}", env="conanrun") diff --git a/recipes/libelfin/all/test_v1_package/CMakeLists.txt b/recipes/libelfin/all/test_v1_package/CMakeLists.txt new file mode 100644 index 00000000000000..91630d79f4abb3 --- /dev/null +++ b/recipes/libelfin/all/test_v1_package/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION 3.15) +project(test_package) + +include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) +conan_basic_setup(TARGETS) + +add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../test_package/ + ${CMAKE_CURRENT_BINARY_DIR}/test_package/) diff --git a/recipes/libelfin/all/test_v1_package/conanfile.py b/recipes/libelfin/all/test_v1_package/conanfile.py new file mode 100644 index 00000000000000..fe9ecdf1845cc5 --- /dev/null +++ b/recipes/libelfin/all/test_v1_package/conanfile.py @@ -0,0 +1,19 @@ +from conans import ConanFile, CMake, tools +import os + + +class TestPackageConan(ConanFile): + settings = "os", "compiler", "build_type", "arch" + generators = "cmake", "cmake_find_package_multi" + + def build(self): + cmake = CMake(self) + cmake.configure() + cmake.build() + + def test(self): + if tools.cross_building(self.settings): + return + bin_path = os.path.join("bin", "test_package") + elf_path = os.path.join(self.source_folder, os.pardir, "test_package", "hello") + self.run(f"{bin_path} {elf_path}", run_environment=True) From 2648f71a901b4477dc6df28c05ba9e46ae7c3ce9 Mon Sep 17 00:00:00 2001 From: Theo Martin Date: Mon, 18 Dec 2023 15:27:29 +0100 Subject: [PATCH 19/44] (#20326) update kickcat to v2.0-rc1 Co-authored-by: Theo --- recipes/kickcat/all/conandata.yml | 7 +++++-- recipes/kickcat/config.yml | 2 ++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/recipes/kickcat/all/conandata.yml b/recipes/kickcat/all/conandata.yml index f0a390ebfac916..26db9ceb70f4ed 100644 --- a/recipes/kickcat/all/conandata.yml +++ b/recipes/kickcat/all/conandata.yml @@ -1,7 +1,10 @@ sources: + "v2.0-rc1": + url: "https://github.com/leducp/KickCAT/archive/refs/tags/v2.0-rc1.zip" + sha256: "3feec08fd2718d286a041cb83266479840f7739c1203b4450375ea1f59f234c8" "v2-alpha4": - url: "https://github.com/Siviuze/KickCAT/archive/refs/tags/v2-alpha4.zip" + url: "https://github.com/leducp/KickCAT/archive/refs/tags/v2-alpha4.zip" sha256: "483a374f77808cb35823652eb37c5ab864a3f12a1c3a957d3315c319ca0ec528" "v2-alpha3": - url: "https://github.com/Siviuze/KickCAT/archive/refs/tags/v2-alpha3.zip" + url: "https://github.com/leducp/KickCAT/archive/refs/tags/v2-alpha3.zip" sha256: "dadd8518c3232162b7455fdcd837578120ece5a42c3bc2701147a68cbee60da4" diff --git a/recipes/kickcat/config.yml b/recipes/kickcat/config.yml index e031f21fd364ad..8eaf698f741876 100644 --- a/recipes/kickcat/config.yml +++ b/recipes/kickcat/config.yml @@ -1,4 +1,6 @@ versions: + "v2.0-rc1": + folder: all "v2-alpha4": folder: all "v2-alpha3": From 046196b1fc55bed67ebcb37cc9ccbbff8e6622a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Linus=20Kl=C3=B6ckner?= Date: Mon, 18 Dec 2023 16:08:21 +0100 Subject: [PATCH 20/44] (#21019) whisper-cpp: add version 1.4.3 * whisper-cpp: add version 1.4.3 * whisper-cpp: add options for metal * whisper-cpp: delete metal options for older versions --- recipes/whisper-cpp/all/conandata.yml | 3 +++ recipes/whisper-cpp/all/conanfile.py | 18 +++++++++++++----- recipes/whisper-cpp/config.yml | 2 ++ 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/recipes/whisper-cpp/all/conandata.yml b/recipes/whisper-cpp/all/conandata.yml index 8d22eb9400cecf..7514fc59eab2f0 100644 --- a/recipes/whisper-cpp/all/conandata.yml +++ b/recipes/whisper-cpp/all/conandata.yml @@ -5,6 +5,9 @@ sources: "1.4.2": url: "https://github.com/ggerganov/whisper.cpp/archive/a5defbc1b98bea0f070331ce1e8b62d947b0443d.tar.gz" sha256: "6dd0690b084269b22b1b749103b047e6d45d7b910d7bc9587085ce057dca5431" + "1.4.3": + url: "https://github.com/ggerganov/whisper.cpp/archive/6a5d195109994b865e1c92a88258ac182399eb64.tar.gz" + sha256: "5b6693c314ae6fb362c13d02357a18099ab0ba03abc07c21f2e8c32b42b7b07e" patches: "1.4.2": - patch_file: "patches/1.4.2-0001-find_package_openblas.patch" diff --git a/recipes/whisper-cpp/all/conanfile.py b/recipes/whisper-cpp/all/conanfile.py index bb939dac3e50eb..629ef7bb98046c 100644 --- a/recipes/whisper-cpp/all/conanfile.py +++ b/recipes/whisper-cpp/all/conanfile.py @@ -4,7 +4,7 @@ from conan.errors import ConanInvalidConfiguration from conan.tools.apple import is_apple_os from conan.tools.build import check_min_cppstd -from conan.tools.cmake import CMake, CMakeToolchain, CMakeDeps, cmake_layout +from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout from conan.tools.files import copy, get, apply_conandata_patches, export_conandata_patches from conan.tools.scm import Version @@ -22,13 +22,13 @@ class WhisperCppConan(ConanFile): options = {"shared": [True, False], "fPIC": [True, False], "sanitize_thread": [True, False], "sanitize_address": [True, False], "sanitize_undefined": [True, False], "no_avx": [True, False], "no_avx2": [True, False], "no_fma": [True, False], "no_f16c": [True, False], - "no_accelerate": [True, False], "with_coreml": [True, False], "coreml_allow_fallback": [True, False], - "with_blas": [True, False]} + "no_accelerate": [True, False], "metal": [True, False], "metal_ndebug": [True, False], + "with_coreml": [True, False], "coreml_allow_fallback": [True, False], "with_blas": [True, False]} default_options = {"shared": False, "fPIC": True, "sanitize_thread": False, "sanitize_address": False, "sanitize_undefined": False, "no_avx": False, "no_avx2": False, "no_fma": False, "no_f16c": False, - "no_accelerate": False, "with_coreml": False, "coreml_allow_fallback": False, - "with_blas": False} + "no_accelerate": False, "metal": False, "metal_ndebug": False, + "with_coreml": False, "coreml_allow_fallback": False, "with_blas": False} package_type = "library" @property @@ -58,6 +58,10 @@ def config_options(self): if self.settings.os == "Windows": del self.options.fPIC + if Version(self.version) < "1.4.3": + del self.options.metal + del self.options.metal_ndebug + def configure(self): if self.options.shared: self.options.rm_safe("fPIC") @@ -117,6 +121,10 @@ def generate(self): if is_apple_os(self): if self.options.no_accelerate: tc.variables["WHISPER_NO_ACCELERATE"] = True + if not self.options.get_safe("metal"): + tc.variables["WHISPER_METAL"] = False + if self.options.get_safe("metal_ndebug"): + tc.variables["WHISPER_METAL_NDEBUG"] = True if self.options.with_coreml: tc.variables["WHISPER_COREML"] = True if self.options.coreml_allow_fallback: diff --git a/recipes/whisper-cpp/config.yml b/recipes/whisper-cpp/config.yml index df53037008d386..ab276865b774af 100644 --- a/recipes/whisper-cpp/config.yml +++ b/recipes/whisper-cpp/config.yml @@ -3,3 +3,5 @@ versions: folder: "all" "1.4.2": folder: "all" + "1.4.3": + folder: "all" From 5f86889a74f87843bad3877043eab87bab3ba7e6 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 01:48:45 +0900 Subject: [PATCH 21/44] (#21786) roaring: add version 2.1.0 --- recipes/roaring/all/conandata.yml | 3 +++ recipes/roaring/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/roaring/all/conandata.yml b/recipes/roaring/all/conandata.yml index d4d90409ecc54e..ec4f98fdaba4db 100644 --- a/recipes/roaring/all/conandata.yml +++ b/recipes/roaring/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "2.1.0": + url: "https://github.com/RoaringBitmap/CRoaring/archive/refs/tags/v2.1.0.tar.gz" + sha256: "75e2c106bf3c035f92560017b56b01602744b643a3fef08d69255c138c6c6f5c" "2.0.4": url: "https://github.com/RoaringBitmap/CRoaring/archive/refs/tags/v2.0.4.tar.gz" sha256: "3c962c196ba28abf2639067f2e2fd25879744ba98152a4e0e74556ca515eda33" diff --git a/recipes/roaring/config.yml b/recipes/roaring/config.yml index e36bb7126c070e..8cf27c6a95cb16 100644 --- a/recipes/roaring/config.yml +++ b/recipes/roaring/config.yml @@ -1,4 +1,6 @@ versions: + "2.1.0": + folder: all "2.0.4": folder: all "2.0.2": From d1da991b042542b82ebfc4b7bd68642e47827a08 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 05:08:04 +0900 Subject: [PATCH 22/44] (#21677) bzip3: add version 1.4.0 --- recipes/bzip3/all/conandata.yml | 3 +++ recipes/bzip3/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/bzip3/all/conandata.yml b/recipes/bzip3/all/conandata.yml index 464608d61d50ae..47c1259bdc988b 100644 --- a/recipes/bzip3/all/conandata.yml +++ b/recipes/bzip3/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.4.0": + url: "https://github.com/kspalaiologos/bzip3/releases/download/1.4.0/bzip3-1.4.0.tar.xz" + sha256: "516489784351abe027dc8b4bcad74d12937c5668d317e27de8c5cebc4d7884dc" "1.3.2": url: "https://github.com/kspalaiologos/bzip3/releases/download/1.3.2/bzip3-1.3.2.tar.xz" sha256: "b1d04b8b1b89a3c490cf2b89ea8cee1281584b07f25276fcfd8d40ec2c488e94" diff --git a/recipes/bzip3/config.yml b/recipes/bzip3/config.yml index b6e0a161eb7bfe..75a3fe45d3d112 100644 --- a/recipes/bzip3/config.yml +++ b/recipes/bzip3/config.yml @@ -1,4 +1,6 @@ versions: + "1.4.0": + folder: all "1.3.2": folder: all "1.3.1": From 11cda087941bfb6c83f1b5e91fe4c44adf52eb36 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 05:28:26 +0900 Subject: [PATCH 23/44] (#21809) quill: add version 3.6.0 --- recipes/quill/all/conandata.yml | 3 +++ recipes/quill/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/quill/all/conandata.yml b/recipes/quill/all/conandata.yml index 2eb1a4d7bd925d..b6e754cda2c2e7 100644 --- a/recipes/quill/all/conandata.yml +++ b/recipes/quill/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "3.6.0": + url: "https://github.com/odygrd/quill/archive/v3.6.0.tar.gz" + sha256: "ba9dc3df262f2e65c57904580cc8407eba9a462001340c17bab7ae1dccddb4bd" "3.5.1": url: "https://github.com/odygrd/quill/archive/v3.5.1.tar.gz" sha256: "9fa4ebe594c66ce2a409630c304724fa7a2ada0d842ba9c9aaf05f0a90b461f9" diff --git a/recipes/quill/config.yml b/recipes/quill/config.yml index bca90bfdc7c02f..3aa843c1a29c68 100644 --- a/recipes/quill/config.yml +++ b/recipes/quill/config.yml @@ -1,4 +1,6 @@ versions: + "3.6.0": + folder: "all" "3.5.1": folder: "all" "3.5.0": From 92f84dcccb05d39ec83e38e6787fab070266816c Mon Sep 17 00:00:00 2001 From: Conan Center Index Bot <54393557+conan-center-bot@users.noreply.github.com> Date: Mon, 18 Dec 2023 23:01:51 +0000 Subject: [PATCH 24/44] (#21810) [bot] Update list of references (prod-v2/ListPackages) Co-authored-by: conan-center-bot --- .c3i/conan_v2_ready_references.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.c3i/conan_v2_ready_references.yml b/.c3i/conan_v2_ready_references.yml index d212e2154e11f7..95743fcd625797 100644 --- a/.c3i/conan_v2_ready_references.yml +++ b/.c3i/conan_v2_ready_references.yml @@ -47,6 +47,7 @@ required_for_references: - asio - asio-grpc - asmjit +- asn1c - assimp - astc-codec - astro-informatics-so3 @@ -270,11 +271,13 @@ required_for_references: - debug_assert - decimal_for_cpp - deco +- dependencies - detools - dfp - di - dice-template-library - dime +- directshowbaseclasses - directx-headers - dirent - discount @@ -620,6 +623,7 @@ required_for_references: - libdxfrw - libe57format - libelf +- libelfin - libenvpp - libepoxy - libev @@ -1046,6 +1050,7 @@ required_for_references: - poshlib - pprint - pranav-csv2 +- premake - pretty-name - procxx-boost-ext-simd - proj @@ -1246,6 +1251,7 @@ required_for_references: - taocpp-sequences - taocpp-taopq - taocpp-tuple +- tar - taskflow - taywee-args - tcb-span From 30d7b032ae10fece33036c9317928fb5bac63858 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 10:15:54 +0900 Subject: [PATCH 25/44] (#21811) unordered_dense: add version 4.3.0 --- recipes/unordered_dense/all/conandata.yml | 3 +++ recipes/unordered_dense/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/unordered_dense/all/conandata.yml b/recipes/unordered_dense/all/conandata.yml index cb46afb843f82f..68524cf6fdc7c3 100644 --- a/recipes/unordered_dense/all/conandata.yml +++ b/recipes/unordered_dense/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "4.3.0": + url: "https://github.com/martinus/unordered_dense/archive/v4.3.0.tar.gz" + sha256: "c8ffaf5277dd5c29871cc6359af7823c8137158d47511dd00c8193af84906b9c" "4.1.2": url: "https://github.com/martinus/unordered_dense/archive/v4.1.2.tar.gz" sha256: "300410dbcd32800f83b2113dfecbdfe8cd256caa4cfeb117d646021d6e3209ae" diff --git a/recipes/unordered_dense/config.yml b/recipes/unordered_dense/config.yml index ff0267b8985262..dde91314b03cb6 100644 --- a/recipes/unordered_dense/config.yml +++ b/recipes/unordered_dense/config.yml @@ -1,4 +1,6 @@ versions: + "4.3.0": + folder: all "4.1.2": folder: all "4.1.0": From 9f3e4869df2e62392f731cc6286ed110811e942d Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 17:05:34 +0900 Subject: [PATCH 26/44] (#21567) tinygltf: update dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Rubén Rincón Blanco --- recipes/tinygltf/all/conanfile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/tinygltf/all/conanfile.py b/recipes/tinygltf/all/conanfile.py index 4f9e36874366d0..b9947293a173fc 100644 --- a/recipes/tinygltf/all/conanfile.py +++ b/recipes/tinygltf/all/conanfile.py @@ -34,11 +34,11 @@ def package_id(self): self.info.clear() def requirements(self): - self.requires("nlohmann_json/3.11.2") + self.requires("nlohmann_json/3.11.3") if self.options.draco: self.requires("draco/1.5.6") if self.options.stb_image or self.options.stb_image_write: - self.requires("stb/cci.20220909") + self.requires("stb/cci.20230920") def validate(self): if self.settings.compiler.get_safe("cppstd"): From bba06842a23d4e9d6b263a2f8f8d2b22c5b6671c Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 18:44:38 +0900 Subject: [PATCH 27/44] (#21693) plf_colony: add version 7.39 --- recipes/plf_colony/all/conandata.yml | 3 +++ recipes/plf_colony/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/plf_colony/all/conandata.yml b/recipes/plf_colony/all/conandata.yml index 7d323fe98a8c96..796a27e497755e 100644 --- a/recipes/plf_colony/all/conandata.yml +++ b/recipes/plf_colony/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "7.39": + url: "https://github.com/mattreecebentley/plf_colony/archive/5bb011979a33ee29b4c57ee6a7813a22efc419b7.tar.gz" + sha256: "15812bbd5899d6845d9aeb38ecc6b2884e221326516496a76ebbcc2fb7c3f48b" "7.06": url: "https://github.com/mattreecebentley/plf_colony/archive/348174f0da2ea65b7a561b08412e81ce1f5e6161.tar.gz" sha256: "c6a34d08d4946f0ce54a9836b564b329afffc7ce173720282c7e2b0b57cbc484" diff --git a/recipes/plf_colony/config.yml b/recipes/plf_colony/config.yml index d7dde26d155d45..36d026c86b004d 100644 --- a/recipes/plf_colony/config.yml +++ b/recipes/plf_colony/config.yml @@ -1,4 +1,6 @@ versions: + "7.39": + folder: all "7.06": folder: all "7.03": From ab62de5041845f8928069add9ff5e3576e9e22da Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 19:32:26 +0900 Subject: [PATCH 28/44] (#21690) kuba-zip: add version 0.3.0 --- recipes/kuba-zip/all/conandata.yml | 3 +++ recipes/kuba-zip/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/kuba-zip/all/conandata.yml b/recipes/kuba-zip/all/conandata.yml index 687b00ee7e2388..a1cc22f7f211a9 100644 --- a/recipes/kuba-zip/all/conandata.yml +++ b/recipes/kuba-zip/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.3.0": + url: "https://github.com/kuba--/zip/archive/v0.3.0.tar.gz" + sha256: "feb70ae0fe5948b805635b3cc2f3b7f074662c481981857bc6b5896a4343fe5e" "0.2.6": url: "https://github.com/kuba--/zip/archive/v0.2.6.tar.gz" sha256: "6a00e10dc5242f614f76f1bd1d814726a41ee6e3856ef3caf7c73de0b63acf0b" diff --git a/recipes/kuba-zip/config.yml b/recipes/kuba-zip/config.yml index 7244cf3b53ff72..12742f0517b7f3 100644 --- a/recipes/kuba-zip/config.yml +++ b/recipes/kuba-zip/config.yml @@ -1,4 +1,6 @@ versions: + "0.3.0": + folder: "all" "0.2.6": folder: "all" "0.2.5": From 9e3e21281ae93bc54754f3948819cc7d897beba4 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 20:19:15 +0900 Subject: [PATCH 29/44] (#21639) libcurl: add version 8.5.0, add url in 8.4.0, update pem file --- recipes/libcurl/all/conandata.yml | 11 +++++++++-- recipes/libcurl/all/conanfile.py | 6 +++--- recipes/libcurl/config.yml | 2 ++ 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/recipes/libcurl/all/conandata.yml b/recipes/libcurl/all/conandata.yml index 372042901c2cc3..3a12a85c5d6799 100644 --- a/recipes/libcurl/all/conandata.yml +++ b/recipes/libcurl/all/conandata.yml @@ -1,7 +1,14 @@ sources: + "8.5.0": + url: + - "https://curl.se/download/curl-8.5.0.tar.xz" + - "https://github.com/curl/curl/releases/download/curl-8_5_0/curl-8.5.0.tar.xz" + sha256: "42ab8db9e20d8290a3b633e7fbb3cec15db34df65fd1015ef8ac1e4723750eeb" "8.4.0": - url: "https://curl.se/download/curl-8.4.0.tar.gz" - sha256: "816e41809c043ff285e8c0f06a75a1fa250211bbfb2dc0a037eeef39f1a9e427" + url: + - "https://curl.se/download/curl-8.4.0.tar.xz" + - "https://github.com/curl/curl/releases/download/curl-8_4_0/curl-8.4.0.tar.xz" + sha256: "16c62a9c4af0f703d28bda6d7bbf37ba47055ad3414d70dec63e2e6336f2a82d" "8.2.1": url: - "https://curl.se/download/curl-8.2.1.tar.xz" diff --git a/recipes/libcurl/all/conanfile.py b/recipes/libcurl/all/conanfile.py index 6ad8bd967a379f..d2f7a3c31bd9a3 100644 --- a/recipes/libcurl/all/conanfile.py +++ b/recipes/libcurl/all/conanfile.py @@ -207,7 +207,7 @@ def build_requirements(self): else: self.tool_requires("libtool/2.4.7") if not self.conf.get("tools.gnu:pkg_config", check_type=str): - self.tool_requires("pkgconf/2.0.3") + self.tool_requires("pkgconf/2.1.0") if self.settings.os in [ "tvOS", "watchOS" ]: self.tool_requires("gnu-config/cci.20210814") if self._settings_build.os == "Windows": @@ -217,8 +217,8 @@ def build_requirements(self): def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) - cert_url = self.conf.get("user.libcurl.cert:url", check_type=str) or "https://curl.se/ca/cacert-2023-01-10.pem" - cert_sha256 = self.conf.get("user.libcurl.cert:sha256", check_type=str) or "fb1ecd641d0a02c01bc9036d513cb658bbda62a75e246bedbc01764560a639f0" + cert_url = self.conf.get("user.libcurl.cert:url", check_type=str) or "https://curl.se/ca/cacert-2023-08-22.pem" + cert_sha256 = self.conf.get("user.libcurl.cert:sha256", check_type=str) or "23c2469e2a568362a62eecf1b49ed90a15621e6fa30e29947ded3436422de9b9" download(self, cert_url, "cacert.pem", verify=True, sha256=cert_sha256) def generate(self): diff --git a/recipes/libcurl/config.yml b/recipes/libcurl/config.yml index 3f099810578c8c..8e607e7cc2a0e8 100644 --- a/recipes/libcurl/config.yml +++ b/recipes/libcurl/config.yml @@ -1,4 +1,6 @@ versions: + "8.5.0": + folder: all "8.4.0": folder: all "8.2.1": From 546807e13a134a1e4cf96e91b2a7d99bbe80f476 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 23:07:09 +0900 Subject: [PATCH 30/44] (#21814) xtl: add version 0.7.6 --- recipes/xtl/all/conandata.yml | 3 +++ recipes/xtl/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/xtl/all/conandata.yml b/recipes/xtl/all/conandata.yml index 826f7d639e616a..de42ad34f303f6 100644 --- a/recipes/xtl/all/conandata.yml +++ b/recipes/xtl/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.7.6": + url: "https://github.com/xtensor-stack/xtl/archive/0.7.6.tar.gz" + sha256: "dda442dc81f390f77561913062471c39b6ef19ffc6f64d3cd12b5c4b4607c957" "0.7.5": url: "https://github.com/xtensor-stack/xtl/archive/0.7.5.tar.gz" sha256: "3286fef5fee5d58f82f7b91375cd449c819848584bae9367893501114d923cbe" diff --git a/recipes/xtl/config.yml b/recipes/xtl/config.yml index eb054d979da836..59f6a1275ac350 100644 --- a/recipes/xtl/config.yml +++ b/recipes/xtl/config.yml @@ -1,4 +1,6 @@ versions: + "0.7.6": + folder: all "0.7.5": folder: all "0.7.4": From 79e8a4b1e867d69572985734948bdfd8dc6c8b8f Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 23:28:15 +0900 Subject: [PATCH 31/44] (#21768) uni-algo: add version 1.2.0 --- recipes/uni-algo/all/conandata.yml | 3 +++ recipes/uni-algo/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/uni-algo/all/conandata.yml b/recipes/uni-algo/all/conandata.yml index 0aedc7a70319b1..8d8acc924ed245 100644 --- a/recipes/uni-algo/all/conandata.yml +++ b/recipes/uni-algo/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.2.0": + url: "https://github.com/uni-algo/uni-algo/archive/v1.2.0.tar.gz" + sha256: "f2a1539cd8635bc6088d05144a73ecfe7b4d74ee0361fabed6f87f9f19e74ca9" "1.1.0": url: "https://github.com/uni-algo/uni-algo/archive/v1.1.0.tar.gz" sha256: "f9aa30df9766fbbc7007b206c6db122313194e75b159dc222cddce016372d2de" diff --git a/recipes/uni-algo/config.yml b/recipes/uni-algo/config.yml index aabd23fca0e2da..53399e9671402e 100644 --- a/recipes/uni-algo/config.yml +++ b/recipes/uni-algo/config.yml @@ -1,4 +1,6 @@ versions: + "1.2.0": + folder: all "1.1.0": folder: all "1.0.0": From f89d800e5d4eb8d42af1560bf2cc28ac894428f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Cumplido?= Date: Tue, 19 Dec 2023 15:49:15 +0100 Subject: [PATCH 32/44] (#21813) arrow: add version 14.0.2 --- recipes/arrow/all/conandata.yml | 3 +++ recipes/arrow/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/arrow/all/conandata.yml b/recipes/arrow/all/conandata.yml index 3da635cfb03820..4edf7cbfb21e7d 100644 --- a/recipes/arrow/all/conandata.yml +++ b/recipes/arrow/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "14.0.2": + url: "https://www.apache.org/dyn/closer.lua/arrow/arrow-14.0.2/apache-arrow-14.0.2.tar.gz?action=download" + sha256: "1304dedb41896008b89fe0738c71a95d9b81752efc77fa70f264cb1da15d9bc2" "14.0.1": url: "https://www.apache.org/dyn/closer.lua/arrow/arrow-14.0.1/apache-arrow-14.0.1.tar.gz?action=download" sha256: "5c70eafb1011f9d124bafb328afe54f62cc5b9280b7080e1e3d668f78c0e407e" diff --git a/recipes/arrow/config.yml b/recipes/arrow/config.yml index b4c3d901fea57d..c3c169ecfec736 100644 --- a/recipes/arrow/config.yml +++ b/recipes/arrow/config.yml @@ -1,4 +1,6 @@ versions: + "14.0.2": + folder: all "14.0.1": folder: all "14.0.0": From 64319d78ece57ac59afab1f19b1f7ee2b45a8458 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 20 Dec 2023 10:09:27 +0900 Subject: [PATCH 33/44] (#21789) uwebsockets: add version 20.49.0 --- recipes/uwebsockets/all/conandata.yml | 3 +++ recipes/uwebsockets/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/uwebsockets/all/conandata.yml b/recipes/uwebsockets/all/conandata.yml index c36f9118f30727..2c922cffaec969 100644 --- a/recipes/uwebsockets/all/conandata.yml +++ b/recipes/uwebsockets/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "20.49.0": + url: "https://github.com/uNetworking/uWebSockets/archive/v20.49.0.tar.gz" + sha256: "c596d6f63554a42397a86233aaa47883db1cad2a231ad8608dbaea165c0910b5" "20.48.0": url: "https://github.com/uNetworking/uWebSockets/archive/v20.48.0.tar.gz" sha256: "d7455bbbf9829b3960d0478dd36ed0eba82847c4fc801416aaf89ccb7f4dfb85" diff --git a/recipes/uwebsockets/config.yml b/recipes/uwebsockets/config.yml index 22cf3f5b226bf9..d714e6b31716af 100644 --- a/recipes/uwebsockets/config.yml +++ b/recipes/uwebsockets/config.yml @@ -1,4 +1,6 @@ versions: + "20.49.0": + folder: all "20.48.0": folder: all "20.47.0": From 0eabe76e607ac7e3116d6567f738747eb6e9474e Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 20 Dec 2023 10:25:58 +0900 Subject: [PATCH 34/44] (#21769) s2n: add version 1.4.0 --- recipes/s2n/all/conandata.yml | 3 +++ recipes/s2n/config.yml | 2 ++ 2 files changed, 5 insertions(+) diff --git a/recipes/s2n/all/conandata.yml b/recipes/s2n/all/conandata.yml index 8805728159ae74..7cf47057ff9441 100644 --- a/recipes/s2n/all/conandata.yml +++ b/recipes/s2n/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.4.0": + url: "https://github.com/aws/s2n-tls/archive/refs/tags/v1.4.0.tar.gz" + sha256: "3f786cb2f35e0551e120e1747e7b510a8228cd852073afa241313939672046cb" "1.3.56": url: "https://github.com/aws/s2n-tls/archive/refs/tags/v1.3.56.tar.gz" sha256: "5d7bab81357a564453bc453469b4ae02936f1f35225ad297b8d846d2ecdda521" diff --git a/recipes/s2n/config.yml b/recipes/s2n/config.yml index 541cd4177faf35..08d9c1cf6b54dd 100644 --- a/recipes/s2n/config.yml +++ b/recipes/s2n/config.yml @@ -1,4 +1,6 @@ versions: + "1.4.0": + folder: all "1.3.56": folder: all "1.3.55": From 65f566ec6828512ecddec5639aed87f51ce60f2c Mon Sep 17 00:00:00 2001 From: ericLemanissier Date: Wed, 20 Dec 2023 09:27:07 +0100 Subject: [PATCH 35/44] (#21821) xkbcommon: partial bump --- recipes/xkbcommon/all/conanfile.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/recipes/xkbcommon/all/conanfile.py b/recipes/xkbcommon/all/conanfile.py index 0de07aab1e6afe..432d7eeef8795f 100644 --- a/recipes/xkbcommon/all/conanfile.py +++ b/recipes/xkbcommon/all/conanfile.py @@ -65,21 +65,21 @@ def requirements(self): if self.options.with_x11: self.requires("xorg/system") if self.options.get_safe("xkbregistry"): - self.requires("libxml2/2.11.5") + self.requires("libxml2/2.12.2") if self.options.get_safe("with_wayland"): self.requires("wayland/1.22.0") if not self._has_build_profile: - self.requires("wayland-protocols/1.31") + self.requires("wayland-protocols/1.32") def validate(self): if self.settings.os not in ["Linux", "FreeBSD"]: raise ConanInvalidConfiguration(f"{self.ref} is only compatible with Linux and FreeBSD") def build_requirements(self): - self.tool_requires("meson/1.2.2") + self.tool_requires("meson/1.3.0") self.tool_requires("bison/3.8.2") if not self.conf.get("tools.gnu:pkg_config", default=False, check_type=str): - self.tool_requires("pkgconf/2.0.3") + self.tool_requires("pkgconf/2.1.0") if self._has_build_profile and self.options.get_safe("with_wayland"): self.tool_requires("wayland/") self.tool_requires("wayland-protocols/1.31") From d34e4a1870cd0790a3ee791936ab7fee7d24f0ed Mon Sep 17 00:00:00 2001 From: Daniel Date: Wed, 20 Dec 2023 17:29:17 +0200 Subject: [PATCH 36/44] [config] Change configurations to amrv8 arch for Macos build profiles (#21826) --- .c3i/config_v1.yml | 11 +++-------- .c3i/config_v2.yml | 7 ++----- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/.c3i/config_v1.yml b/.c3i/config_v1.yml index bb61be1f4e1b0d..6fd58a85275b0d 100644 --- a/.c3i/config_v1.yml +++ b/.c3i/config_v1.yml @@ -75,7 +75,6 @@ tasks: # Profile configurations to build packages configurations: - id: linux-gcc - epochs: [20211221, 20220120, 20230606] hrname: "Linux, GCC" content: - os: ["Linux"] @@ -86,7 +85,6 @@ configurations: compiler.version: ["5", "7", "9", "10", "11"] build_type: ["Release", "Debug"] - id: linux-clang - epochs: [20211221, 20220120, 20230606] hrname: "Linux, Clang" content: - os: ["Linux"] @@ -97,8 +95,10 @@ configurations: compiler.version: ["12", "13"] build_type: ["Release", "Debug"] - id: macos-clang - epochs: [20220120, 20230606] hrname: "macOS, Clang" + build_profile: + os: "Macos" + arch: "armv8" content: - os: [ "Macos" ] arch: [ "x86_64" ] @@ -108,11 +108,7 @@ configurations: compiler.libcxx: [ "libc++" ] build_type: [ "Release", "Debug" ] - id: macos-m1-clang - epochs: [20220120, 20230606] hrname: "macOS, Clang (M1/arm64)" - build_profile: - os: "Macos" - arch: "x86_64" content: - os: [ "Macos" ] arch: [ "armv8" ] @@ -122,7 +118,6 @@ configurations: compiler.libcxx: [ "libc++" ] build_type: [ "Release", "Debug" ] - id: windows-visual_studio - epochs: [0, 20211221, 20220120, 20230606] hrname: "Windows, Visual Studio" content: - os: [ "Windows" ] diff --git a/.c3i/config_v2.yml b/.c3i/config_v2.yml index 69f002da7a5381..712dcc277de49f 100644 --- a/.c3i/config_v2.yml +++ b/.c3i/config_v2.yml @@ -67,7 +67,6 @@ tasks: configurations: - id: linux-gcc - epochs: [0, 20211221, 20220120, 20220628, 20230606] hrname: "Linux, GCC" build_profile: os: "Linux" @@ -80,10 +79,10 @@ configurations: compiler.version: ["11"] build_type: ["Release"] - id: macos-clang - epochs: [0, 20211221, 20220120, 20220628, 20230606] hrname: "macOS, Clang" build_profile: os: "Macos" + arch: "armv8" content: - os: [ "Macos" ] arch: [ "x86_64" ] @@ -93,11 +92,10 @@ configurations: compiler.libcxx: [ "libc++" ] build_type: [ "Release"] - id: macos-m1-clang - epochs: [0, 20211221, 20220120, 20220628, 20230606] hrname: "macOS M1, Clang" build_profile: os: "Macos" - arch: "x86_64" + arch: "armv8" content: - os: [ "Macos" ] arch: [ "armv8" ] @@ -107,7 +105,6 @@ configurations: compiler.libcxx: [ "libc++" ] build_type: [ "Release"] - id: windows-msvc - epochs: [20230606] hrname: "Windows, MSVC" build_profile: os: "Windows" From bb888b3aaa8432215c2c20c08ed9cb763a025cae Mon Sep 17 00:00:00 2001 From: Conan Center Index Bot <54393557+conan-center-bot@users.noreply.github.com> Date: Wed, 20 Dec 2023 20:22:16 +0000 Subject: [PATCH 37/44] (#21749) [bot] Update authorized users list (2023-12-14) Co-authored-by: conan-center-bot --- .c3i/authorized_users.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.c3i/authorized_users.yml b/.c3i/authorized_users.yml index 70239a094fd32d..549da8cd3184cf 100644 --- a/.c3i/authorized_users.yml +++ b/.c3i/authorized_users.yml @@ -1250,3 +1250,5 @@ authorized_users: - mlutken - hoyhoy - stevenhartley +- RMZeroFour +- rymut From 5f574b52c3ed8676a913757a95dc92858d889478 Mon Sep 17 00:00:00 2001 From: Joris Putcuyps Date: Wed, 20 Dec 2023 21:38:37 +0100 Subject: [PATCH 38/44] (#21683) arduinojson: add version 6.21.4 * Add arduinojson-6.21.4 * ArduinoJson also does MessagePack --- recipes/arduinojson/all/conandata.yml | 3 +++ recipes/arduinojson/all/conanfile.py | 2 +- recipes/arduinojson/config.yml | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/recipes/arduinojson/all/conandata.yml b/recipes/arduinojson/all/conandata.yml index d44d34b58314df..7cd1210fd6d959 100644 --- a/recipes/arduinojson/all/conandata.yml +++ b/recipes/arduinojson/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "6.21.4": + url: "https://github.com/bblanchon/ArduinoJson/releases/download/v6.21.4/ArduinoJson-v6.21.4.zip" + sha256: "60a5c4cd28d97047f63a1f9c9e8bd36a72c8b4c86809babcc2bd4b00e0502b9b" "6.21.2": url: "https://github.com/bblanchon/ArduinoJson/releases/download/v6.21.2/ArduinoJson-v6.21.2.zip" sha256: "1dc888061f6e7828f7a0a4e71bf059796e5ce202ce6ddb4e3a2e384d32b5cba0" diff --git a/recipes/arduinojson/all/conanfile.py b/recipes/arduinojson/all/conanfile.py index 74cc1a0a276996..e10c2101ad215e 100644 --- a/recipes/arduinojson/all/conanfile.py +++ b/recipes/arduinojson/all/conanfile.py @@ -13,7 +13,7 @@ class ArduinojsonConan(ConanFile): name = "arduinojson" description = "C++ JSON library for IoT. Simple and efficient." homepage = "https://github.com/bblanchon/ArduinoJson" - topics = ("json", "arduino", "iot", "embedded", "esp8266") + topics = ("json", "msgpack", "message-pack", "arduino", "iot", "embedded", "esp8266") license = "MIT" url = "https://github.com/conan-io/conan-center-index" package_type = "header-library" diff --git a/recipes/arduinojson/config.yml b/recipes/arduinojson/config.yml index 3358de63265213..afe4d32db15ffa 100644 --- a/recipes/arduinojson/config.yml +++ b/recipes/arduinojson/config.yml @@ -1,4 +1,6 @@ versions: + "6.21.4": + folder: all "6.21.2": folder: all "6.21.0": From cc5692484d667b48e10aec754d498379f2e3ed71 Mon Sep 17 00:00:00 2001 From: ericLemanissier Date: Thu, 21 Dec 2023 00:25:02 +0100 Subject: [PATCH 39/44] (#21824) xkbcommon: bump deps --- recipes/xkbcommon/all/conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/xkbcommon/all/conanfile.py b/recipes/xkbcommon/all/conanfile.py index 432d7eeef8795f..8f8538a292739f 100644 --- a/recipes/xkbcommon/all/conanfile.py +++ b/recipes/xkbcommon/all/conanfile.py @@ -82,7 +82,7 @@ def build_requirements(self): self.tool_requires("pkgconf/2.1.0") if self._has_build_profile and self.options.get_safe("with_wayland"): self.tool_requires("wayland/") - self.tool_requires("wayland-protocols/1.31") + self.tool_requires("wayland-protocols/1.32") def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) From 9ff80591643683d916cd1e81aa180c6865eefb00 Mon Sep 17 00:00:00 2001 From: Conan Center Index Bot <54393557+conan-center-bot@users.noreply.github.com> Date: Thu, 21 Dec 2023 09:52:09 +0000 Subject: [PATCH 40/44] (#21804) [bot] Update authorized users list (2023-12-18) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: conan-center-bot Co-authored-by: Rubén Rincón Blanco --- .c3i/authorized_users.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.c3i/authorized_users.yml b/.c3i/authorized_users.yml index 549da8cd3184cf..431c8106f95255 100644 --- a/.c3i/authorized_users.yml +++ b/.c3i/authorized_users.yml @@ -1252,3 +1252,7 @@ authorized_users: - stevenhartley - RMZeroFour - rymut +- MartyMcFlyInTheSky +- piliugin-anton +- Drllap +- i-curve From 7a6c0babf868b1a371ac982219ae3ea5fd9c4daa Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Thu, 21 Dec 2023 13:08:40 +0300 Subject: [PATCH 41/44] (#21787) libatomic_ops: update to 7.8.2 * update package version from 7.8.0 to 7.8.2 --- recipes/libatomic_ops/all/conandata.yml | 6 +++--- recipes/libatomic_ops/config.yml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/recipes/libatomic_ops/all/conandata.yml b/recipes/libatomic_ops/all/conandata.yml index 04ee70160921a0..ca0f7bac81a72a 100644 --- a/recipes/libatomic_ops/all/conandata.yml +++ b/recipes/libatomic_ops/all/conandata.yml @@ -1,4 +1,4 @@ sources: - "7.8.0": - url: "https://github.com/ivmai/libatomic_ops/releases/download/v7.8.0/libatomic_ops-7.8.0.tar.gz" - sha256: "15676e7674e11bda5a7e50a73f4d9e7d60452271b8acf6fd39a71fefdf89fa31" + "7.8.2": + url: "https://github.com/ivmai/libatomic_ops/releases/download/v7.8.2/libatomic_ops-7.8.2.tar.gz" + sha256: "d305207fe207f2b3fb5cb4c019da12b44ce3fcbc593dfd5080d867b1a2419b51" diff --git a/recipes/libatomic_ops/config.yml b/recipes/libatomic_ops/config.yml index 95536563a1815b..03c7395ab6c04d 100644 --- a/recipes/libatomic_ops/config.yml +++ b/recipes/libatomic_ops/config.yml @@ -1,3 +1,3 @@ versions: - "7.8.0": + "7.8.2": folder: all From d5dc5a71a43590eec60fdb34ee1628bbead585de Mon Sep 17 00:00:00 2001 From: Nicolai Grodzitski Date: Thu, 21 Dec 2023 11:29:22 +0100 Subject: [PATCH 42/44] (#21839) Add restinio v0.7.1 --- recipes/restinio/config.yml | 2 ++ recipes/restinio/v0.7/conandata.yml | 3 +++ 2 files changed, 5 insertions(+) diff --git a/recipes/restinio/config.yml b/recipes/restinio/config.yml index 224a43066392f5..df26f55e95f2c7 100644 --- a/recipes/restinio/config.yml +++ b/recipes/restinio/config.yml @@ -1,4 +1,6 @@ versions: + "0.7.1": + folder: "v0.7" "0.7.0": folder: "v0.7" "0.6.19": diff --git a/recipes/restinio/v0.7/conandata.yml b/recipes/restinio/v0.7/conandata.yml index 1b3707b68b5bb3..e74209bdf08a62 100644 --- a/recipes/restinio/v0.7/conandata.yml +++ b/recipes/restinio/v0.7/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.7.1": + url: "https://github.com/Stiffstream/restinio/archive/v.0.7.1.tar.gz" + sha256: "46a3224ad23f768412c3494cd11f973b753b0d0be51906c46176ea7bafa687f6" "0.7.0": url: "https://github.com/Stiffstream/restinio/archive/v.0.7.0.tar.gz" sha256: "1d6ad5812c02ee42342ed0ed78678a4e37c1cfe87f2f7c32c2862f825062feaa" From ee18955997f3e7f4dc4c654dcd04665c995a63c6 Mon Sep 17 00:00:00 2001 From: Samuel Dowling Date: Thu, 21 Dec 2023 21:35:32 +1030 Subject: [PATCH 43/44] (#19606) [vulkan-validationlayers] Fix discovery of libVkLayer_khronos_validation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [vulkan-validationlayers] Fix discovery of libVkLayer_khronos_validation * Add libdirs to the runtime lib discovery path to enable libVlLayer_khronos_validation.{so,dll,dylib} to be discovered appropriately at runtime. This package exports both a static library and a shared library, of which, only the static library should be linked against. The shared library is loaded dynamically by vulkan-loader, and still needs to be discoverable. Because this is not a shared library, these paths are not exported automatically and therefore are required to be explicitly set. Closes #19605 * Remove notification of runtime_lib_discovery_path update Co-authored-by: SpaceIm <30052553+SpaceIm@users.noreply.github.com> --------- Co-authored-by: SpaceIm <30052553+SpaceIm@users.noreply.github.com> Co-authored-by: Rubén Rincón Blanco --- recipes/vulkan-validationlayers/all/conanfile.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/recipes/vulkan-validationlayers/all/conanfile.py b/recipes/vulkan-validationlayers/all/conanfile.py index 9ce6269563249b..c2830d5f99a6c8 100644 --- a/recipes/vulkan-validationlayers/all/conanfile.py +++ b/recipes/vulkan-validationlayers/all/conanfile.py @@ -225,5 +225,17 @@ def package_info(self): manifest_subfolder = "bin" if self.settings.os == "Windows" else os.path.join("res", "vulkan", "explicit_layer.d") vk_layer_path = os.path.join(self.package_folder, manifest_subfolder) self.runenv_info.prepend_path("VK_LAYER_PATH", vk_layer_path) + + # Update runtime discovery paths to allow libVkLayer_khronos_validation.{so,dll,dylib} to be discovered + # and loaded by vulkan-loader when the consumer executes + # This is necessary because this package exports a static lib to link against and a dynamic lib to load at runtime + runtime_lib_discovery_path = "LD_LIBRARY_PATH" + if self.settings.os == "Windows": + runtime_lib_discovery_path = "PATH" + if self.settings.os == "Macos": + runtime_lib_discovery_path = "DYLD_LIBRARY_PATH" + for libdir in [os.path.join(self.package_folder, libdir) for libdir in self.cpp_info.libdirs]: + self.runenv_info.prepend_path(runtime_lib_discovery_path, libdir) + # TODO: to remove after conan v2, it allows to not break consumers still relying on virtualenv generator self.env_info.VK_LAYER_PATH.append(vk_layer_path) From cbfbc41bbc5ee8f5fe02dd68cee9845f6c7aa692 Mon Sep 17 00:00:00 2001 From: SpaceIm <30052553+SpaceIm@users.noreply.github.com> Date: Thu, 21 Dec 2023 13:33:26 +0100 Subject: [PATCH 44/44] (#20911) tcl: fix MinGW and properly split build and install in autotools branch * fix MinGW and properly split build and install in autotools branch * fix substitution in tclConfig.sh --- recipes/tcl/all/conanfile.py | 99 +++++++++++++++++++----------------- 1 file changed, 52 insertions(+), 47 deletions(-) diff --git a/recipes/tcl/all/conanfile.py b/recipes/tcl/all/conanfile.py index 1722816dbfb147..89c037e770f6ba 100644 --- a/recipes/tcl/all/conanfile.py +++ b/recipes/tcl/all/conanfile.py @@ -5,6 +5,7 @@ from conan.tools.env import VirtualBuildEnv, VirtualRunEnv from conan.tools.files import apply_conandata_patches, chdir, collect_libs, copy, export_conandata_patches, get, replace_in_file, rmdir from conan.tools.gnu import Autotools, AutotoolsDeps, AutotoolsToolchain +from conan.tools.layout import basic_layout from conan.tools.microsoft import is_msvc, is_msvc_static_runtime, msvc_runtime_flag, NMakeToolchain, NMakeDeps from conan.tools.scm import Version import os @@ -48,9 +49,9 @@ def configure(self): self.settings.rm_safe("compiler.cppstd") def layout(self): - # Not using basic_layout because package() needs the source folder to be a sub-directory of the build folder - self.folders.source = "src" - self.folders.generators = "conan" + basic_layout(self, src_folder="src") + # source folder must be a sub-directory of the build folder + self.folders.build = "." def requirements(self): self.requires("zlib/[>=1.2.11 <2]") @@ -82,7 +83,7 @@ def generate(self): env = VirtualRunEnv(self) env.generate(scope="build") - tc = AutotoolsToolchain(self, prefix=self.package_folder) + tc = AutotoolsToolchain(self) def yes_no(v): return "yes" if v else "no" tc.configure_args.extend([ "--enable-threads", @@ -94,25 +95,14 @@ def yes_no(v): return "yes" if v else "no" deps = AutotoolsDeps(self) deps.generate() - def _get_default_build_system_subdir(self): - return { - "Macos": "macosx", - "Linux": "unix", - "Windows": "win", - }[str(self.settings.os)] - - def _get_configure_dir(self, build_system_subdir=None): - if build_system_subdir is None: - build_system_subdir = self._get_default_build_system_subdir() - return os.path.join(self.source_folder, build_system_subdir) - def _patch_sources(self): apply_conandata_patches(self) if is_apple_os(self) and self.settings.arch not in ("x86", "x86_64"): - replace_in_file(self, os.path.join(self._get_configure_dir(), "configure"), "#define HAVE_CPUID 1", "#undef HAVE_CPUID") + macos_configure = os.path.join(self.source_folder, "macosx", "configure") + replace_in_file(self, macos_configure, "#define HAVE_CPUID 1", "#undef HAVE_CPUID") - unix_config_dir = self._get_configure_dir("unix") + unix_config_dir = os.path.join(self.source_folder, "unix") # When disabling 64-bit support (in 32-bit), this test must be 0 in order to use "long long" for 64-bit ints # (${tcl_type_64bit} can be either "__int64" or "long long") replace_in_file(self, os.path.join(unix_config_dir, "configure"), @@ -127,9 +117,18 @@ def _patch_sources(self): replace_in_file(self, unix_makefile_in, "\nLDFLAGS\t", "\n#LDFLAGS\t") # Use CFLAGS and CPPFLAGS as argument to CC replace_in_file(self, unix_makefile_in, "${CFLAGS}", "${CFLAGS} ${CPPFLAGS}") + + win_config_dir = os.path.join(self.source_folder, "win") + + # Fix install for MinGW + win_makefile_in = os.path.join(win_config_dir, "Makefile.in") + replace_in_file(self, win_makefile_in, "INSTALL_ROOT =", "INSTALL_ROOT = $(DESTDIR)") + # No link to static libgcc for MinGW + win_tcl_m4 = os.path.join(win_config_dir, "tcl.m4") + replace_in_file(self, win_tcl_m4, "-static-libgcc", "") + # nmake creates a temporary file with mixed forward/backward slashes # force the filename to avoid cryptic error messages - win_config_dir = self._get_configure_dir("win") win_makefile_vc = os.path.join(win_config_dir, "makefile.vc") replace_in_file(self, win_makefile_vc, "@type << >$@", "type <$@") @@ -157,26 +156,38 @@ def _build_nmake(self, targets): if "d" not in msvc_runtime_flag(self): opts.append("unchecked") - with chdir(self, self._get_configure_dir("win")): + win_config_dir = os.path.join(self.source_folder, "win") + with chdir(self, win_config_dir): self.run('nmake -nologo -f "{cfgdir}/makefile.vc" INSTALLDIR="{pkgdir}" OPTS={opts} {targets}'.format( - cfgdir=self._get_configure_dir("win"), + cfgdir=win_config_dir, pkgdir=self.package_folder, opts=",".join(opts), targets=" ".join(targets), )) + def _get_configure_subdir(self): + return { + "Macos": "macosx", + "Linux": "unix", + "FreeBSD": "unix", + "Windows": "win", + }[str(self.settings.os)] + def build(self): self._patch_sources() if is_msvc(self): self._build_nmake(["release"]) else: autotools = Autotools(self) - autotools.configure(self._get_configure_dir()) - + autotools.configure(build_script_folder=self._get_configure_subdir()) # https://core.tcl.tk/tcl/tktview/840660e5a1 for root, _, list_of_files in os.walk(self.build_folder): if "Makefile" in list_of_files: replace_in_file(self, os.path.join(root, "Makefile"), "-Dstrtod=fixstrtod", "", strict=False) + # For some reason this target "binaries" may not be built before others + # on Windows while it's a dependency of many other targets + autotools.make(target="binaries") + autotools.make() def package(self): copy(self, "license.terms", src=self.source_folder, dst=os.path.join(self.package_folder, "licenses")) @@ -184,36 +195,30 @@ def package(self): self._build_nmake(["install-binaries", "install-libraries"]) else: autotools = Autotools(self) - autotools.make(target="install") - autotools.make(target="install-private-headers") + autotools.install() + autotools.install(target="install-private-headers") rmdir(self, os.path.join(self.package_folder, "lib", "pkgconfig")) rmdir(self, os.path.join(self.package_folder, "man")) rmdir(self, os.path.join(self.package_folder, "share")) + fix_apple_shared_install_name(self) + # Relocatable tclConfig.sh tclConfigShPath = os.path.join(self.package_folder, "lib", "tclConfig.sh") - package_path = self.package_folder - build_folder = self.build_folder - if self.settings.os == "Windows" and not is_msvc(self): - package_path = package_path.replace("\\", "/") - drive, path = os.path.splitdrive(self.build_folder) - build_folder = "".join([drive, path.lower().replace("\\", "/")]) - - replace_in_file(self, tclConfigShPath, - package_path, - "${TCL_ROOT}") - replace_in_file(self, tclConfigShPath, - build_folder, - "${TCL_BUILD_ROOT}") - - replace_in_file(self, tclConfigShPath, - "\nTCL_BUILD_", - "\n#TCL_BUILD_") - replace_in_file(self, tclConfigShPath, - "\nTCL_SRC_DIR", - "\n#TCL_SRC_DIR") - - fix_apple_shared_install_name(self) + ## Comment out references to build folder + replace_in_file(self, tclConfigShPath, "\nTCL_BUILD_", "\n#TCL_BUILD_") + replace_in_file(self, tclConfigShPath, "\nTCL_SRC_DIR", "\n#TCL_SRC_DIR") + ## Replace references to package folder by TCL_ROOT env var supposed to be defined by VirtualRunEnv + if is_msvc(self): + replace_in_file(self, tclConfigShPath, self.package_folder, "${TCL_ROOT}") + else: + replace_in_file(self, tclConfigShPath, "TCL_PREFIX='/'", "TCL_PREFIX='${TCL_ROOT}'") + replace_in_file(self, tclConfigShPath, "TCL_EXEC_PREFIX='/'", "TCL_EXEC_PREFIX='${TCL_ROOT}'") + for to_replace in ["//", "/"]: + replace_in_file(self, tclConfigShPath, f"-L{to_replace}lib", "-L${TCL_ROOT}/lib", strict=False) + replace_in_file(self, tclConfigShPath, f"{{{to_replace}lib}}", "{${TCL_ROOT}/lib}", strict=False) + replace_in_file(self, tclConfigShPath, f"='{to_replace}lib", "='${TCL_ROOT}/lib", strict=False) + replace_in_file(self, tclConfigShPath, f"-I{to_replace}include", "-I${TCL_ROOT}/include", strict=False) def package_info(self): self.cpp_info.set_property("cmake_file_name", "TCL")