diff --git a/.c3i/authorized_users.yml b/.c3i/authorized_users.yml index 18f375cb01b058..b28163cd329936 100644 --- a/.c3i/authorized_users.yml +++ b/.c3i/authorized_users.yml @@ -1352,3 +1352,10 @@ authorized_users: - inPhraZ - nikolay-pv - Julianiolo +- ErikHons +- enzo-pellegrini +- BLumia +- ydcpp +- tttapa +- zeeshancs07 +- jll63 diff --git a/.c3i/conan_v2_ready_references.yml b/.c3i/conan_v2_ready_references.yml index 313bee884519a9..dcc1b04214f076 100644 --- a/.c3i/conan_v2_ready_references.yml +++ b/.c3i/conan_v2_ready_references.yml @@ -292,6 +292,7 @@ required_for_references: - dbg-macro - dbus - dcmtk +- dd-opentracing-cpp - debug_assert - decimal_for_cpp - deco @@ -734,6 +735,7 @@ required_for_references: - libmagic - libmaxminddb - libmbus +- libmd - libmediainfo - libmemcached - libmetalink @@ -990,6 +992,7 @@ required_for_references: - nextsilicon-cpp-subprocess - nfrechette-acl - nghttp3 +- nifti_clib - ninja - nlohmann_json - nlopt @@ -1069,6 +1072,7 @@ required_for_references: - openmesh - openmvg - openpam +- openscenegraph - openssh - openssl - opensubdiv @@ -1136,6 +1140,7 @@ required_for_references: - platform.exceptions - platform.hashing - platform.interfaces +- platformfolders - playrho - plf_colony - plf_indiesort diff --git a/.c3i/config_v1.yml b/.c3i/config_v1.yml index 68c6f4fbb39ea8..f8b9141cf85241 100644 --- a/.c3i/config_v1.yml +++ b/.c3i/config_v1.yml @@ -3,7 +3,7 @@ id: 'conan-io/conan-center-index' conan: - version: 1.64.0 + version: 1.64.1 artifactory: url: "https://c3i.jfrog.io/c3i" diff --git a/.c3i/config_v2.yml b/.c3i/config_v2.yml index c4ac212386ed74..fcc11dc1b0cb1e 100644 --- a/.c3i/config_v2.yml +++ b/.c3i/config_v2.yml @@ -3,7 +3,7 @@ id: 'conan-io/conan-center-index' conan: - version: 2.2.2 + version: 2.3.1 backup_sources: upload_url: "https://c3i.jfrog.io/artifactory/conan-center-backup-sources/" download_url: "https://c3i.jfrog.io/artifactory/conan-center-backup-sources/" diff --git a/.github/actions/alert-community/action.yml b/.github/actions/alert-community/action.yml deleted file mode 100644 index ca390cd38b4e74..00000000000000 --- a/.github/actions/alert-community/action.yml +++ /dev/null @@ -1,31 +0,0 @@ -name: "Alert Community" -description: "Comment on pull request if certain files changes" -author: "prince-chrismc" -inputs: - files: - description: "Check for changes using only this list of files (Defaults to the entire repo)" - required: true - default: "" - reviewers: - description: "List of users to mention (make sure to include the @)" - required: true - default: "" - -runs: - using: "composite" - steps: - # Assume the repo checked out the code since this is running - - uses: ./.github/actions/pr_changed_files - id: changed_files - with: - files: ${{ inputs.files }} - - if: always() && steps.changed_files.outputs.any_changed == 'true' - uses: actions/github-script@v6 - with: - script: | - github.rest.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: `:robot: **Beep Boop**! This pull request is making changes to '${{ inputs.files }}'.\n\n:wave: ${{ inputs.reviewers }} you might be interested. :wink:` - }) diff --git a/.github/workflows/alert-community.yml b/.github/workflows/alert-community.yml deleted file mode 100644 index 76a1a4165dd49b..00000000000000 --- a/.github/workflows/alert-community.yml +++ /dev/null @@ -1,472 +0,0 @@ -name: "[service] Alert Community" - -on: - pull_request_target: - types: [opened] - -env: - PYVER: "3.10" - -jobs: - comment: - if: github.repository == 'conan-io/conan-center-index' - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - ref: master - - - uses: ./.github/actions/alert-community - with: - files: "docs/*/*" - reviewers: "@prince-chrismc @MartinDelille @Croydon" - - - uses: ./.github/actions/alert-community - with: - files: ".github/*/*" - reviewers: "@ericLemanissier @Croydon" - - - uses: ./.github/actions/alert-community - with: - files: "linter/*/*" - reviewers: "@ericLemanissier @Croydon" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/aaf/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/abseil/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/armadillo/*/*" - reviewers: "@samuel-emrys" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/avahi/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/b2/*/*" - reviewers: "@grafikrobot" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/bandit/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/benchmark/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/boost/*/*" - reviewers: "@grafikrobot @Hopobcn @jwillikers @paulharris" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/boost-ext-ut/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/bzip2/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/cereal/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/cmake/*/*" - reviewers: "@Croydon" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/cppcheck/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/create-dmg/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/dbus/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/double-conversion/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/eigen/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/elfio/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/ffmpeg/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/fmt/*/*" - reviewers: "@Hopobcn @jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/folly/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/foxi/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/fp16/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/g3log/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/gcc/*/*" - reviewers: "@samuel-emrys" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/geotrans/*/*" - reviewers: "@samuel-emrys" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/gflags/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/glew/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/glfw/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/glog/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/gtest/*/*" - reviewers: "@Hopobcn @jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/imath/*/*" - reviewers: "@irieger" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/imgui/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/implot/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/jemalloc/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libalsa/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libarchive/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libbacktrace/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libcap/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libcurl/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libdwarf/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libelf/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libevent/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libffi/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libiberty/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libiconv/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libltc/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libpng/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libraw/*/*" - reviewers: "@irieger" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libsodium/*/*" - reviewers: "@Hopobcn @paulharris" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libspatialite/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libunwind/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libuuid/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libxml2/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/llvm-core/*/*" - reviewers: "@Hopobcn @paulharris" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/lyra/*/*" - reviewers: "@grafikrobot" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/lz4/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/mocknetworkaccessmanager/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/ms-gsl/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/nlohmann_json/*/*" - reviewers: "@Hopobcn @jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/onnx/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/openapi-generator/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/opencolorio/*/*" - reviewers: "@irieger" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/openexr/*/*" - reviewers: "@irieger" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/opengl/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/opengl-registry/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/openimageio/*/*" - reviewers: "@irieger" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/openssl/*/*" - reviewers: "@Hopobcn @Croydon" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/protobuf/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/psimd/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/qtawesome/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/qt/*/*" - reviewers: "@ericLemanissier @jwillikers @MartinDelille @paulharris" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/quazip/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/rtmidi/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/sentry-*/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/shapelib/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/snappy/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/snowhouse/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/uncrustify/*/*" - reviewers: "@MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/wayland/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/wayland-protocols/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/xkbcommon/*/*" - reviewers: "@jwillikers" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/xorg/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/yaml-cpp/*/*" - reviewers: "@jwillikers @MartinDelille" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/xz_utils/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/zlib/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/zstd/*/*" - reviewers: "@Hopobcn" - - - uses: ./.github/actions/alert-community - with: - files: "recipes/libhal/*/*" - reviewers: "@kammce" diff --git a/docs/changelog.md b/docs/changelog.md index 3d6b985571d207..b1227371013416 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,5 +1,10 @@ # Changelog +### 22-May-2024 - 12:04 CEST + +- [feature] Add support for Conan 2.3.1 in the CI +- [feature] Add support for Conan 1.64.1 in the CI + ### 03-April-2024 - 13:53 CEST - [feature] Add support for Conan 2.2.2 in the CI diff --git a/recipes/abseil/all/conanfile.py b/recipes/abseil/all/conanfile.py index bcfa3c446e4263..6c10812e384528 100644 --- a/recipes/abseil/all/conanfile.py +++ b/recipes/abseil/all/conanfile.py @@ -70,9 +70,9 @@ def validate(self): f"{self.ref} requires C++{self._min_cppstd}, which your compiler does not support." ) - if self.options.shared and is_msvc(self): + if self.options.shared and is_msvc(self) and Version(self.version) < "20230802.1": # upstream tries its best to export symbols, but it's broken for the moment - raise ConanInvalidConfiguration(f"{self.ref} shared not availabe for Visual Studio (yet)") + raise ConanInvalidConfiguration(f"{self.ref} shared not availabe for Visual Studio, please use version 20230802.1 or newer") def layout(self): cmake_layout(self, src_folder="src") @@ -161,7 +161,7 @@ def _load_components_from_cmake_target_file(self, absl_target_file_path): if cmake_function_name == "add_library": cmake_imported_target_type = cmake_function_args[1] if cmake_imported_target_type in ["STATIC", "SHARED"]: - components[potential_lib_name]["libs"] = [potential_lib_name] if cmake_target_nonamespace != "abseil_dll" else [] + components[potential_lib_name]["libs"] = [potential_lib_name] if cmake_target_nonamespace != "abseil_dll" else ['abseil_dll'] elif cmake_function_name == "set_target_properties": target_properties = re.findall(r"(?PINTERFACE_COMPILE_DEFINITIONS|INTERFACE_INCLUDE_DIRECTORIES|INTERFACE_LINK_LIBRARIES)[\n|\s]+(?P.+)", cmake_function_args[2]) for target_property in target_properties: diff --git a/recipes/approvaltests.cpp/all/conandata.yml b/recipes/approvaltests.cpp/all/conandata.yml index b3f371f3d0cdd0..f5f47fc15d2ea6 100644 --- a/recipes/approvaltests.cpp/all/conandata.yml +++ b/recipes/approvaltests.cpp/all/conandata.yml @@ -1,4 +1,9 @@ sources: + "10.13.0": + - url: https://github.com/approvals/ApprovalTests.cpp/releases/download/v.10.13.0/ApprovalTests.v.10.13.0.hpp + sha256: c00f6390b81d9924dc646e9d32b61e1e09abda106c13704f714ac349241bb9ff + - url: "https://raw.githubusercontent.com/approvals/ApprovalTests.cpp/v.10.13.0/LICENSE" + sha256: c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 "10.12.2": - url: https://github.com/approvals/ApprovalTests.cpp/releases/download/v.10.12.2/ApprovalTests.v.10.12.2.hpp sha256: 4c43d0ea98669e3d6fbb5810cc47b19adaf88cabb1421b488aa306b08c434131 diff --git a/recipes/approvaltests.cpp/all/conanfile.py b/recipes/approvaltests.cpp/all/conanfile.py index 167d80165bb6d9..1bfdff95cf2457 100644 --- a/recipes/approvaltests.cpp/all/conanfile.py +++ b/recipes/approvaltests.cpp/all/conanfile.py @@ -1,11 +1,12 @@ from conan import ConanFile from conan.errors import ConanInvalidConfiguration +from conan.tools.build import check_min_cppstd from conan.tools.files import copy, download, rename from conan.tools.layout import basic_layout from conan.tools.scm import Version import os -required_conan_version = ">=1.51.1" +required_conan_version = ">=1.53" class ApprovalTestsCppConan(ConanFile): @@ -38,6 +39,10 @@ class ApprovalTestsCppConan(ConanFile): @property def _header_file(self): return "ApprovalTests.hpp" + + @property + def _min_cppstd(self): + return 11 def config_options(self): if Version(self.version) < "10.4.0": @@ -62,6 +67,9 @@ def package_id(self): self.info.clear() def validate(self): + if self.settings.get_safe("compiler.cppstd"): + check_min_cppstd(self, self._min_cppstd) + if Version(self.version) >= "10.2.0": if self.settings.compiler == "gcc" and Version(self.settings.compiler.version) < "5": raise ConanInvalidConfiguration(f"{self.ref} with compiler gcc requires at least compiler version 5") diff --git a/recipes/approvaltests.cpp/config.yml b/recipes/approvaltests.cpp/config.yml index caf3f177e07c72..6e7a92b2ed85ab 100644 --- a/recipes/approvaltests.cpp/config.yml +++ b/recipes/approvaltests.cpp/config.yml @@ -1,4 +1,6 @@ versions: + "10.13.0": + folder: all "10.12.2": folder: all "10.12.1": diff --git a/recipes/arcus/all/conanfile.py b/recipes/arcus/all/conanfile.py index 8f6e301a393139..38ae3416bb350a 100644 --- a/recipes/arcus/all/conanfile.py +++ b/recipes/arcus/all/conanfile.py @@ -45,7 +45,7 @@ def layout(self): cmake_layout(self, src_folder="src") def requirements(self): - self.requires("protobuf/3.21.9") + self.requires("protobuf/3.21.12") def validate(self): if self.settings.compiler.get_safe("cppstd"): diff --git a/recipes/artery-font-format/all/test_package/conanfile.py b/recipes/artery-font-format/all/test_package/conanfile.py index 26110ca175735d..0a808db45f2453 100644 --- a/recipes/artery-font-format/all/test_package/conanfile.py +++ b/recipes/artery-font-format/all/test_package/conanfile.py @@ -24,5 +24,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindir, "test_package") - arfont = os.path.join(self.source_folder, "example.arfont") - self.run(f"{bin_path} {arfont}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/artery-font-format/all/test_package/example.arfont b/recipes/artery-font-format/all/test_package/example.arfont deleted file mode 100644 index a1530434762b65..00000000000000 Binary files a/recipes/artery-font-format/all/test_package/example.arfont and /dev/null differ diff --git a/recipes/artery-font-format/all/test_package/test_package.cpp b/recipes/artery-font-format/all/test_package/test_package.cpp index 8e85c6f96e501d..ff1d420aff0b04 100644 --- a/recipes/artery-font-format/all/test_package/test_package.cpp +++ b/recipes/artery-font-format/all/test_package/test_package.cpp @@ -1,32 +1,9 @@ -#include -#include #include #include -#include int main(int argc, char *argv[]) { - if (argc < 2) { - std::cerr << "usage: test_package \n"; - return EXIT_FAILURE; - } - - FILE *const font_file = fopen(argv[1], "rb"); - if (font_file == nullptr) { - std::cerr << "couldn't open font file" << std::endl; - return EXIT_FAILURE; - } - - artery_font::StdArteryFont font; - if (!artery_font::read(font, font_file)) { - std::cerr << "couldn't read artery font" << std::endl; - return EXIT_FAILURE; - } - - if (fclose(font_file) != 0) { - std::cerr << "an error occured when closing font file" << std::endl; - return EXIT_FAILURE; - } - - return EXIT_SUCCESS; + auto list = artery_font::StdList(5); + std::cout << "There are " << list.length() << " elements in the list" << std::endl; + return EXIT_SUCCESS; } diff --git a/recipes/assimp/5.x/conandata.yml b/recipes/assimp/5.x/conandata.yml index 42aa3dd3fee858..503614eeac72ad 100644 --- a/recipes/assimp/5.x/conandata.yml +++ b/recipes/assimp/5.x/conandata.yml @@ -1,18 +1,16 @@ sources: + "5.4.1": + url: "https://github.com/assimp/assimp/archive/refs/tags/v5.4.1.tar.gz" + sha256: "a1bf71c4eb851ca336bba301730cd072b366403e98e3739d6a024f6313b8f954" "5.3.1": url: "https://github.com/assimp/assimp/archive/refs/tags/v5.3.1.tar.gz" sha256: "a07666be71afe1ad4bc008c2336b7c688aca391271188eb9108d0c6db1be53f1" "5.2.5": url: "https://github.com/assimp/assimp/archive/refs/tags/v5.2.5.tar.gz" sha256: "b5219e63ae31d895d60d98001ee5bb809fb2c7b2de1e7f78ceeb600063641e1a" - "5.2.2": - url: "https://github.com/assimp/assimp/archive/refs/tags/v5.2.2.tar.gz" - sha256: "ad76c5d86c380af65a9d9f64e8fc57af692ffd80a90f613dfc6bd945d0b80bb4" "5.1.6": url: "https://github.com/assimp/assimp/archive/refs/tags/v5.1.6.tar.gz" sha256: "52ad3a3776ce320c8add531dbcb2d3b93f2e1f10fcff5ac30178b09ba934d084" patches: - "5.2.2": - - patch_file: "patches/0005-fix-unzip.patch" "5.1.6": - patch_file: "patches/0005-fix-unzip.patch" diff --git a/recipes/assimp/5.x/conanfile.py b/recipes/assimp/5.x/conanfile.py index 9d8d654edce033..67b7cd93c924b5 100644 --- a/recipes/assimp/5.x/conanfile.py +++ b/recipes/assimp/5.x/conanfile.py @@ -2,8 +2,9 @@ from conan.errors import ConanInvalidConfiguration from conan.tools.build import stdcpp_library, check_min_cppstd from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout +from conan.tools.env import VirtualBuildEnv from conan.tools.files import apply_conandata_patches, collect_libs, copy, export_conandata_patches, get, replace_in_file, rmdir, save -from conan.tools.microsoft import is_msvc +from conan.tools.microsoft import is_msvc, is_msvc_static_runtime from conan.tools.scm import Version import os @@ -205,31 +206,47 @@ def validate(self): if Version(self.version) < "5.3.0" and self._depends_on_clipper and Version(self.dependencies["clipper"].ref.version).major != "4": raise ConanInvalidConfiguration("Only 'clipper/4.x' is supported") + def build_requirements(self): + if Version(self.version) >= "5.4.0": + self.tool_requires("cmake/[>=3.22 <4]") + def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) def generate(self): tc = CMakeToolchain(self) - tc.variables["ASSIMP_HUNTER_ENABLED"] = False - tc.variables["ASSIMP_IGNORE_GIT_HASH"] = True - tc.variables["ASSIMP_RAPIDJSON_NO_MEMBER_ITERATOR"] = False tc.variables["ASSIMP_ANDROID_JNIIOSYSTEM"] = False tc.variables["ASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT"] = False tc.variables["ASSIMP_BUILD_ALL_EXPORTERS_BY_DEFAULT"] = False tc.variables["ASSIMP_BUILD_ASSIMP_TOOLS"] = False + tc.variables["ASSIMP_BUILD_DOCS"] = False + tc.variables["ASSIMP_BUILD_DRACO"] = False + tc.variables["ASSIMP_BUILD_FRAMEWORK"] = False + tc.variables["ASSIMP_BUILD_MINIZIP"] = False tc.variables["ASSIMP_BUILD_SAMPLES"] = False tc.variables["ASSIMP_BUILD_TESTS"] = False + tc.variables["ASSIMP_BUILD_ZLIB"] = False tc.variables["ASSIMP_DOUBLE_PRECISION"] = self.options.double_precision + tc.variables["ASSIMP_HUNTER_ENABLED"] = False + tc.variables["ASSIMP_IGNORE_GIT_HASH"] = True + tc.variables["ASSIMP_INJECT_DEBUG_POSTFIX"] = False + tc.variables["ASSIMP_INSTALL"] = True tc.variables["ASSIMP_INSTALL_PDB"] = False tc.variables["ASSIMP_NO_EXPORT"] = False - tc.variables["ASSIMP_BUILD_MINIZIP"] = False + tc.variables["ASSIMP_OPT_BUILD_PACKAGES"] = False + tc.variables["ASSIMP_RAPIDJSON_NO_MEMBER_ITERATOR"] = False + tc.variables["ASSIMP_UBSAN"] = False + tc.variables["ASSIMP_WARNINGS_AS_ERRORS"] = False + tc.variables["USE_STATIC_CRT"] = is_msvc_static_runtime(self) + for option, (definition, _) in self._format_option_map.items(): value = self.options.get_safe(option) if value is not None: tc.variables[definition] = value if self.settings.os == "Windows": tc.preprocessor_definitions["NOMINMAX"] = 1 - tc.cache_variables["CMAKE_POLICY_DEFAULT_CMP0077"] = "NEW" # to avoid warnings + if Version(self.version) < "5.4.0": + tc.cache_variables["CMAKE_POLICY_DEFAULT_CMP0077"] = "NEW" tc.cache_variables["CMAKE_PROJECT_Assimp_INCLUDE"] = "conan_deps.cmake" tc.cache_variables["WITH_CLIPPER"] = self._depends_on_clipper @@ -246,24 +263,25 @@ def generate(self): cd.set_property("utfcpp", "cmake_target_name", "utf8cpp::utf8cpp") cd.generate() + venv = VirtualBuildEnv(self) + venv.generate() + def _patch_sources(self): apply_conandata_patches(self) # Don't force several compiler and linker flags - replace_mapping = [ - ("-fPIC", ""), - ("-g ", ""), - ("/WX", ""), - ("-Werror", ""), - ("SET(CMAKE_POSITION_INDEPENDENT_CODE ON)", ""), - ('SET(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG /MDd /Ob2 /DEBUG:FULL /Zi")', ""), - ('SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /D_DEBUG /Zi /Od")', ""), - ('SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")', ""), - ('SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG:FULL /PDBALTPATH:%_PDB% /OPT:REF /OPT:ICF")', ""), - ] - for before, after in replace_mapping: - replace_in_file(self, os.path.join(self.source_folder, "CMakeLists.txt"), before, after, strict=False) - replace_in_file(self, os.path.join(self.source_folder, "code", "CMakeLists.txt"), before, after, strict=False) + for pattern in [ + "-fPIC", + "-g ", + "SET(CMAKE_POSITION_INDEPENDENT_CODE ON)", + 'SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /D_DEBUG /Zi /Od")', + 'SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG:FULL /PDBALTPATH:%_PDB% /OPT:REF /OPT:ICF")', + ]: + replace_in_file(self, os.path.join(self.source_folder, "CMakeLists.txt"), pattern, "") + + for pattern in ["-Werror", "/WX"]: + replace_in_file(self, os.path.join(self.source_folder, "CMakeLists.txt"), pattern, "") + replace_in_file(self, os.path.join(self.source_folder, "code", "CMakeLists.txt"), pattern, "") # Make sure vendored libs are not used by accident by removing their subdirs allow_vendored = ["Open3DGC"] @@ -298,6 +316,8 @@ def _patch_sources(self): ]: save(self, os.path.join(self.source_folder, "contrib", contrib_header), f"#include <{include}>\n") + if Version(self.version) >= "5.4.0": + rmdir(self, self.source_path.joinpath("contrib", "utf8cpp")) # minizip is provided via conan_deps.cmake, no need to use pkgconfig replace_in_file(self, os.path.join(self.source_folder, "CMakeLists.txt"), diff --git a/recipes/assimp/config.yml b/recipes/assimp/config.yml index c3337bd62baf17..e3725a7b778880 100644 --- a/recipes/assimp/config.yml +++ b/recipes/assimp/config.yml @@ -1,9 +1,9 @@ versions: + "5.4.1": + folder: "5.x" "5.3.1": folder: "5.x" "5.2.5": folder: "5.x" - "5.2.2": - folder: "5.x" "5.1.6": folder: "5.x" diff --git a/recipes/astc-codec/all/test_package/atlas_small_4x4.astc b/recipes/astc-codec/all/test_package/atlas_small_4x4.astc deleted file mode 100644 index 0dd080b12d23fa..00000000000000 Binary files a/recipes/astc-codec/all/test_package/atlas_small_4x4.astc and /dev/null differ diff --git a/recipes/astc-codec/all/test_package/conanfile.py b/recipes/astc-codec/all/test_package/conanfile.py index 9f50bbe4c73b2f..98ab55852ad565 100644 --- a/recipes/astc-codec/all/test_package/conanfile.py +++ b/recipes/astc-codec/all/test_package/conanfile.py @@ -23,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - bees = os.path.join(self.source_folder, "atlas_small_4x4.astc") - self.run(f"{bin_path} {bees} 256 256", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/astc-codec/all/test_package/test_package.cpp b/recipes/astc-codec/all/test_package/test_package.cpp index ec0a2e3ad6195e..266f4473a5391c 100644 --- a/recipes/astc-codec/all/test_package/test_package.cpp +++ b/recipes/astc-codec/all/test_package/test_package.cpp @@ -8,21 +8,13 @@ int main(int argc, char **argv) { - if (argc < 4) { - std::cerr << "Need at least three argument\n"; - } - std::ifstream stream(argv[1], std::ios::in | std::ios::binary); + std::ifstream stream("fake-file.astc", std::ios::in | std::ios::binary); std::vector astc_data((std::istreambuf_iterator(stream)), std::istreambuf_iterator()); - const size_t width = std::stoi(argv[2]); - const size_t height = std::stoi(argv[3]); - - std::vector result; - result.resize(width * height * 4); - bool success = astc_codec::ASTCDecompressToRGBA( - astc_data.data(), astc_data.size(), width, height, astc_codec::FootprintType::k4x4, - result.data(), result.size(), /* stride */ width * 4); + astc_data.data(), 100, 100, 100, astc_codec::FootprintType::k4x4, NULL, 100, 100); + + std::cout << "Test: " << success << std::endl; stream.close(); diff --git a/recipes/astc-codec/all/test_v1_package/conanfile.py b/recipes/astc-codec/all/test_v1_package/conanfile.py index 3605ef54030927..38f4483872d47f 100644 --- a/recipes/astc-codec/all/test_v1_package/conanfile.py +++ b/recipes/astc-codec/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - bees = os.path.join(self.source_folder, os.pardir, "test_package", "atlas_small_4x4.astc") - self.run(f"{bin_path} {bees} 256 256", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/audiofile/all/test_package/conanfile.py b/recipes/audiofile/all/test_package/conanfile.py index fb1d035fc5b120..d120a992c06a69 100644 --- a/recipes/audiofile/all/test_package/conanfile.py +++ b/recipes/audiofile/all/test_package/conanfile.py @@ -22,5 +22,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - wav_path = os.path.join(self.source_folder, "sine.wav") - self.run(f"{bin_path} {wav_path}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/audiofile/all/test_package/sine.wav b/recipes/audiofile/all/test_package/sine.wav deleted file mode 100644 index a3225d12bf297b..00000000000000 Binary files a/recipes/audiofile/all/test_package/sine.wav and /dev/null differ diff --git a/recipes/audiofile/all/test_package/test_package.cpp b/recipes/audiofile/all/test_package/test_package.cpp index d95bc64031cdab..906aa9efa03275 100644 --- a/recipes/audiofile/all/test_package/test_package.cpp +++ b/recipes/audiofile/all/test_package/test_package.cpp @@ -1,18 +1,15 @@ // workaround for a missing include in v1.0.9 and earlier +#include +#include #include - #include -#include + int main(int argc, char **argv) { - if (argc < 2) { - std::cerr << "Need at least one argument" << std::endl; - return 1; - } AudioFile audioFile; - audioFile.load(argv[1]); + audioFile.load("fake-file.wav"); audioFile.printSummary(); return 0; } diff --git a/recipes/audiofile/all/test_v1_package/conanfile.py b/recipes/audiofile/all/test_v1_package/conanfile.py index 21642db6ce1baa..38f4483872d47f 100644 --- a/recipes/audiofile/all/test_v1_package/conanfile.py +++ b/recipes/audiofile/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - wav_path = os.path.join(self.source_folder, os.pardir, "test_package", "sine.wav") - self.run(f"{bin_path} {wav_path}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/behaviortree.cpp/all/conandata.yml b/recipes/behaviortree.cpp/all/conandata.yml index 83362c25cf1791..25beb0006c60f1 100644 --- a/recipes/behaviortree.cpp/all/conandata.yml +++ b/recipes/behaviortree.cpp/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "4.6.1": + url: "https://github.com/BehaviorTree/BehaviorTree.CPP/archive/refs/tags/4.6.1.tar.gz" + sha256: "a4e0dd92b200eedfbc6a16bebe613aeeb84b685416211b68fd097d21254f324b" "4.6.0": url: "https://github.com/BehaviorTree/BehaviorTree.CPP/archive/refs/tags/4.6.0.tar.gz" sha256: "b24fed4f51212ea40bc492f7d4a310b1672bc05df6a83f2341c41ccf233307a9" diff --git a/recipes/behaviortree.cpp/all/conanfile.py b/recipes/behaviortree.cpp/all/conanfile.py index abd62b04171b48..219b2a799c6c65 100644 --- a/recipes/behaviortree.cpp/all/conanfile.py +++ b/recipes/behaviortree.cpp/all/conanfile.py @@ -17,6 +17,7 @@ class BehaviorTreeCPPConan(ConanFile): url = "https://github.com/conan-io/conan-center-index" homepage = "https://github.com/BehaviorTree/BehaviorTree.CPP" topics = ("ai", "robotics", "games", "coordination") + package_type = "library" settings = "os", "arch", "compiler", "build_type" options = { "shared": [True, False], diff --git a/recipes/behaviortree.cpp/config.yml b/recipes/behaviortree.cpp/config.yml index c9c4fe10751ca0..6056a1ddad4882 100644 --- a/recipes/behaviortree.cpp/config.yml +++ b/recipes/behaviortree.cpp/config.yml @@ -1,4 +1,6 @@ versions: + "4.6.1": + folder: all "4.6.0": folder: all "4.5.2": diff --git a/recipes/benchmark/all/conandata.yml b/recipes/benchmark/all/conandata.yml index 8a3c24a77b927d..102609d9c75c2a 100644 --- a/recipes/benchmark/all/conandata.yml +++ b/recipes/benchmark/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.8.4": + url: "https://github.com/google/benchmark/archive/refs/tags/v1.8.4.tar.gz" + sha256: "3e7059b6b11fb1bbe28e33e02519398ca94c1818874ebed18e504dc6f709be45" "1.8.3": url: "https://github.com/google/benchmark/archive/refs/tags/v1.8.3.tar.gz" sha256: "6bc180a57d23d4d9515519f92b0c83d61b05b5bab188961f36ac7b06b0d9e9ce" diff --git a/recipes/benchmark/all/conanfile.py b/recipes/benchmark/all/conanfile.py index 4143dd1a1d5dd1..65bfbc736fc66e 100644 --- a/recipes/benchmark/all/conanfile.py +++ b/recipes/benchmark/all/conanfile.py @@ -113,7 +113,6 @@ def package_info(self): self.cpp_info.components["_benchmark"].system_libs.append("kstat") if self.options.get_safe("enable_libpfm"): self.cpp_info.components["_benchmark"].requires.append("libpfm4::libpfm4") - self.cpp_info.components["benchmark_main"].set_property("cmake_target_name", "benchmark::benchmark_main") self.cpp_info.components["benchmark_main"].libs = ["benchmark_main"] diff --git a/recipes/benchmark/config.yml b/recipes/benchmark/config.yml index f3ed1f1e957435..13430070c77977 100644 --- a/recipes/benchmark/config.yml +++ b/recipes/benchmark/config.yml @@ -1,4 +1,6 @@ versions: + "1.8.4": + folder: all "1.8.3": folder: all "1.8.2": diff --git a/recipes/cppcheck/all/conandata.yml b/recipes/cppcheck/all/conandata.yml index 51d7be47f0134e..48ffe24a028f59 100644 --- a/recipes/cppcheck/all/conandata.yml +++ b/recipes/cppcheck/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "2.14.1": + url: "https://github.com/danmar/cppcheck/archive/2.14.1.tar.gz" + sha256: "22d1403fbc3158f35b5216d7b0a50bbaf0c80bf6663933a71f65cc4fc307ff3d" "2.14": url: "https://github.com/danmar/cppcheck/archive/2.14.0.tar.gz" sha256: "2d2ead75db10c5993d77c8dfe854dc42b00fac65953611bb6c83e25fc74b9d50" diff --git a/recipes/cppcheck/config.yml b/recipes/cppcheck/config.yml index 939fbf2adada0d..c85ff5b73f834b 100644 --- a/recipes/cppcheck/config.yml +++ b/recipes/cppcheck/config.yml @@ -1,6 +1,8 @@ versions: "2.14": folder: all + "2.14.1": + folder: all "2.13.4": folder: all "2.13.3": diff --git a/recipes/cpprestsdk/all/conanfile.py b/recipes/cpprestsdk/all/conanfile.py index c75c41fcad7c4f..c8ac42529d53c2 100644 --- a/recipes/cpprestsdk/all/conanfile.py +++ b/recipes/cpprestsdk/all/conanfile.py @@ -112,7 +112,13 @@ def package_info(self): # cpprestsdk_boost_internal self.cpp_info.components["cpprestsdk_boost_internal"].set_property("cmake_target_name", "cpprestsdk::cpprestsdk_boost_internal") self.cpp_info.components["cpprestsdk_boost_internal"].includedirs = [] - self.cpp_info.components["cpprestsdk_boost_internal"].requires = ["boost::boost"] + ## List of Boost components cpprestsdk depends on: + ## see https://github.com/microsoft/cpprestsdk/blob/v2.10.19/Release/cmake/cpprest_find_boost.cmake#L77-L106 + self.cpp_info.components["cpprestsdk_boost_internal"].requires = ["boost::headers", "boost::system"] + if self.settings.os != "Windows": + self.cpp_info.components["cpprestsdk_boost_internal"].requires.extend(["boost::random", "boost::thread", "boost::filesystem", "boost::chrono", "boost::atomic"]) + if self.settings.os != "Android": + self.cpp_info.components["cpprestsdk_boost_internal"].requires.extend(["boost::date_time", "boost::regex"]) # cpprestsdk_openssl_internal self.cpp_info.components["cpprestsdk_openssl_internal"].set_property("cmake_target_name", "cpprestsdk::cpprestsdk_openssl_internal") self.cpp_info.components["cpprestsdk_openssl_internal"].includedirs = [] diff --git a/recipes/cpptrace/all/conandata.yml b/recipes/cpptrace/all/conandata.yml index d5f27bb8b9c86d..7157c7a227bca8 100644 --- a/recipes/cpptrace/all/conandata.yml +++ b/recipes/cpptrace/all/conandata.yml @@ -1,5 +1,9 @@ sources: # Newer versions at the top + "0.6.0": + url: + - "https://github.com/jeremy-rifkin/cpptrace/archive/refs/tags/v0.6.0.tar.gz" + sha256: "7c2996f03d15f61016bc81fe7fa5220b1cc42498333c5c0e699ad2f96b918b96" "0.5.4": url: - "https://github.com/jeremy-rifkin/cpptrace/archive/refs/tags/v0.5.4.tar.gz" diff --git a/recipes/cpptrace/config.yml b/recipes/cpptrace/config.yml index fb96f982bc2720..7eb7efe0a9b09d 100644 --- a/recipes/cpptrace/config.yml +++ b/recipes/cpptrace/config.yml @@ -1,5 +1,7 @@ versions: # Newer versions at the top + "0.6.0": + folder: all "0.5.4": folder: all "0.5.3": diff --git a/recipes/dav1d/all/conandata.yml b/recipes/dav1d/all/conandata.yml index a478887dc4fcc3..f8c452bd8a5e40 100644 --- a/recipes/dav1d/all/conandata.yml +++ b/recipes/dav1d/all/conandata.yml @@ -1,19 +1,10 @@ sources: + "1.4.1": + url: "http://ftp.videolan.org/pub/videolan/dav1d/1.4.1/dav1d-1.4.1.tar.xz" + sha256: "8d407dd5fe7986413c937b14e67f36aebd06e1fa5cfec679d10e548476f2d5f8" "1.3.0": url: "http://ftp.videolan.org/pub/videolan/dav1d/1.3.0/dav1d-1.3.0.tar.xz" sha256: "6d8be2741c505c47f8f1ced3c9cc427759243436553d01d1acce201f87b39e71" "1.2.1": url: "http://ftp.videolan.org/pub/videolan/dav1d/1.2.1/dav1d-1.2.1.tar.xz" sha256: "4e33eb61ec54c768a16da0cf8fa0928b4c4593f5f804a3c887d4a21c318340b2" - "1.1.0": - url: "http://ftp.videolan.org/pub/videolan/dav1d/1.1.0/dav1d-1.1.0.tar.xz" - sha256: "fb57aae7875f28c30fb3dbae4a3683d27e2f91dde09ce5c60c22cef9bc58dfd1" - "1.0.0": - url: "http://ftp.videolan.org/pub/videolan/dav1d/1.0.0/dav1d-1.0.0.tar.xz" - sha256: "51737db7e4897e599684f873a4725176dd3c779e639411d7c4fce134bb5ebb82" - "0.9.1": - url: "http://ftp.videolan.org/pub/videolan/dav1d/0.9.1/dav1d-0.9.1.tar.xz" - sha256: "a35d6468013eb14e8093ea463594f8b89aba1775a3005fc9ec6fa36b2d2c71d7" - "0.8.1": - url: "http://ftp.videolan.org/pub/videolan/dav1d/0.8.1/dav1d-0.8.1.tar.xz" - sha256: "a4b503063d411dd129f5eb43616675e613b36ac0aa1e449976d645c05add21ea" diff --git a/recipes/dav1d/all/conanfile.py b/recipes/dav1d/all/conanfile.py index 5882f930a7dbde..08d0c4d8be0f58 100644 --- a/recipes/dav1d/all/conanfile.py +++ b/recipes/dav1d/all/conanfile.py @@ -5,7 +5,6 @@ from conan.tools.layout import basic_layout from conan.tools.meson import Meson, MesonToolchain from conan.tools.microsoft import is_msvc -from conan.tools.scm import Version import os required_conan_version = ">=1.53.0" @@ -26,7 +25,7 @@ class Dav1dConan(ConanFile): "bit_depth": ["all", 8, 16], "with_tools": [True, False], "assembly": [True, False], - "with_avx512": [True, False], + "with_avx512": ["deprecated", True, False], } default_options = { "shared": False, @@ -34,7 +33,7 @@ class Dav1dConan(ConanFile): "bit_depth": "all", "with_tools": True, "assembly": True, - "with_avx512": False, + "with_avx512": "deprecated", } def config_options(self): @@ -43,24 +42,27 @@ def config_options(self): if is_msvc(self) and self.settings.build_type == "Debug": # debug builds with assembly often causes linker hangs or LNK1000 self.options.assembly = False - if Version(self.version) < "1.0.0": - del self.options.with_avx512 def configure(self): if self.options.shared: self.options.rm_safe("fPIC") self.settings.rm_safe("compiler.cppstd") self.settings.rm_safe("compiler.libcxx") - if not self.options.assembly: - self.options.rm_safe("with_avx512") def layout(self): basic_layout(self, src_folder="src") + def package_id(self): + del self.info.options.with_avx512 + + def validate(self): + if self.options.with_avx512 != "deprecated": + self.output.warning("The 'with_avx512' option is deprecated and has no effect") + def build_requirements(self): - self.tool_requires("meson/1.2.1") + self.tool_requires("meson/1.4.0") if self.options.assembly: - self.tool_requires("nasm/2.15.05") + self.tool_requires("nasm/2.16.01") def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) @@ -72,8 +74,6 @@ def generate(self): tc = MesonToolchain(self) tc.project_options["enable_tests"] = False tc.project_options["enable_asm"] = self.options.assembly - if Version(self.version) < "1.0.0": - tc.project_options["enable_avx512"] = self.options.get_safe("with_avx512", False) tc.project_options["enable_tools"] = self.options.with_tools if self.options.bit_depth == "all": tc.project_options["bitdepths"] = "8,16" diff --git a/recipes/dav1d/config.yml b/recipes/dav1d/config.yml index 21233fe470f83c..9202e5ce9c4a9a 100644 --- a/recipes/dav1d/config.yml +++ b/recipes/dav1d/config.yml @@ -1,13 +1,7 @@ versions: + "1.4.1": + folder: "all" "1.3.0": folder: "all" "1.2.1": folder: "all" - "1.1.0": - folder: "all" - "1.0.0": - folder: "all" - "0.9.1": - folder: "all" - "0.8.1": - folder: "all" diff --git a/recipes/dfp/all/conandata.yml b/recipes/dfp/all/conandata.yml index ef5dd3970cc875..753d76e24d8132 100644 --- a/recipes/dfp/all/conandata.yml +++ b/recipes/dfp/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.0.3": + url: "https://github.com/epam/DFP/releases/download/1.0.3/native-sources.tar.gz" + sha256: "362e324687d6b8ca42490811331052c46cccb64a2cf078f3b6c8df92a374497c" "1.0.2": url: "https://github.com/epam/DFP/releases/download/1.0.2-cxx/native-sources.tar.gz" sha256: "f62acab311086c1207f7d58185232c7e86e11ed606596d9afcff49703c196058" diff --git a/recipes/dfp/config.yml b/recipes/dfp/config.yml index 8457ca9a4a8cd8..f625d5d2b747ff 100644 --- a/recipes/dfp/config.yml +++ b/recipes/dfp/config.yml @@ -1,3 +1,5 @@ versions: + "1.0.3": + folder: all "1.0.2": folder: all diff --git a/recipes/elfutils/all/conanfile.py b/recipes/elfutils/all/conanfile.py index 7d15bdd2937ed9..759afadd553ee8 100644 --- a/recipes/elfutils/all/conanfile.py +++ b/recipes/elfutils/all/conanfile.py @@ -171,6 +171,7 @@ def package_info(self): # library components self.cpp_info.components["libelf"].libs = ["elf"] self.cpp_info.components["libelf"].requires = ["zlib::zlib"] + self.cpp_info.components["libelf"].set_property("pkg_config_name", "libelf") if self.options.with_bzlib: self.cpp_info.components["libelf"].requires.append("bzip2::bzip2") if self.options.with_lzma: @@ -182,6 +183,7 @@ def package_info(self): self.cpp_info.components["libdw"].libs = ["dw"] self.cpp_info.components["libdw"].requires = ["libelf"] + self.cpp_info.components["libdw"].set_property("pkg_config_name", "libdw") if self.settings.os in ["Linux", "FreeBSD"]: self.cpp_info.components["libdw"].system_libs.extend(["dl"]) @@ -192,6 +194,7 @@ def package_info(self): if self.options.get_safe("libdebuginfod"): self.cpp_info.components["libdebuginfod"].libs = ["debuginfod"] self.cpp_info.components["libdebuginfod"].requires = ["libcurl::curl"] + self.cpp_info.components["libdebuginfod"].set_property("pkg_config_name", "libdebuginfod") # utilities bin_path = os.path.join(self.package_folder, "bin") diff --git a/recipes/flac/all/conandata.yml b/recipes/flac/all/conandata.yml index e2b6d7651827c2..da984a86264a90 100644 --- a/recipes/flac/all/conandata.yml +++ b/recipes/flac/all/conandata.yml @@ -9,6 +9,14 @@ sources: url: "https://github.com/xiph/flac/archive/1.3.3.tar.gz" sha256: "668cdeab898a7dd43cf84739f7e1f3ed6b35ece2ef9968a5c7079fe9adfe1689" patches: + "1.4.3": + - patch_file: "patches/1.4.2-002-ignore-dll_export-define.patch" + patch_description: "Ignore autotools-specific DLL_EXPORT define in export.h" + patch_type: "conan" + "1.4.2": + - patch_file: "patches/1.4.2-002-ignore-dll_export-define.patch" + patch_description: "Ignore autotools-specific DLL_EXPORT define in export.h" + patch_type: "conan" "1.3.3": - patch_file: "patches/fix-cmake-1.3.3.patch" patch_description: "Various adaptations in CMakeLists.txt files to improve compatibility with Conan." diff --git a/recipes/flac/all/conanfile.py b/recipes/flac/all/conanfile.py index e8bc14ed2a18c2..2e622f2d8d1251 100644 --- a/recipes/flac/all/conanfile.py +++ b/recipes/flac/all/conanfile.py @@ -56,6 +56,7 @@ def generate(self): tc.variables["BUILD_EXAMPLES"] = False tc.variables["BUILD_DOCS"] = False tc.variables["BUILD_TESTING"] = False + tc.cache_variables["CMAKE_POLICY_DEFAULT_CMP0077"] = "NEW" tc.generate() cd = CMakeDeps(self) cd.generate() @@ -105,7 +106,6 @@ def package_info(self): self.cpp_info.components["libflac"].system_libs += ["m"] bin_path = os.path.join(self.package_folder, "bin") - self.output.info("Appending PATH environment variable: {}".format(bin_path)) self.env_info.PATH.append(bin_path) # TODO: to remove in conan v2 diff --git a/recipes/flac/all/patches/1.4.2-002-ignore-dll_export-define.patch b/recipes/flac/all/patches/1.4.2-002-ignore-dll_export-define.patch new file mode 100644 index 00000000000000..0ce0853b69c7ef --- /dev/null +++ b/recipes/flac/all/patches/1.4.2-002-ignore-dll_export-define.patch @@ -0,0 +1,22 @@ +--- include/FLAC/export.h ++++ include/FLAC/export.h +@@ -74,7 +74,7 @@ + */ + #if defined(_WIN32) + +-#if defined(FLAC__NO_DLL) && !(defined(DLL_EXPORT)) ++#if defined(FLAC__NO_DLL) + #define FLAC_API + #else + #ifdef FLAC_API_EXPORTS +--- include/FLAC++/export.h ++++ include/FLAC++/export.h +@@ -73,7 +73,7 @@ + * by libtool, must override FLAC__NO_DLL on building shared components + */ + #if defined(_WIN32) +-#if defined(FLAC__NO_DLL) && !(defined(DLL_EXPORT)) ++#if defined(FLAC__NO_DLL) + #define FLACPP_API + #else + #ifdef FLACPP_API_EXPORTS diff --git a/recipes/flatbush/all/conandata.yml b/recipes/flatbush/all/conandata.yml index f43d2fb04fed7b..4382ecd215405e 100644 --- a/recipes/flatbush/all/conandata.yml +++ b/recipes/flatbush/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.2.1": + url: "https://github.com/chusitoo/flatbush/archive/refs/tags/v1.2.1.zip" + sha256: "7f8226cb9a58cc75c99800a8fb213b1c2c5df81051ec559d5ff7b4ed0e8c097a" "1.2.0": url: "https://github.com/chusitoo/flatbush/archive/refs/tags/v1.2.0.zip" sha256: "d8d0471ad6aba1e4b1160abc38a0fe21a35e3ea1c2a9509ce9910072f7fc24bb" diff --git a/recipes/flatbush/config.yml b/recipes/flatbush/config.yml index 2424e32f70b3e4..7b2fedacd73876 100644 --- a/recipes/flatbush/config.yml +++ b/recipes/flatbush/config.yml @@ -1,4 +1,6 @@ versions: + "1.2.1": + folder: "all" "1.2.0": folder: "all" "1.1.0": diff --git a/recipes/foxglove-schemas-protobuf/all/conanfile.py b/recipes/foxglove-schemas-protobuf/all/conanfile.py index 5a5291f2d6ec4d..c4e016879327ef 100644 --- a/recipes/foxglove-schemas-protobuf/all/conanfile.py +++ b/recipes/foxglove-schemas-protobuf/all/conanfile.py @@ -8,7 +8,7 @@ import os -required_conan_version = ">=1.53.0" +required_conan_version = ">=1.60.0" class FoxgloveSchemasProtobufConan(ConanFile): @@ -64,11 +64,11 @@ def validate(self): if self.settings.os == "Windows" and self.options.shared: raise ConanInvalidConfiguration("Windows shared builds are not supported yet.") - def build_requirements(self): - self.tool_requires("protobuf/3.21.9") - def requirements(self): - self.requires("protobuf/3.21.9", transitive_headers=True, transitive_libs=True) + self.requires("protobuf/3.21.12", transitive_headers=True, transitive_libs=True) + + def build_requirements(self): + self.tool_requires("protobuf/") def layout(self): cmake_layout(self, src_folder="src") diff --git a/recipes/geographiclib/all/conanfile.py b/recipes/geographiclib/all/conanfile.py index 0fb1787e608594..64388bbb926e0c 100644 --- a/recipes/geographiclib/all/conanfile.py +++ b/recipes/geographiclib/all/conanfile.py @@ -3,10 +3,11 @@ 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, collect_libs, copy, export_conandata_patches, get, + apply_conandata_patches, copy, export_conandata_patches, get, replace_in_file, rm, rmdir ) from conan.tools.scm import Version +from conan.tools.microsoft import is_msvc import os required_conan_version = ">=1.53.0" @@ -105,11 +106,6 @@ def _patch_sources(self): replace_in_file(self, cmakelists, "add_subdirectory (js)", "") # Don't install system libs replace_in_file(self, cmakelists, "include (InstallRequiredSystemLibraries)", "") - # Don't build tools if asked - if not self.options.tools: - replace_in_file(self, cmakelists, "add_subdirectory (tools)", "") - replace_in_file(self, os.path.join(self.source_folder, "cmake", "CMakeLists.txt"), - "${TOOLS}", "") # Disable -Werror replace_in_file(self, cmakelists, "-Werror", "") replace_in_file(self, cmakelists, "/WX", "") @@ -132,13 +128,22 @@ def package(self): ]: rmdir(self, os.path.join(os.path.join(self.package_folder, folder))) rm(self, "*.pdb", os.path.join(self.package_folder, "bin")) + if not self.options.tools: + rmdir(self, os.path.join(self.package_folder, "sbin")) + bin_files = [it for it in os.listdir(os.path.join(self.package_folder, "bin")) if not it.endswith(".dll")] + for it in bin_files: + rm(self, it, os.path.join(self.package_folder, "bin")) def package_info(self): self.cpp_info.set_property("cmake_file_name", "geographiclib") self.cpp_info.set_property("cmake_target_name", "GeographicLib::GeographicLib") self.cpp_info.set_property("pkg_config_name", "geographiclib") - self.cpp_info.libs = collect_libs(self) + suffix = "_d" if self.settings.build_type == "Debug" and is_msvc(self) else "" + suffix += "-i" if is_msvc(self) and self.options.shared else "" + self.cpp_info.libs = [f"GeographicLib{suffix}"] if Version(self.version) >= "2" else [f"Geographic{suffix}"] self.cpp_info.defines.append("GEOGRAPHICLIB_SHARED_LIB={}".format("1" if self.options.shared else "0")) + if self.settings.os in ["Linux", "FreeBSD"]: + self.cpp_info.system_libs = ["m"] # TODO: to remove in conan v2 once cmake_find_package_* generators removed self.cpp_info.filenames["cmake_find_package"] = "geographiclib" diff --git a/recipes/glaze/all/conandata.yml b/recipes/glaze/all/conandata.yml index 64d0781a702acc..41adcfedee6fdf 100644 --- a/recipes/glaze/all/conandata.yml +++ b/recipes/glaze/all/conandata.yml @@ -1,4 +1,10 @@ sources: + "2.6.6": + url: "https://github.com/stephenberry/glaze/archive/v2.6.6.tar.gz" + sha256: "c8a6b20401eb88419621c8ed25cd69bfee72e27982c1bdc3cec376922c08c2dd" + "2.6.5": + url: "https://github.com/stephenberry/glaze/archive/v2.6.5.tar.gz" + sha256: "5d5f3b41c7803cded9602ee93c80ea38fd3521cdaad6ea1836f818046d21e504" "2.6.4": url: "https://github.com/stephenberry/glaze/archive/v2.6.4.tar.gz" sha256: "79aff3370c6fe79be8e1774c4fab3e450a10444b91c2aa15aeebf5f54efedc5d" diff --git a/recipes/glaze/config.yml b/recipes/glaze/config.yml index 6f089f80d0b1b2..1675f9e4883427 100644 --- a/recipes/glaze/config.yml +++ b/recipes/glaze/config.yml @@ -1,4 +1,8 @@ versions: + "2.6.6": + folder: all + "2.6.5": + folder: all "2.6.4": folder: all "2.6.3": diff --git a/recipes/imgui/all/conandata.yml b/recipes/imgui/all/conandata.yml index 243fb74f55969c..dd6a3a05e21f7e 100644 --- a/recipes/imgui/all/conandata.yml +++ b/recipes/imgui/all/conandata.yml @@ -1,4 +1,10 @@ sources: + "1.90.7": + url: "https://github.com/ocornut/imgui/archive/v1.90.7.tar.gz" + sha256: "872574217643d4ad7e9e6df420bb8d9e0d468fb90641c2bf50fd61745e05de99" + "1.90.7-docking": + url: "https://github.com/ocornut/imgui/archive/v1.90.7-docking.tar.gz" + sha256: "582a9061a508b82b0ff6504aa17af6bb449bca9edf0a0f0f33bf729252cd3194" "1.90.6": url: "https://github.com/ocornut/imgui/archive/v1.90.6.tar.gz" sha256: "70b4b05ac0938e82b4d5b8d59480d3e2ca63ca570dfb88c55023831f387237ad" diff --git a/recipes/imgui/config.yml b/recipes/imgui/config.yml index 24603cc17b199b..4147c74db48056 100644 --- a/recipes/imgui/config.yml +++ b/recipes/imgui/config.yml @@ -1,4 +1,8 @@ versions: + "1.90.7": + folder: all + "1.90.7-docking": + folder: all "1.90.6": folder: all "1.90.6-docking": diff --git a/recipes/ktx/all/test_package/conanfile.py b/recipes/ktx/all/test_package/conanfile.py index 5ec8993308c18b..98ab55852ad565 100644 --- a/recipes/ktx/all/test_package/conanfile.py +++ b/recipes/ktx/all/test_package/conanfile.py @@ -23,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - ktx_path = os.path.join(self.source_folder, "etc1.ktx") - self.run(f"{bin_path} {ktx_path}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/ktx/all/test_package/etc1.ktx b/recipes/ktx/all/test_package/etc1.ktx deleted file mode 100644 index ff6f8186fd1db5..00000000000000 Binary files a/recipes/ktx/all/test_package/etc1.ktx and /dev/null differ diff --git a/recipes/ktx/all/test_package/test_package.c b/recipes/ktx/all/test_package/test_package.c index f877690cdb0d65..ebd19452339abe 100644 --- a/recipes/ktx/all/test_package/test_package.c +++ b/recipes/ktx/all/test_package/test_package.c @@ -4,16 +4,12 @@ int main(int argc, char **argv) { - if (argc < 2) { - fprintf(stderr, "Need at least one argument\n"); - return 1; - } - ktxTexture* texture; KTX_error_code result; - result = ktxTexture_CreateFromNamedFile(argv[1], + result = ktxTexture_CreateFromNamedFile("fake-file.ktx", KTX_TEXTURE_CREATE_LOAD_IMAGE_DATA_BIT, &texture); + printf("Test: %s\n", ktxErrorString(result)); return 0; } diff --git a/recipes/ktx/all/test_v1_package/conanfile.py b/recipes/ktx/all/test_v1_package/conanfile.py index d6484909910f33..38f4483872d47f 100644 --- a/recipes/ktx/all/test_v1_package/conanfile.py +++ b/recipes/ktx/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - ktx_path = os.path.join(self.source_folder, os.pardir, "test_package", "etc1.ktx") - self.run(f"{bin_path} {ktx_path}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/lely-core/all/conandata.yml b/recipes/lely-core/all/conandata.yml index 365fdf916f6148..a02c4e51288f28 100644 --- a/recipes/lely-core/all/conandata.yml +++ b/recipes/lely-core/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "2.3.4": + url: "https://gitlab.com/lely_industries/lely-core/-/archive/v2.3.4/lely-core-v2.3.4.tar.gz" + sha256: "6f31b4fd7ea6aafb1a62b9d956a12a900386564859099e97af1c6bd1d10bdaf2" "2.3.3": url: "https://gitlab.com/lely_industries/lely-core/-/archive/v2.3.3/lely-core-v2.3.3.tar.gz" sha256: "6d0810f9e835543f0aeb5f86dcdc7a24578041f5d0a714bf5a14db2cb24ce373" diff --git a/recipes/lely-core/all/conanfile.py b/recipes/lely-core/all/conanfile.py index 9ed8f191a0a192..7e88aacc941439 100644 --- a/recipes/lely-core/all/conanfile.py +++ b/recipes/lely-core/all/conanfile.py @@ -12,13 +12,18 @@ class LelyConan(ConanFile): name = "lely-core" + description = ( + "The Lely core libraries are a collection of C and C++ libraries and tools, " + "providing high-performance I/O and sensor/actuator control for robotics and IoT applications. " + "The libraries are cross-platform and have few dependencies. " + "They can be even be used on bare-metal microcontrollers with as little as 32 kB RAM." + ) license = "Apache-2.0" - homepage = "https://gitlab.com/lely_industries/lely-core/" url = "https://github.com/conan-io/conan-center-index" - description = "The Lely core libraries are a collection of C and C++ libraries and tools, providing high-performance I/O and sensor/actuator control for robotics and IoT applications. The libraries are cross-platform and have few dependencies. They can be even be used on bare-metal microcontrollers with as little as 32 kB RAM." + homepage = "https://gitlab.com/lely_industries/lely-core/" topics = ("canopen",) package_type = "library" - settings = "os", "compiler", "build_type", "arch" + settings = "os", "arch", "compiler", "build_type" options = { "shared": [True, False], "fPIC": [True, False], diff --git a/recipes/lely-core/all/test_package/CMakeLists.txt b/recipes/lely-core/all/test_package/CMakeLists.txt index c8be0aec2f07e6..f6bd04d2f5aad8 100644 --- a/recipes/lely-core/all/test_package/CMakeLists.txt +++ b/recipes/lely-core/all/test_package/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.2) -project(test_package) +project(test_package LANGUAGES CXX) find_package(lely-core REQUIRED) diff --git a/recipes/lely-core/config.yml b/recipes/lely-core/config.yml index 5ca4acfdc4f7b4..e8d99700ff1a05 100644 --- a/recipes/lely-core/config.yml +++ b/recipes/lely-core/config.yml @@ -1,4 +1,6 @@ versions: + "2.3.4": + folder: all "2.3.3": folder: all "2.3.2": diff --git a/recipes/libffi/all/conandata.yml b/recipes/libffi/all/conandata.yml index 5984134b2d8b9c..4ae82714f72f8a 100644 --- a/recipes/libffi/all/conandata.yml +++ b/recipes/libffi/all/conandata.yml @@ -1,17 +1,19 @@ sources: + "3.4.6": + url: "https://github.com/libffi/libffi/releases/download/v3.4.6/libffi-3.4.6.tar.gz" + sha256: "b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e" "3.4.4": url: "https://github.com/libffi/libffi/releases/download/v3.4.4/libffi-3.4.4.tar.gz" sha256: "d66c56ad259a82cf2a9dfc408b32bf5da52371500b84745f7fb8b645712df676" - "3.4.3": - url: "https://github.com/libffi/libffi/releases/download/v3.4.3/libffi-3.4.3.tar.gz" - sha256: "4416dd92b6ae8fcb5b10421e711c4d3cb31203d77521a77d85d0102311e6c3b8" - "3.4.2": - url: "https://github.com/libffi/libffi/releases/download/v3.4.2/libffi-3.4.2.tar.gz" - sha256: "540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620" "3.3": url: "https://github.com/libffi/libffi/releases/download/v3.3/libffi-3.3.tar.gz" sha256: "72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056" patches: + "3.4.6": + - patch_file: "patches/0002-3.4.6-fix-libtool-path.patch" + - patch_file: "patches/0004-3.4.6-fix-complex-type-msvc.patch" + - patch_file: "patches/0005-3.4.4-do-not-install-libraries-to-arch-dependent-directories.patch" + - patch_file: "patches/0006-3.4.6-library-no-version-suffix.patch" "3.4.4": - patch_file: "patches/0002-3.4.3-fix-libtool-path.patch" - patch_file: "patches/0004-3.3-fix-complex-type-msvc.patch" @@ -21,20 +23,6 @@ patches: patch_type: "portability" patch_source: "https://github.com/libffi/libffi/pull/764" patch_description: "Forward declare the open_temp_exec_file function which is required by the C99 standard" - "3.4.3": - - patch_file: "patches/0002-3.4.3-fix-libtool-path.patch" - - patch_file: "patches/0004-3.3-fix-complex-type-msvc.patch" - - patch_file: "patches/0005-3.4.3-do-not-install-libraries-to-arch-dependent-directories.patch" - - patch_file: "patches/0006-3.4.3-library-no-version-suffix.patch" - - patch_file: "patches/0007-3.4.3-forward-declare-open_temp_exec_file.patch" - patch_type: "portability" - patch_source: "https://github.com/libffi/libffi/pull/764" - patch_description: "Forward declare the open_temp_exec_file function which is required by the C99 standard" - "3.4.2": - - patch_file: "patches/0002-3.4.2-fix-libtool-path.patch" - - patch_file: "patches/0004-3.3-fix-complex-type-msvc.patch" - - patch_file: "patches/0005-3.4.2-do-not-install-libraries-to-arch-dependent-directories.patch" - - patch_file: "patches/0006-3.4.2-library-no-version-suffix.patch" "3.3": - patch_file: "patches/0002-3.3-fix-libtool-path.patch" - patch_file: "patches/0004-3.3-fix-complex-type-msvc.patch" diff --git a/recipes/libffi/all/conanfile.py b/recipes/libffi/all/conanfile.py index e46a94d1b4462a..cc062fca089043 100644 --- a/recipes/libffi/all/conanfile.py +++ b/recipes/libffi/all/conanfile.py @@ -1,7 +1,8 @@ from conan import ConanFile -from conan.tools.apple import fix_apple_shared_install_name +from conan.errors import ConanInvalidConfiguration +from conan.tools.apple import fix_apple_shared_install_name, is_apple_os from conan.tools.env import VirtualBuildEnv -from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get, mkdir, replace_in_file, rm, rmdir +from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get, mkdir, rm, rmdir from conan.tools.gnu import Autotools, AutotoolsToolchain from conan.tools.layout import basic_layout from conan.tools.microsoft import check_min_vs, is_msvc, is_msvc_static_runtime, msvc_runtime_flag, unix_path @@ -42,6 +43,10 @@ def export_sources(self): def config_options(self): if self.settings.os == "Windows": del self.options.fPIC + + def validate(self): + if is_apple_os(self) and self.settings.arch == "armv8" and Version(self.version) < "3.4.0": + raise ConanInvalidConfiguration(f"{self.ref} does not support Apple ARM CPUs") def configure(self): if self.options.shared: @@ -78,9 +83,12 @@ def generate(self): if self._settings_build.compiler == "apple-clang": tc.configure_args.append("--disable-multi-os-directory") - tc.extra_defines.append("FFI_BUILDING") if self.options.shared: tc.extra_defines.append("FFI_BUILDING_DLL") + if Version(self.version) < "3.4.6": + tc.extra_defines.append("FFI_BUILDING") + elif not self.options.shared: + tc.extra_defines.append("FFI_STATIC_BUILD") env = tc.environment() if self._settings_build.os == "Windows" and (is_msvc(self) or self.settings.compiler == "clang"): @@ -134,22 +142,9 @@ def generate(self): env.define("INSTALL", unix_path(self, os.path.join(self.source_folder, "install-sh"))) tc.generate(env=env) - def _patch_source(self): + def build(self): apply_conandata_patches(self) - if Version(self.version) < "3.3": - if self.settings.compiler == "clang" and Version(str(self.settings.compiler.version)) >= 7.0: - # https://android.googlesource.com/platform/external/libffi/+/ca22c3cb49a8cca299828c5ffad6fcfa76fdfa77 - sysv_s_src = os.path.join(self.source_folder, "src", "arm", "sysv.S") - replace_in_file(self, sysv_s_src, "fldmiad", "vldmia") - replace_in_file(self, sysv_s_src, "fstmiad", "vstmia") - replace_in_file(self, sysv_s_src, "fstmfdd\tsp!,", "vpush") - - # https://android.googlesource.com/platform/external/libffi/+/7748bd0e4a8f7d7c67b2867a3afdd92420e95a9f - replace_in_file(self, sysv_s_src, "stmeqia", "stmiaeq") - - def build(self): - self._patch_source() autotools = Autotools(self) autotools.configure() autotools.make() @@ -170,4 +165,5 @@ def package_info(self): self.cpp_info.libs = ["{}ffi".format("lib" if is_msvc(self) else "")] self.cpp_info.set_property("pkg_config_name", "libffi") if not self.options.shared: - self.cpp_info.defines = ["FFI_BUILDING"] + static_define = "FFI_STATIC_BUILD" if Version(self.version) >= "3.4.6" else "FFI_BUILDING" + self.cpp_info.defines = [static_define] diff --git a/recipes/libffi/all/patches/0002-3.4.2-fix-libtool-path.patch b/recipes/libffi/all/patches/0002-3.4.6-fix-libtool-path.patch similarity index 84% rename from recipes/libffi/all/patches/0002-3.4.2-fix-libtool-path.patch rename to recipes/libffi/all/patches/0002-3.4.6-fix-libtool-path.patch index fad9e64adff17c..e557baacf2699d 100644 --- a/recipes/libffi/all/patches/0002-3.4.2-fix-libtool-path.patch +++ b/recipes/libffi/all/patches/0002-3.4.6-fix-libtool-path.patch @@ -1,6 +1,6 @@ --- configure +++ configure -@@ -8979,7 +8979,7 @@ +@@ -9882,7 +9882,7 @@ LIBTOOL_DEPS=$ltmain # Always use our own libtool. @@ -9,7 +9,7 @@ -@@ -9072,7 +9072,7 @@ +@@ -9974,7 +9974,7 @@ esac # Global variables: @@ -17,4 +17,4 @@ +ofile=libtool.sh can_build_shared=yes - # All known linkers require a '.a' archive for static linking (except MSVC, + # All known linkers require a '.a' archive for static linking (except MSVC and diff --git a/recipes/libffi/all/patches/0004-3.4.6-fix-complex-type-msvc.patch b/recipes/libffi/all/patches/0004-3.4.6-fix-complex-type-msvc.patch new file mode 100644 index 00000000000000..4779afe0a2e854 --- /dev/null +++ b/recipes/libffi/all/patches/0004-3.4.6-fix-complex-type-msvc.patch @@ -0,0 +1,56 @@ +diff --git a/src/types.c b/src/types.c +index c1c27f3..d5d52bb 100644 +--- a/src/types.c ++++ b/src/types.c +@@ -31,6 +31,8 @@ + #include + #include + ++#include ++ + /* Type definitions */ + + #define FFI_TYPEDEF(name, type, id, maybe_const)\ +@@ -45,17 +47,17 @@ maybe_const ffi_type ffi_type_##name = { \ + id, NULL \ + } + +-#define FFI_COMPLEX_TYPEDEF(name, type, maybe_const) \ ++#define FFI_COMPLEX_TYPEDEF(name, complex_type, maybe_const) \ + static ffi_type *ffi_elements_complex_##name [2] = { \ + (ffi_type *)(&ffi_type_##name), NULL \ + }; \ + struct struct_align_complex_##name { \ + char c; \ +- _Complex type x; \ ++ complex_type x; \ + }; \ + FFI_EXTERN \ + maybe_const ffi_type ffi_type_complex_##name = { \ +- sizeof(_Complex type), \ ++ sizeof(complex_type), \ + offsetof(struct struct_align_complex_##name, x), \ + FFI_TYPE_COMPLEX, \ + (ffi_type **)ffi_elements_complex_##name \ +@@ -99,8 +101,18 @@ const ffi_type ffi_type_longdouble = { 16, 16, 4, NULL }; + FFI_TYPEDEF(longdouble, long double, FFI_TYPE_LONGDOUBLE, FFI_LDBL_CONST); + #endif + ++#ifdef _MSC_VER ++# define FLOAT_COMPLEX _C_float_complex ++# define DOUBLE_COMPLEX _C_double_complex ++# define LDOUBLE_COMPLEX _C_ldouble_complex ++#else ++# define FLOAT_COMPLEX float _Complex ++# define DOUBLE_COMPLEX double _Complex ++# define LDOUBLE_COMPLEX long double _Complex ++#endif ++ + #ifdef FFI_TARGET_HAS_COMPLEX_TYPE +-FFI_COMPLEX_TYPEDEF(float, float, const); +-FFI_COMPLEX_TYPEDEF(double, double, const); +-FFI_COMPLEX_TYPEDEF(longdouble, long double, FFI_LDBL_CONST); ++FFI_COMPLEX_TYPEDEF(float, FLOAT_COMPLEX, const); ++FFI_COMPLEX_TYPEDEF(double, DOUBLE_COMPLEX, const); ++FFI_COMPLEX_TYPEDEF(longdouble, LDOUBLE_COMPLEX, FFI_LDBL_CONST); + #endif diff --git a/recipes/libffi/all/patches/0005-3.4.2-do-not-install-libraries-to-arch-dependent-directories.patch b/recipes/libffi/all/patches/0005-3.4.2-do-not-install-libraries-to-arch-dependent-directories.patch deleted file mode 100644 index 8e14796ab662af..00000000000000 --- a/recipes/libffi/all/patches/0005-3.4.2-do-not-install-libraries-to-arch-dependent-directories.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.in -+++ Makefile.in -@@ -517,7 +517,7 @@ - target_os = @target_os@ - target_vendor = @target_vendor@ - toolexecdir = @toolexecdir@ --toolexeclibdir = @toolexeclibdir@ -+toolexeclibdir = @libdir@ - top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ diff --git a/recipes/libffi/all/patches/0005-3.4.3-do-not-install-libraries-to-arch-dependent-directories.patch b/recipes/libffi/all/patches/0005-3.4.3-do-not-install-libraries-to-arch-dependent-directories.patch deleted file mode 100644 index e82abf24a4fb1e..00000000000000 --- a/recipes/libffi/all/patches/0005-3.4.3-do-not-install-libraries-to-arch-dependent-directories.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.in -+++ Makefile.in -@@ -520,7 +520,7 @@ - target_vendor = @target_vendor@ - tmake_file = @tmake_file@ - toolexecdir = @toolexecdir@ --toolexeclibdir = @toolexeclibdir@ -+toolexeclibdir = @libdir@ - top_build_prefix = @top_build_prefix@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ diff --git a/recipes/libffi/all/patches/0006-3.4.3-library-no-version-suffix.patch b/recipes/libffi/all/patches/0006-3.4.3-library-no-version-suffix.patch deleted file mode 100644 index 0ad4d29b1c4ce5..00000000000000 --- a/recipes/libffi/all/patches/0006-3.4.3-library-no-version-suffix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.in -+++ Makefile.in -@@ -615,7 +615,7 @@ - @LIBFFI_BUILD_VERSIONED_SHLIB_FALSE@libffi_version_dep = - @LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map - @LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map-sun --libffi_version_info = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -+libffi_version_info = -avoid-version - libffi_la_LDFLAGS = -no-undefined $(libffi_version_info) $(libffi_version_script) $(LTLDFLAGS) $(AM_LTLDFLAGS) - libffi_la_DEPENDENCIES = $(libffi_la_LIBADD) $(libffi_version_dep) - AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src diff --git a/recipes/libffi/all/patches/0006-3.4.2-library-no-version-suffix.patch b/recipes/libffi/all/patches/0006-3.4.6-library-no-version-suffix.patch similarity index 80% rename from recipes/libffi/all/patches/0006-3.4.2-library-no-version-suffix.patch rename to recipes/libffi/all/patches/0006-3.4.6-library-no-version-suffix.patch index 80c36df06441e4..726e8c1eb4a478 100644 --- a/recipes/libffi/all/patches/0006-3.4.2-library-no-version-suffix.patch +++ b/recipes/libffi/all/patches/0006-3.4.6-library-no-version-suffix.patch @@ -1,6 +1,8 @@ ---- Makefile.in -+++ Makefile.in -@@ -610,7 +610,7 @@ +diff --git a/Makefile.in b/Makefile.in +index 450200a..abcee85 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -618,7 +618,7 @@ AM_CFLAGS = $(am__append_3) @LIBFFI_BUILD_VERSIONED_SHLIB_FALSE@libffi_version_dep = @LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map @LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map-sun diff --git a/recipes/libffi/config.yml b/recipes/libffi/config.yml index af3a9af92b3063..e6382ec734d6d5 100644 --- a/recipes/libffi/config.yml +++ b/recipes/libffi/config.yml @@ -1,9 +1,7 @@ versions: - "3.4.4": - folder: "all" - "3.4.3": + "3.4.6": folder: "all" - "3.4.2": + "3.4.4": folder: "all" "3.3": folder: "all" diff --git a/recipes/libliftoff/all/conandata.yml b/recipes/libliftoff/all/conandata.yml index 9cc2caed8889e3..18f54d8b034f20 100644 --- a/recipes/libliftoff/all/conandata.yml +++ b/recipes/libliftoff/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.5.0": + url: "https://gitlab.freedesktop.org/emersion/libliftoff/-/archive/v0.5.0/libliftoff-v0.5.0.tar.bz2" + sha256: "2ed21be3c563b129bd8f188195a23256017e15908c195f3edcd3697584caf1c8" "0.4.1": url: "https://gitlab.freedesktop.org/emersion/libliftoff/-/archive/v0.4.1/libliftoff-v0.4.1.tar.bz2" sha256: "2ec4a6b467dda20476acb4d6bd864538ccdaa946e8666f96efa98156bf25cfb5" diff --git a/recipes/libliftoff/all/conanfile.py b/recipes/libliftoff/all/conanfile.py index 372fffe6e790f3..792e87c5ed4a91 100644 --- a/recipes/libliftoff/all/conanfile.py +++ b/recipes/libliftoff/all/conanfile.py @@ -16,7 +16,7 @@ class LibliftoffConan(ConanFile): description = "Lightweight KMS plane library." license = "MIT" url = "https://github.com/conan-io/conan-center-index" - homepage = "https://github.com/project/package" + homepage = "https://gitlab.freedesktop.org/emersion/libliftoff" topics = ("drm", "KMS", "plane") package_type = "library" settings = "os", "arch", "compiler", "build_type" diff --git a/recipes/libliftoff/config.yml b/recipes/libliftoff/config.yml index 3a9d5538921fcd..bdf259c14aca40 100644 --- a/recipes/libliftoff/config.yml +++ b/recipes/libliftoff/config.yml @@ -1,3 +1,5 @@ versions: + "0.5.0": + folder: all "0.4.1": folder: all diff --git a/recipes/libmd/all/conandata.yml b/recipes/libmd/all/conandata.yml new file mode 100644 index 00000000000000..6433755dc33652 --- /dev/null +++ b/recipes/libmd/all/conandata.yml @@ -0,0 +1,6 @@ +sources: + "1.1.0": + url: + - "https://libbsd.freedesktop.org/releases/libmd-1.1.0.tar.xz" + - "https://archive.hadrons.org/software/libmd/libmd-1.1.0.tar.xz" + sha256: "1bd6aa42275313af3141c7cf2e5b964e8b1fd488025caf2f971f43b00776b332" diff --git a/recipes/libmd/all/conanfile.py b/recipes/libmd/all/conanfile.py new file mode 100644 index 00000000000000..b7ad5096688cdc --- /dev/null +++ b/recipes/libmd/all/conanfile.py @@ -0,0 +1,114 @@ +import os + +from conan import ConanFile +from conan.tools.apple import fix_apple_shared_install_name +from conan.tools.env import Environment, VirtualBuildEnv +from conan.tools.files import chdir, rename, copy, get, rm, rmdir +from conan.tools.gnu import Autotools, AutotoolsToolchain +from conan.tools.layout import basic_layout +from conan.tools.microsoft import is_msvc, unix_path + +required_conan_version = ">=1.53.0" + + +class LibMDConan(ConanFile): + name = "libmd" + description = "Message Digest functions from BSD systems" + license = "BSD-2-Clause AND BSD-3-Clause AND ISC AND Beerware AND DocumentRef-COPYING:LicenseRef-libmd-Public-Domain" + homepage = "https://gitlab.freedesktop.org/libbsd/libmd" + url = "https://github.com/conan-io/conan-center-index" + topics = ("message-digest", "hash", "bsd", + "md2", "md4", "md5", "ripemd", "rmd160", + "sha", "sha1", "sha2", "sha256", "sha512") + + package_type = "library" + settings = "os", "arch", "compiler", "build_type" + options = { + "shared": [True, False], + "fPIC": [True, False], + } + default_options = { + "shared": False, + "fPIC": True, + } + + @property + def _settings_build(self): + return getattr(self, "settings_build", self.settings) + + def config_options(self): + if self.settings.os == "Windows": + del self.options.fPIC + + def configure(self): + if self.options.shared: + self.options.rm_safe("fPIC") + self.settings.rm_safe("compiler.cppstd") + self.settings.rm_safe("compiler.libcxx") + + def build_requirements(self): + if self._settings_build.os == "Windows": + self.win_bash = True + if not self.conf.get("tools.microsoft.bash:path", check_type=str): + self.tool_requires("msys2/cci.latest") + if is_msvc(self): + self.tool_requires("automake/1.16.5") + + def generate(self): + venv = VirtualBuildEnv(self) + venv.generate() + + tc = AutotoolsToolchain(self) + if is_msvc(self): + tc.extra_cflags.append("-FS") + tc.extra_cxxflags.append("-FS") + tc.generate() + + if is_msvc(self): + env = Environment() + automake_conf = self.dependencies.build["automake"].conf_info + compile_wrapper = unix_path(self, automake_conf.get("user.automake:compile-wrapper", check_type=str)) + ar_wrapper = unix_path(self, automake_conf.get("user.automake:lib-wrapper", check_type=str)) + env.define("CC", f"{compile_wrapper} cl -nologo") + env.define("CXX", f"{compile_wrapper} cl -nologo") + env.define("LD", "link -nologo") + env.define("AR", f"{ar_wrapper} lib") + env.define("NM", "dumpbin -symbols") + env.define("OBJDUMP", ":") + env.define("RANLIB", ":") + env.define("STRIP", ":") + env.vars(self).save_script("conanbuild_msvc") + + def layout(self): + basic_layout(self, src_folder="src") + + def source(self): + get(self, **self.conan_data["sources"][self.version], strip_root=True) + + def build(self): + with chdir(self, self.source_folder): + autotools = Autotools(self) + autotools.configure() + autotools.make() + + def package(self): + copy(self, "COPYING", self.source_folder, os.path.join(self.package_folder, "licenses")) + with chdir(self, self.source_folder): + autotools = Autotools(self) + autotools.install() + if self.settings.os == "Windows" and self.options.shared: + rename(self, os.path.join(self.package_folder, "lib", "md.dll.lib"), + os.path.join(self.package_folder, "lib", "md-0.lib")) + rm(self, "*.la", os.path.join(self.package_folder, "lib")) + rmdir(self, os.path.join(self.package_folder, "lib", "pkgconfig")) + rmdir(self, os.path.join(self.package_folder, "share")) + fix_apple_shared_install_name(self) + + def package_info(self): + self.cpp_info.set_property("pkg_config_name", "libmd") + + if self.settings.os == "Windows" and self.options.shared: + lib = "md-0" + else: + lib = "md" + self.cpp_info.libs = [lib] diff --git a/recipes/libmd/all/test_package/CMakeLists.txt b/recipes/libmd/all/test_package/CMakeLists.txt new file mode 100644 index 00000000000000..6bdd5550a5b87d --- /dev/null +++ b/recipes/libmd/all/test_package/CMakeLists.txt @@ -0,0 +1,7 @@ +cmake_minimum_required(VERSION 3.15) +project(test_package C) + +find_package(libmd REQUIRED) + +add_executable(${PROJECT_NAME} test_package.c) +target_link_libraries(${PROJECT_NAME} PRIVATE libmd::libmd) diff --git a/recipes/libmd/all/test_package/conanfile.py b/recipes/libmd/all/test_package/conanfile.py new file mode 100644 index 00000000000000..0f2d20bbcb70af --- /dev/null +++ b/recipes/libmd/all/test_package/conanfile.py @@ -0,0 +1,27 @@ +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 = "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) + cmake.configure() + cmake.build() + + def test(self): + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindir, "test_package") + self.run(bin_path, env="conanrun") diff --git a/recipes/libmd/all/test_package/test_package.c b/recipes/libmd/all/test_package/test_package.c new file mode 100644 index 00000000000000..a7d2d1ef0b2453 --- /dev/null +++ b/recipes/libmd/all/test_package/test_package.c @@ -0,0 +1,12 @@ +#include +#include + +int main() { + const char data[] = "12345"; + uint8_t hash[MD5_DIGEST_LENGTH]; + MD5_CTX md5_ctx; + MD5Init(&md5_ctx); + MD5Update(&md5_ctx, (const uint8_t *)data, strlen(data)); + MD5Final(hash, &md5_ctx); + return 0; +} diff --git a/recipes/libmd/config.yml b/recipes/libmd/config.yml new file mode 100644 index 00000000000000..11b7aff3a5ac43 --- /dev/null +++ b/recipes/libmd/config.yml @@ -0,0 +1,3 @@ +versions: + "1.1.0": + folder: "all" diff --git a/recipes/libyang/all/conandata.yml b/recipes/libyang/all/conandata.yml new file mode 100644 index 00000000000000..f8459393ddff03 --- /dev/null +++ b/recipes/libyang/all/conandata.yml @@ -0,0 +1,4 @@ +sources: + "2.1.148": + url: "https://github.com/CESNET/libyang/archive/refs/tags/v2.1.148.tar.gz" + sha256: "77a0aaaeb3df720aeb70d6896e32e2c2be099d48df73e3cfb52567051af3e44b" diff --git a/recipes/libyang/all/conanfile.py b/recipes/libyang/all/conanfile.py new file mode 100644 index 00000000000000..2567464f946186 --- /dev/null +++ b/recipes/libyang/all/conanfile.py @@ -0,0 +1,82 @@ +import os + +from conan import ConanFile +from conan.tools.cmake import CMake, CMakeToolchain, cmake_layout, CMakeDeps +from conan.tools.files import get, rmdir, copy +from conan.errors import ConanInvalidConfiguration + +required_conan_version = ">=1.53.0" + + +class LibYangConan(ConanFile): + name = "libyang" + license = "BSD-3-Clause" + url = "https://github.com/conan-io/conan-center-index" + description = "YANG data modeling language library" + homepage = "https://github.com/CESNET/libyang" + topics = ("yang", "bsd", "netconf", "restconf", "yin") + settings = "os", "compiler", "build_type", "arch" + options = {"shared": [True, False], + "fPIC": [True, False]} + default_options = { + "shared": False, + "fPIC": True + } + + + def validate(self): + # TODO For Windows support: https://github.com/CESNET/libyang?tab=readme-ov-file#windows-build-requirements + # CMake Error at CMakeLists.txt:386 (find_package): + # By not providing "Findpthreads.cmake" in CMAKE_MODULE_PATH this project has + if self.settings.os == "Windows": + raise ConanInvalidConfiguration( + f"{self.ref} Conan recipe is not prepared to work on Windows. Contributions are welcome.") + + def requirements(self): + self.requires("pcre2/10.42", transitive_headers=True) + + def configure(self): + if self.options.shared: + self.options.rm_safe("fPIC") + self.settings.rm_safe("compiler.cppstd") + self.settings.rm_safe("compiler.libcxx") + + def layout(self): + cmake_layout(self, src_folder="src") + + def source(self): + get(self, **self.conan_data["sources"][self.version], + destination=self.source_folder, strip_root=True) + + def generate(self): + tc = CMakeToolchain(self) + tc.variables["ENABLE_TESTS"] = False + tc.variables["ENABLE_VALGRIND_TESTS"] = False + tc.variables["ENABLE_STATIC"] = not self.options.shared + tc.cache_variables["CMAKE_POLICY_DEFAULT_CMP0077"] = "NEW" + tc.generate() + tc = CMakeDeps(self) + tc.generate() + + def build(self): + cmake = CMake(self) + cmake.configure() + cmake.build() + + def package(self): + copy(self, "LICENSE", self.source_folder, + os.path.join(self.package_folder, "licenses")) + cmake = CMake(self) + cmake.install() + rmdir(self, os.path.join(self.package_folder, "lib", "pkgconfig")) + # move *.yang files from /share to /res + copy(self, "*.yang", os.path.join(self.package_folder, "share"), + os.path.join(self.package_folder, "res", "share")) + rmdir(self, os.path.join(self.package_folder, "share")) + + def package_info(self): + self.cpp_info.set_property("cmake_file_name", "LibYANG") + self.cpp_info.libs = ["yang"] + self.cpp_info.resdirs = ["res"] + if self.settings.os in ["Linux", "FreeBSD"]: + self.cpp_info.system_libs.extend(["pthread", "dl", "m"]) diff --git a/recipes/libyang/all/test_package/CMakeLists.txt b/recipes/libyang/all/test_package/CMakeLists.txt new file mode 100644 index 00000000000000..2a5a447e67b6b3 --- /dev/null +++ b/recipes/libyang/all/test_package/CMakeLists.txt @@ -0,0 +1,7 @@ +cmake_minimum_required(VERSION 3.15) +project(test_package C) + +find_package(LibYANG REQUIRED) + +add_executable(${PROJECT_NAME} test_package.c) +target_link_libraries(${PROJECT_NAME} PRIVATE libyang::libyang) diff --git a/recipes/libyang/all/test_package/conanfile.py b/recipes/libyang/all/test_package/conanfile.py new file mode 100644 index 00000000000000..ec1844a7859135 --- /dev/null +++ b/recipes/libyang/all/test_package/conanfile.py @@ -0,0 +1,27 @@ +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 = "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) + cmake.configure() + cmake.build() + + def test(self): + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") + self.run(bin_path, env="conanrun") diff --git a/recipes/libyang/all/test_package/test_package.c b/recipes/libyang/all/test_package/test_package.c new file mode 100644 index 00000000000000..b892125a1218e3 --- /dev/null +++ b/recipes/libyang/all/test_package/test_package.c @@ -0,0 +1,11 @@ +#include + +int main() +{ + struct ly_ctx *ctx = NULL; + if ( ly_ctx_new( NULL, 0, &ctx ) ) + { + return 1; + } + return 0; +} diff --git a/recipes/libyang/config.yml b/recipes/libyang/config.yml new file mode 100644 index 00000000000000..78864b67abe0f2 --- /dev/null +++ b/recipes/libyang/config.yml @@ -0,0 +1,3 @@ +versions: + "2.1.148": + folder: "all" diff --git a/recipes/lodepng/all/test_package/bees.png b/recipes/lodepng/all/test_package/bees.png deleted file mode 100644 index 11640c7488fb11..00000000000000 Binary files a/recipes/lodepng/all/test_package/bees.png and /dev/null differ diff --git a/recipes/lodepng/all/test_package/conanfile.py b/recipes/lodepng/all/test_package/conanfile.py index f6238eccc60b7e..0a6bc68712d901 100644 --- a/recipes/lodepng/all/test_package/conanfile.py +++ b/recipes/lodepng/all/test_package/conanfile.py @@ -23,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - bees = os.path.join(self.source_folder, "bees.png") - self.run(f"{bin_path} {bees}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/lodepng/all/test_package/test_package.cpp b/recipes/lodepng/all/test_package/test_package.cpp index 744f347b97c7be..9f83682fff5cd4 100644 --- a/recipes/lodepng/all/test_package/test_package.cpp +++ b/recipes/lodepng/all/test_package/test_package.cpp @@ -1,31 +1,12 @@ #include -#include -#include -#include - #include "lodepng.h" int main(int argc, const char *argv[]) { - if (argc < 2) { - std::cerr << "Need at least one argument\n"; - } - std::ifstream stream(argv[1], std::ios::in | std::ios::binary); - std::vector data((std::istreambuf_iterator(stream)), std::istreambuf_iterator()); - - std::cout << "file name " << argv[1] << "\n"; - std::cout << "file size " << data.size() << " bytes\n"; - - std::vector decoded; - unsigned width = 0, height = 0; - unsigned error = lodepng::decode(decoded, width, height, data); - if (error != 0) { - std::cerr << "lodepng::decode returned with error code " << error << "\n"; - return 1; - } - std::cout << "image size: " << width << " x " << height << " pixels.\n"; + LodePNGCompressSettings compress_settings; + lodepng_compress_settings_init(&compress_settings); - stream.close(); + printf("compress_settings.btype = %d\n", compress_settings.btype); return 0; } diff --git a/recipes/lodepng/all/test_v1_package/conanfile.py b/recipes/lodepng/all/test_v1_package/conanfile.py index 4441530a937bab..38f4483872d47f 100644 --- a/recipes/lodepng/all/test_v1_package/conanfile.py +++ b/recipes/lodepng/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - bees = os.path.join(self.source_folder, os.pardir, "test_package", "bees.png") - self.run(f"{bin_path} {bees}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/logr/config.yml b/recipes/logr/config.yml index 71c5abd93f78cc..afa3309f2914cf 100644 --- a/recipes/logr/config.yml +++ b/recipes/logr/config.yml @@ -1,4 +1,6 @@ versions: + "0.7.0": + folder: v0.7 "0.6.0": folder: all "0.5.1": diff --git a/recipes/logr/v0.7/conandata.yml b/recipes/logr/v0.7/conandata.yml new file mode 100644 index 00000000000000..745404ba635bcf --- /dev/null +++ b/recipes/logr/v0.7/conandata.yml @@ -0,0 +1,4 @@ +sources: + "0.7.0": + url: "https://github.com/ngrodzitski/logr/archive/v0.7.0.tar.gz" + sha256: "b43b6624a9223bcb0a11c83afb3df69ef4388d42abef9abb1b80fbc85b890287" diff --git a/recipes/logr/v0.7/conanfile.py b/recipes/logr/v0.7/conanfile.py new file mode 100644 index 00000000000000..7eee46ae5d249e --- /dev/null +++ b/recipes/logr/v0.7/conanfile.py @@ -0,0 +1,140 @@ +from conan import ConanFile +from conan.tools.build import check_min_cppstd +from conan.tools.files import get, copy, rm +from conan.tools.layout import basic_layout +from conan.tools.scm import Version +from conan.errors import ConanInvalidConfiguration +from conan.tools.microsoft import check_min_vs +import os + +required_conan_version = ">=1.50.0" + + +class LogrConan(ConanFile): + name = "logr" + description = ( + "Logger frontend substitution for spdlog, glog, etc " + "for server/desktop applications" + ) + license = "BSD-3-Clause" + url = "https://github.com/conan-io/conan-center-index" + homepage = "https://github.com/ngrodzitski/logr" + topics = ("logger", "development", "util", "utils", "header-only") + settings = "os", "arch", "compiler", "build_type" + package_type = "header-library" + options = { + "with_spdlog": [True, False], + "with_glog": [True, False], + "with_log4cplus": [True, False], + "with_boostlog": [True, False], + } + default_options = { + "with_spdlog": True, + "with_glog": False, + "with_log4cplus": False, + "with_boostlog": False, + } + + @property + def _min_cppstd(self): + return 17 + + @property + def _minimum_compilers_version(self): + return { + "gcc": "10", + "clang": "11", + "apple-clang": "12", + } + + def layout(self): + basic_layout(self, src_folder="src") + + def requirements(self): + self.requires("fmt/10.2.1") + + if self.options.with_spdlog: + self.requires("spdlog/1.12.0") + + if self.options.with_glog: + self.requires("glog/0.6.0") + + if self.options.with_log4cplus: + self.requires("log4cplus/2.1.0") + + if self.options.with_boostlog: + self.requires("boost/1.83.0") + + def package_id(self): + self.info.settings.clear() + + def validate(self): + if self.settings.get_safe("compiler.cppstd"): + check_min_cppstd(self, self._min_cppstd) + + check_min_vs(self, 192) + + minimum_version = self._minimum_compilers_version.get(str(self.settings.compiler), False) + if minimum_version and Version(self.settings.compiler.version) < minimum_version: + raise ConanInvalidConfiguration( + f"{self.ref} requires minimum {self.settings.compiler} version of {minimum_version}" + ) + + def build(self): + pass + + def source(self): + get(self, **self.conan_data["sources"][self.version], + destination=self.source_folder, strip_root=True) + + def package(self): + copy(self, "LICENSE", src=self.source_folder, dst=os.path.join(self.package_folder, "licenses")) + copy(self, "*.*pp", src=os.path.join(self.source_folder, "logr", "include"), dst=os.path.join(self.package_folder, "include")) + + include_folder = os.path.join(self.package_folder, "include", "logr") + if not self.options.with_spdlog: + rm(self, "spdlog_backend.hpp", include_folder) + + if not self.options.with_glog: + rm(self, "glog_backend.hpp", include_folder) + + if not self.options.with_log4cplus: + rm(self, "log4cplus_backend.hpp", include_folder) + + if not self.options.with_boostlog: + rm(self, "boostlog_backend.hpp", include_folder) + + def package_info(self): + self.cpp_info.bindirs = [] + self.cpp_info.libdirs = [] + + self.cpp_info.components["logr_base"].includedirs = ["include"] + self.cpp_info.components["logr_base"].requires = ["fmt::fmt"] + + if self.options.with_spdlog: + self.cpp_info.components["logr_spdlog"].includedirs = [] + self.cpp_info.components["logr_spdlog"].requires = [ + "logr_base", + "spdlog::spdlog", + ] + + if self.options.with_glog: + self.cpp_info.components["logr_glog"].includedirs = [] + self.cpp_info.components["logr_glog"].requires = [ + "logr_base", + "glog::glog", + ] + + if self.options.with_log4cplus: + self.cpp_info.components["logr_log4cplus"].includedirs = [] + self.cpp_info.components["logr_log4cplus"].requires = [ + "logr_base", + "log4cplus::log4cplus", + ] + + if self.options.with_boostlog: + self.cpp_info.components["logr_boostlog"].includedirs = [] + self.cpp_info.components["logr_boostlog"].requires = [ + "logr_base", + "boost::log", + ] diff --git a/recipes/logr/v0.7/test_package/CMakeLists.txt b/recipes/logr/v0.7/test_package/CMakeLists.txt new file mode 100644 index 00000000000000..5e62d2b8b4d923 --- /dev/null +++ b/recipes/logr/v0.7/test_package/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION 3.8) +project(test_package LANGUAGES CXX) + +find_package(logr REQUIRED) + +add_executable(${PROJECT_NAME} test_package.cpp) +target_link_libraries(${PROJECT_NAME} PRIVATE logr::logr) +target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_17) diff --git a/recipes/logr/v0.7/test_package/conanfile.py b/recipes/logr/v0.7/test_package/conanfile.py new file mode 100644 index 00000000000000..f5cf204295e195 --- /dev/null +++ b/recipes/logr/v0.7/test_package/conanfile.py @@ -0,0 +1,25 @@ +from conan import ConanFile +from conan.tools.build import can_run +from conan.tools.cmake import cmake_layout, CMake +import os + +class TestPackageConan(ConanFile): + 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) + cmake.configure() + cmake.build() + + def test(self): + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindir, "test_package") + self.run(bin_path, env="conanrun") diff --git a/recipes/logr/v0.7/test_package/test_package.cpp b/recipes/logr/v0.7/test_package/test_package.cpp new file mode 100644 index 00000000000000..27d9ac363797b0 --- /dev/null +++ b/recipes/logr/v0.7/test_package/test_package.cpp @@ -0,0 +1,46 @@ +// Logger frontend library for C++. +// +// Copyright (c) 2020 - present, Nicolai Grodzitski +// See LICENSE file in the root of the project. + + +#include + +#include +#include + + +int main() { + auto logger = logr::basic_ostream_logger_t<1024u>(std::cout); + + logger.info( "Hello World! [raw message]" ); + logger.info( LOGR_SRC_LOCATION, "Hello World! [raw message]" ); + + logger.info( []() { return "Hello World! [cb]"; } ); + logger.info( LOGR_SRC_LOCATION, []() { return "Hello World! [cb]"; } ); + + logger.info( []( auto out ) { + format_to( out, "Hello {}! [{}]", "World", "cb with explicit out" ); + } ); + + logger.info( LOGR_SRC_LOCATION, []( auto out ) { + format_to( out, "Hello {}! [{}]", "World", "cb with explicit out" ); + } ); + logger.info( LOGR_SRC_LOCATION, []( auto out ) { + format_to( out, + FMT_STRING( "Hello {}! [{}]" ), + "World", + "cb with explicit out and FMT_STRING" ); + } ); + + logger.info( LOGR_SRC_LOCATION, []( auto out ) { + format_to( out, + fmt::runtime( "Hello {}! [{}]" ), + "World", + "cb with explicit out and runtime-string" ); + } ); + + logger.flush(); + + return 0; +} diff --git a/recipes/md4c/all/conanfile.py b/recipes/md4c/all/conanfile.py index 554edcc0d20574..40333503038dd2 100644 --- a/recipes/md4c/all/conanfile.py +++ b/recipes/md4c/all/conanfile.py @@ -20,11 +20,13 @@ class Md4cConan(ConanFile): options = { "shared": [True, False], "fPIC": [True, False], + "md2html": [True, False], "encoding": ["utf-8", "utf-16", "ascii"], } default_options = { "shared": False, "fPIC": True, + "md2html": True, "encoding": "utf-8", } @@ -53,6 +55,7 @@ def source(self): def generate(self): tc = CMakeToolchain(self) + tc.variables["BUILD_MD2HTML_EXECUTABLE"] = self.options.md2html if self.options.encoding == "utf-8": tc.preprocessor_definitions["MD4C_USE_UTF8"] = "1" elif self.options.encoding == "utf-16": diff --git a/recipes/mingw-builds/all/conandata.yml b/recipes/mingw-builds/all/conandata.yml index 6703f0f20681db..4f44c4f7671248 100644 --- a/recipes/mingw-builds/all/conandata.yml +++ b/recipes/mingw-builds/all/conandata.yml @@ -1,4 +1,26 @@ sources: + "13.2.0": + mcf: + seh: + ucrt: + url: "https://github.com/niXman/mingw-builds-binaries/releases/download/13.2.0-rt_v11-rev1/x86_64-13.2.0-release-mcf-seh-ucrt-rt_v11-rev1.7z" + sha256: "9ae11d0b00f4deae7246471193191de62d9e0318917d3577b568e0974c3069bc" + posix: + seh: + ucrt: + url: "https://github.com/niXman/mingw-builds-binaries/releases/download/13.2.0-rt_v11-rev1/x86_64-13.2.0-release-posix-seh-ucrt-rt_v11-rev1.7z" + sha256: "475ee72c5ce1bd54a3e3c334bdd3be5e6575334184fd9718013aa362c9819d2f" + msvcrt: + url: "https://github.com/niXman/mingw-builds-binaries/releases/download/13.2.0-rt_v11-rev1/x86_64-13.2.0-release-posix-seh-msvcrt-rt_v11-rev1.7z" + sha256: "7d3f84b17b235aa233f0fb5df9765bf79dbea950177a69ff99f8ad1d75b0aa6e" + win32: + seh: + ucrt: + url: "https://github.com/niXman/mingw-builds-binaries/releases/download/13.2.0-rt_v11-rev1/x86_64-13.2.0-release-win32-seh-ucrt-rt_v11-rev1.7z" + sha256: "74ca64c55220edd3196681782fbff653c2b9cb4f427f9e532ab6e9a0823dc997" + msvcrt: + url: "https://github.com/niXman/mingw-builds-binaries/releases/download/13.2.0-rt_v11-rev1/x86_64-13.2.0-release-win32-seh-msvcrt-rt_v11-rev1.7z" + sha256: "15b914f38f2f2e2d6f7b9b8425ff22b7e406878b01920190b09ce0dd8259c6aa" "12.2.0": posix: seh: diff --git a/recipes/mingw-builds/all/conanfile.py b/recipes/mingw-builds/all/conanfile.py index 8b875ba354b427..913b244a11774c 100644 --- a/recipes/mingw-builds/all/conanfile.py +++ b/recipes/mingw-builds/all/conanfile.py @@ -2,6 +2,7 @@ from conan import ConanFile from conan.errors import ConanInvalidConfiguration from conan.tools.files import copy, download, rmdir +from conan.tools.scm import Version required_conan_version = ">=1.47.0" @@ -14,14 +15,27 @@ class MingwConan(ConanFile): license = "ZPL-2.1", "MIT", "GPL-2.0-or-later" topics = ("gcc", "gnu", "unix", "mingw32", "binutils") settings = "os", "arch" - options = {"threads": ["posix", "win32"], "exception": ["seh", "sjlj"]} - default_options = {"threads": "posix", "exception": "seh"} + options = { + "threads": ["posix", "win32", "mcf"], + "exception": ["seh", "sjlj"], + "runtime": ["msvcrt", "ucrt"] + } + default_options = { + "threads": "posix", + "exception": "seh", + "runtime": "ucrt" + } provides = "mingw-w64" @property def _settings_build(self): return getattr(self, "settings_build", self.settings) + def config_options(self): + # Before version 12 (included) the only possible runtime was msvcrt + if Version(self.version) <= Version("12.2.0"): + del self.options.runtime + def validate(self): valid_os = ["Windows"] if str(self.settings.os) not in valid_os: @@ -52,15 +66,20 @@ def validate(self): def build_requirements(self): self.build_requires("7zip/19.00") + def _get_source(self): + if Version(self.version) <= Version("12.2.0"): + return self.conan_data["sources"][self.version][str(self.options.threads)][str(self.options.exception)] + else: + return self.conan_data["sources"][self.version][str(self.options.threads)][str(self.options.exception)][str(self.options.runtime)] + def build(self): # Source should be downloaded in the build step since it depends on specific options - url = self.conan_data["sources"][self.version][str(self.options.threads)][str(self.options.exception)] + url = self._get_source() self.output.info(f"Downloading: {url['url']}") download(self, url["url"], "file.7z", sha256=url["sha256"]) self.run("7z x file.7z") os.remove('file.7z') - def package(self): target = "mingw64" if self.settings.arch == "x86_64" else "mingw32" copy(self, "*", src=target, dst=self.package_folder) diff --git a/recipes/mingw-builds/config.yml b/recipes/mingw-builds/config.yml index 6ceaf5fe4c1642..337b953faeff98 100644 --- a/recipes/mingw-builds/config.yml +++ b/recipes/mingw-builds/config.yml @@ -1,4 +1,6 @@ versions: + "13.2.0": + folder: "all" "12.2.0": folder: "all" "12.1.0": diff --git a/recipes/msdfgen/all/conandata.yml b/recipes/msdfgen/all/conandata.yml index 2d80e884e7bf93..f68f3c7d5e83e8 100644 --- a/recipes/msdfgen/all/conandata.yml +++ b/recipes/msdfgen/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.11": + url: "https://github.com/Chlumsky/msdfgen/archive/refs/tags/v1.11.tar.gz" + sha256: "fad74e33274f591e72511bc0546189e7aec439f2a512ef1b2fde243554d457cb" "1.10": url: "https://github.com/Chlumsky/msdfgen/archive/refs/tags/v1.10.tar.gz" sha256: "2754d1687bfb80968d9c682e0c4c04c8fcf72df1421d076baf44ea0d87aa3662" @@ -10,8 +13,8 @@ sources: sha256: "909eb88c71268dc00cdda244a1fa40a0feefae45f68a779fbfddd5463559fa40" patches: "1.10": - - patch_file: "patches/1.10-0001-fix-cmake.patch" - patch_description: "move project position to top" + - patch_file: "patches/1.10-0001-honor-msvc-runtime.patch" + patch_description: "Remove hardcoded vc runtime" patch_type: "conan" "1.9.1": - patch_file: "patches/1.9-0001-unvendor-external-libs.patch" diff --git a/recipes/msdfgen/all/conanfile.py b/recipes/msdfgen/all/conanfile.py index 03f96bc253715d..4c27f23e5fccf4 100644 --- a/recipes/msdfgen/all/conanfile.py +++ b/recipes/msdfgen/all/conanfile.py @@ -2,7 +2,7 @@ from conan.errors import ConanInvalidConfiguration from conan.tools.build import check_min_cppstd from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout -from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get, replace_in_file, rmdir +from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get, replace_in_file, rm, rmdir from conan.tools.microsoft import is_msvc, is_msvc_static_runtime from conan.tools.scm import Version import os @@ -17,7 +17,7 @@ class MsdfgenConan(ConanFile): topics = ("msdf", "shape", "glyph", "font") homepage = "https://github.com/Chlumsky/msdfgen" url = "https://github.com/conan-io/conan-center-index" - + package_type = "library" settings = "os", "arch", "compiler", "build_type" options = { "shared": [True, False], @@ -49,12 +49,13 @@ def layout(self): cmake_layout(self, src_folder="src") def requirements(self): - self.requires("freetype/2.12.1") + self.requires("freetype/2.13.2") if Version(self.version) < "1.10": self.requires("lodepng/cci.20200615") else: - self.requires("libpng/1.6.39") - self.requires("tinyxml2/9.0.0") + self.requires("libpng/[>=1.6 <2]") + self.requires("tinyxml2/10.0.0") + def validate(self): if self.settings.compiler.get_safe("cppstd"): @@ -65,59 +66,45 @@ def validate(self): raise ConanInvalidConfiguration("skia recipe not available yet in CCI") def source(self): - get(self, **self.conan_data["sources"][self.version], - destination=self.source_folder, strip_root=True) + get(self, **self.conan_data["sources"][self.version], strip_root=True) def generate(self): tc = CMakeToolchain(self) - tc.variables["MSDFGEN_BUILD_MSDFGEN_STANDALONE"] = self.options.utility - tc.variables["MSDFGEN_USE_OPENMP"] = self.options.with_openmp - tc.variables["MSDFGEN_USE_CPP11"] = True - tc.variables["MSDFGEN_USE_SKIA"] = self.options.with_skia - tc.variables["MSDFGEN_INSTALL"] = True + tc.cache_variables["MSDFGEN_BUILD_MSDFGEN_STANDALONE"] = self.options.utility + tc.cache_variables["MSDFGEN_USE_OPENMP"] = self.options.with_openmp + tc.cache_variables["MSDFGEN_USE_CPP11"] = True + tc.cache_variables["MSDFGEN_USE_SKIA"] = self.options.with_skia + tc.cache_variables["MSDFGEN_INSTALL"] = True if Version(self.version) >= "1.10": - tc.variables["MSDFGEN_DYNAMIC_RUNTIME"] = not is_msvc_static_runtime(self) - tc.variables["MSDFGEN_USE_VCPKG"] = False + tc.cache_variables["MSDFGEN_USE_VCPKG"] = False + # Because in upstream CMakeLists, project() is called after some logic based on BUILD_SHARED_LIBS + tc.cache_variables["BUILD_SHARED_LIBS"] = self.options.shared + if Version(self.version) >= "1.11": + tc.cache_variables["MSDFGEN_DYNAMIC_RUNTIME"] = not is_msvc_static_runtime(self) + if self.settings.os == "Linux": + # Workaround for https://github.com/conan-io/conan/issues/13560 + libdirs_host = [l for dependency in self.dependencies.host.values() for l in dependency.cpp_info.aggregated_components().libdirs] + tc.variables["CMAKE_BUILD_RPATH"] = ";".join(libdirs_host) tc.generate() deps = CMakeDeps(self) deps.generate() def _patch_sources(self): apply_conandata_patches(self) - cmakelists = os.path.join(self.source_folder, "CMakeLists.txt") - # workaround against CMAKE_FIND_PACKAGE_PREFER_CONFIG ON in conan toolchain - replace_in_file(self, cmakelists, "find_package(Freetype REQUIRED)", "find_package(Freetype REQUIRED MODULE)") - # remove bundled lodepng & tinyxml2 - rmdir(self, os.path.join(self.source_folder, "lib")) - rmdir(self, os.path.join(self.source_folder, "include")) - # very weird but required for Visual Studio when libs are unvendored (at least for Ninja generator) - if is_msvc(self): - if Version(self.version) < "1.10": + + if Version(self.version) < "1.10": + # remove bundled lodepng & tinyxml2 + rmdir(self, os.path.join(self.source_folder, "lib")) + rmdir(self, os.path.join(self.source_folder, "include")) + + # very weird but required for Visual Studio when libs are unvendored (at least for Ninja generator) + if is_msvc(self): replace_in_file( self, - cmakelists, + os.path.join(self.source_folder, "CMakeLists.txt"), "set_target_properties(msdfgen-standalone PROPERTIES ARCHIVE_OUTPUT_DIRECTORY archive OUTPUT_NAME msdfgen)", "set_target_properties(msdfgen-standalone PROPERTIES OUTPUT_NAME msdfgen IMPORT_PREFIX foo)", ) - else: - replace_in_file( - self, - cmakelists, - 'set_property(TARGET msdfgen-core PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>")', - '' - ) - replace_in_file( - self, - cmakelists, - 'set_property(TARGET msdfgen-ext PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>")', - '' - ) - replace_in_file( - self, - cmakelists, - 'set_property(TARGET msdfgen PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>")', - '' - ) def build(self): self._patch_sources() @@ -130,6 +117,7 @@ def package(self): cmake = CMake(self) cmake.install() rmdir(self, os.path.join(self.package_folder, "lib", "cmake")) + rm(self, "*.pdb", os.path.join(self.package_folder, "bin")) def package_info(self): self.cpp_info.set_property("cmake_file_name", "msdfgen") @@ -167,7 +155,6 @@ def package_info(self): if self.options.with_skia: self.cpp_info.components["msdfgen-ext"].defines.append("MSDFGEN_USE_SKIA") + # TODO: to remove once conan v1 support dropped if self.options.utility: - bin_path = os.path.join(self.package_folder, "bin") - self.output.info("Appending PATH environment variable: {}".format(bin_path)) - self.env_info.PATH.append(bin_path) + self.env_info.PATH.append(os.path.join(self.package_folder, "bin")) diff --git a/recipes/msdfgen/all/patches/1.10-0001-fix-cmake.patch b/recipes/msdfgen/all/patches/1.10-0001-fix-cmake.patch deleted file mode 100644 index 50b04c4c1e5d9c..00000000000000 --- a/recipes/msdfgen/all/patches/1.10-0001-fix-cmake.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6dec916..432f218 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -2,6 +2,9 @@ - cmake_minimum_required(VERSION 3.15) - include(cmake/version.cmake) - -+# Version is specified in vcpkg.json -+project(msdfgen VERSION ${MSDFGEN_VERSION} LANGUAGES CXX) -+ - option(MSDFGEN_CORE_ONLY "Only build the core library with no dependencies" OFF) - option(MSDFGEN_BUILD_STANDALONE "Build the msdfgen standalone executable" ON) - option(MSDFGEN_USE_VCPKG "Use vcpkg package manager to link project dependencies" ON) -@@ -67,9 +70,6 @@ if(MSDFGEN_USE_VCPKG) - endif() - endif() - --# Version is specified in vcpkg.json --project(msdfgen VERSION ${MSDFGEN_VERSION} LANGUAGES CXX) -- - file(GLOB_RECURSE MSDFGEN_CORE_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "core/*.h" "core/*.hpp") - file(GLOB_RECURSE MSDFGEN_CORE_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "core/*.cpp") - file(GLOB_RECURSE MSDFGEN_EXT_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "ext/*.h" "ext/*.hpp") diff --git a/recipes/msdfgen/all/patches/1.10-0001-honor-msvc-runtime.patch b/recipes/msdfgen/all/patches/1.10-0001-honor-msvc-runtime.patch new file mode 100644 index 00000000000000..c0f9784ad23cfe --- /dev/null +++ b/recipes/msdfgen/all/patches/1.10-0001-honor-msvc-runtime.patch @@ -0,0 +1,26 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -79,7 +79,6 @@ file(GLOB_RECURSE MSDFGEN_EXT_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "ext/ + add_library(msdfgen-core "${CMAKE_CURRENT_SOURCE_DIR}/msdfgen.h" ${MSDFGEN_CORE_HEADERS} ${MSDFGEN_CORE_SOURCES}) + add_library(msdfgen::msdfgen-core ALIAS msdfgen-core) + set_target_properties(msdfgen-core PROPERTIES PUBLIC_HEADER "${MSDFGEN_CORE_HEADERS}") +-set_property(TARGET msdfgen-core PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") + target_compile_definitions(msdfgen-core PUBLIC + MSDFGEN_VERSION=${MSDFGEN_VERSION} + MSDFGEN_VERSION_MAJOR=${MSDFGEN_VERSION_MAJOR} +@@ -127,7 +126,6 @@ if(NOT MSDFGEN_CORE_ONLY) + add_library(msdfgen-ext "${CMAKE_CURRENT_SOURCE_DIR}/msdfgen-ext.h" ${MSDFGEN_EXT_HEADERS} ${MSDFGEN_EXT_SOURCES}) + add_library(msdfgen::msdfgen-ext ALIAS msdfgen-ext) + set_target_properties(msdfgen-ext PROPERTIES PUBLIC_HEADER "${MSDFGEN_EXT_HEADERS}") +- set_property(TARGET msdfgen-ext PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") + target_compile_definitions(msdfgen-ext PUBLIC MSDFGEN_USE_LIBPNG) + target_link_libraries(msdfgen-ext PRIVATE msdfgen::msdfgen-core Freetype::Freetype tinyxml2::tinyxml2 PNG::PNG) + target_include_directories(msdfgen-ext +@@ -171,7 +169,6 @@ if(MSDFGEN_BUILD_STANDALONE) + add_executable(msdfgen ${MSDFGEN_STANDALONE_SOURCES}) + target_compile_definitions(msdfgen PUBLIC MSDFGEN_STANDALONE) + target_compile_definitions(msdfgen PRIVATE MSDFGEN_VERSION_UNDERLINE=${MSDFGEN_VERSION_UNDERLINE}) +- set_property(TARGET msdfgen PROPERTY MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") + target_link_libraries(msdfgen PRIVATE msdfgen::msdfgen) + set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT msdfgen) + endif() diff --git a/recipes/msdfgen/all/test_package/OpenSans-Bold.ttf b/recipes/msdfgen/all/test_package/OpenSans-Bold.ttf deleted file mode 100644 index fd79d43bea0293..00000000000000 Binary files a/recipes/msdfgen/all/test_package/OpenSans-Bold.ttf and /dev/null differ diff --git a/recipes/msdfgen/all/test_package/conanfile.py b/recipes/msdfgen/all/test_package/conanfile.py index c4fdfb4dbdc982..0a6bc68712d901 100644 --- a/recipes/msdfgen/all/test_package/conanfile.py +++ b/recipes/msdfgen/all/test_package/conanfile.py @@ -23,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - ttf_path = os.path.join(self.source_folder, "OpenSans-Bold.ttf") - self.run(f"{bin_path} {ttf_path}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/msdfgen/all/test_package/test_package.cpp b/recipes/msdfgen/all/test_package/test_package.cpp index d169064c206c28..fc8e183067d7ea 100644 --- a/recipes/msdfgen/all/test_package/test_package.cpp +++ b/recipes/msdfgen/all/test_package/test_package.cpp @@ -4,26 +4,9 @@ #include int main(int argc, char **argv) { - if (argc < 2) { - std::cerr << "Need at least one argument\n"; - return 1; - } - msdfgen::FreetypeHandle *ft = msdfgen::initializeFreetype(); if (ft) { - msdfgen::FontHandle *font = msdfgen::loadFont(ft, argv[1]); - if (font) { - msdfgen::Shape shape; - if (msdfgen::loadGlyph(shape, font, 'A')) { - shape.normalize(); - msdfgen::edgeColoringSimple(shape, 3.0); - msdfgen::Bitmap msdf(32, 32); - msdfgen::generateMSDF(msdf, shape, 4.0, 1.0, msdfgen::Vector2(4.0, 4.0)); - msdfgen::savePng(msdf, "output.png"); - } - msdfgen::destroyFont(font); - } - msdfgen::deinitializeFreetype(ft); + std::cout << "Test" << std::endl; // This should be printed } return 0; } diff --git a/recipes/msdfgen/all/test_v1_package/conanfile.py b/recipes/msdfgen/all/test_v1_package/conanfile.py index 7b775db727c08e..38f4483872d47f 100644 --- a/recipes/msdfgen/all/test_v1_package/conanfile.py +++ b/recipes/msdfgen/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - ttf_path = os.path.join(self.source_folder, os.pardir, "test_package", "OpenSans-Bold.ttf") - self.run(f"{bin_path} {ttf_path}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/msdfgen/config.yml b/recipes/msdfgen/config.yml index 9f326bdd6e1a40..91cf4a222ec6ce 100644 --- a/recipes/msdfgen/config.yml +++ b/recipes/msdfgen/config.yml @@ -1,4 +1,6 @@ versions: + "1.11": + folder: all "1.10": folder: all "1.9.1": diff --git a/recipes/nifti_clib/all/conandata.yml b/recipes/nifti_clib/all/conandata.yml new file mode 100644 index 00000000000000..1821fa5866772a --- /dev/null +++ b/recipes/nifti_clib/all/conandata.yml @@ -0,0 +1,4 @@ +sources: + "3.0.0": + url: "https://github.com/NIFTI-Imaging/nifti_clib/archive/refs/tags/v3.0.0.tar.gz" + sha256: "fe6cb1076974df01844f3f4dab1aa844953b3bc1d679126c652975158573d03d" diff --git a/recipes/nifti_clib/all/conanfile.py b/recipes/nifti_clib/all/conanfile.py new file mode 100644 index 00000000000000..14e3e3f3e49601 --- /dev/null +++ b/recipes/nifti_clib/all/conanfile.py @@ -0,0 +1,151 @@ +from conan import ConanFile +from conan.errors import ConanInvalidConfiguration +from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout +from conan.tools.files import copy, get, rm, rmdir +from conan.tools.microsoft import is_msvc, is_msvc_static_runtime +import os + + +required_conan_version = ">=1.53.0" + + +class NiftiClibConan(ConanFile): + name = "nifti_clib" + description = "C libraries for NIFTI support" + license = "LicenseRef-LICENSE" + url = "https://github.com/conan-io/conan-center-index" + homepage = "https://github.com/NIFTI-Imaging/nifti_clib" + topics = ("image") + package_type = "library" + settings = "os", "arch", "compiler", "build_type" + options = { + "shared": [True, False], + "fPIC": [True, False], + "use_nifti2": [True, False], + "use_cifti": [True, False], + "use_fslio": [True, False] + } + default_options = { + "shared": False, + "fPIC": True, + "use_nifti2": True, + "use_cifti": False, # seems to be beta? + "use_fslio": False # Note in CMakeLists.txt: "If OFF, The copyright of this code is questionable for inclusion with nifti." + } + + def config_options(self): + if self.settings.os == "Windows": + del self.options.fPIC + + def validate(self): + if is_msvc(self) and self.options.shared: + # not supported due to not having dllexport definitions + raise ConanInvalidConfiguration(f"{self.ref} does not support -o {self.ref}:shared=True with MSVC compiler.") + if not self.options.use_nifti2 and self.options.use_cifti: + raise ConanInvalidConfiguration(f"{self.ref} -o '&:use_cifti=True' requires -o '&:use_nifti2=True'") + + def configure(self): + if self.options.shared: + self.options.rm_safe("fPIC") + self.settings.rm_safe("compiler.cppstd") + self.settings.rm_safe("compiler.libcxx") + + def layout(self): + cmake_layout(self, src_folder="src") + + def requirements(self): + self.requires("zlib/[>=1.2.11 <2]") + if self.options.use_cifti: + self.requires("expat/[>=2.6.2 <3]") + + def source(self): + get(self, **self.conan_data["sources"][self.version], strip_root=True) + + def generate(self): + tc = CMakeToolchain(self) + tc.variables["NIFTI_INSTALL_NO_DOCS"] = True + tc.variables["USE_NIFTI2_CODE"] = self.options.use_nifti2 + tc.variables["USE_CIFTI_CODE"] = self.options.use_cifti + tc.variables["USE_FSL_CODE"] = self.options.use_fslio + tc.variables["NIFTI_BUILD_TESTING"] = False # disable building tests + if is_msvc(self): + tc.variables["USE_MSVC_RUNTIME_LIBRARY_DLL"] = not is_msvc_static_runtime(self) + tc.preprocessor_definitions["_CRT_SECURE_NO_WARNINGS"] = 1 + tc.generate() + tc = CMakeDeps(self) + tc.generate() + + def build(self): + cmake = CMake(self) + cmake.configure() + cmake.build() + + def package(self): + copy(self, "LICENSE", self.source_folder, os.path.join(self.package_folder, "licenses")) + cmake = CMake(self) + cmake.install() + + rmdir(self, os.path.join(self.package_folder, "lib", "pkgconfig")) + rmdir(self, os.path.join(self.package_folder, "lib", "cmake")) + rmdir(self, os.path.join(self.package_folder, "share")) + rm(self, "*.la", os.path.join(self.package_folder, "lib")) + rm(self, "*.pdb", os.path.join(self.package_folder, "lib")) + rm(self, "*.pdb", os.path.join(self.package_folder, "bin")) + + def package_info(self): + self.cpp_info.set_property("cmake_file_name", "nifti") + self.cpp_info.set_property("cmake_target_name", "NIFTI::NIFTI") + self.cpp_info.set_property("pkg_config_name", "nifti") + self.cpp_info.includedirs += [ os.path.join("include", "nifti") ] + + sys_libs = [] + if self.settings.os in ["Linux", "FreeBSD"]: + sys_libs += ["m"] + + self.cpp_info.required_components = ["ZLIB::ZLIB"] + if self.options.use_cifti: + self.cpp_info.required_components += ["EXPAT::EXPAT"] + + self.cpp_info.components["znz"].libs = ["znz"] + self.cpp_info.components["znz"].set_property("pkg_config_name", "znz") + self.cpp_info.components["znz"].set_property("cmake_target_name", "NIFTI::znz") + self.cpp_info.components["znz"].includedirs += [os.path.join("include", "nifti")] + self.cpp_info.components["znz"].system_libs += sys_libs + + # inside the niftilib folder + self.cpp_info.components["niftiio"].libs = ["niftiio"] + self.cpp_info.components["niftiio"].set_property("pkg_config_name", "niftiio") + self.cpp_info.components["niftiio"].set_property("cmake_target_name", "NIFTI::niftiio") + self.cpp_info.components["niftiio"].includedirs += [os.path.join("include", "nifti")] + self.cpp_info.components["niftiio"].system_libs += sys_libs + + self.cpp_info.components["nifticdf"].libs = ["nifticdf"] + self.cpp_info.components["nifticdf"].requires = ["niftiio"] + self.cpp_info.components["nifticdf"].set_property("pkg_config_name", "nifticdf") + self.cpp_info.components["nifticdf"].set_property("cmake_target_name", "NIFTI::nifticdf") + self.cpp_info.components["nifticdf"].includedirs += [os.path.join("include", "nifti")] + self.cpp_info.components["nifticdf"].system_libs += sys_libs + + if self.options.use_nifti2: + self.cpp_info.components["nifti2"].libs = ["nifti2"] + self.cpp_info.components["nifti2"].requires = ["znz"] + self.cpp_info.components["nifti2"].set_property("pkg_config_name", "nifti2") + self.cpp_info.components["nifti2"].set_property("cmake_target_name", "NIFTI::nifti2") + self.cpp_info.components["nifti2"].includedirs += [os.path.join("include", "nifti")] + self.cpp_info.components["nifti2"].system_libs += sys_libs + + if self.options.use_cifti: + self.cpp_info.components["cifti"].libs = ["cifti"] + self.cpp_info.components["cifti"].requires = ["nifti2"] + self.cpp_info.components["cifti"].set_property("pkg_config_name", "cifti") + self.cpp_info.components["cifti"].set_property("cmake_target_name", "NIFTI::cifti") + self.cpp_info.components["cifti"].includedirs += [os.path.join("include", "nifti")] + self.cpp_info.components["cifti"].system_libs += sys_libs + + if self.options.use_fslio: + self.cpp_info.components["fslio"].libs = ["fslio"] + self.cpp_info.components["fslio"].requires = ["nifti2"] + self.cpp_info.components["fslio"].set_property("pkg_config_name", "fslio") + self.cpp_info.components["fslio"].set_property("cmake_target_name", "NIFTI::fslio") + self.cpp_info.components["fslio"].includedirs += [os.path.join("include", "nifti")] + self.cpp_info.components["fslio"].system_libs += sys_libs diff --git a/recipes/nifti_clib/all/test_package/CMakeLists.txt b/recipes/nifti_clib/all/test_package/CMakeLists.txt new file mode 100644 index 00000000000000..a63a2b6d3fe162 --- /dev/null +++ b/recipes/nifti_clib/all/test_package/CMakeLists.txt @@ -0,0 +1,9 @@ +cmake_minimum_required(VERSION 3.15) + +project(test_package LANGUAGES C) + +find_package(NIFTI 3 REQUIRED CONFIG) + +add_executable(${PROJECT_NAME} test_package.c) + +target_link_libraries(${PROJECT_NAME} PRIVATE NIFTI::nifticdf) diff --git a/recipes/nifti_clib/all/test_package/conanfile.py b/recipes/nifti_clib/all/test_package/conanfile.py new file mode 100644 index 00000000000000..ef5d7042163ecc --- /dev/null +++ b/recipes/nifti_clib/all/test_package/conanfile.py @@ -0,0 +1,26 @@ +from conan import ConanFile +from conan.tools.build import can_run +from conan.tools.cmake import cmake_layout, CMake +import os + + +class TestPackageConan(ConanFile): + 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) + cmake.configure() + cmake.build() + + def test(self): + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindir, "test_package") + self.run(bin_path, env="conanrun") diff --git a/recipes/nifti_clib/all/test_package/test_package.c b/recipes/nifti_clib/all/test_package/test_package.c new file mode 100644 index 00000000000000..c1c849f8faf184 --- /dev/null +++ b/recipes/nifti_clib/all/test_package/test_package.c @@ -0,0 +1,9 @@ +#include "nifticdf.h" + +// taken from nifti_clib/real_easy/minimal_example_of_downstream_usage +int main(void) { + double input= 7.0; + const double output = alnrel(&input); + + return (output > 0.0) ? EXIT_SUCCESS: EXIT_FAILURE ; +} diff --git a/recipes/nifti_clib/config.yml b/recipes/nifti_clib/config.yml new file mode 100644 index 00000000000000..3a44950f9d81d1 --- /dev/null +++ b/recipes/nifti_clib/config.yml @@ -0,0 +1,4 @@ +versions: + # Newer versions at the top + "3.0.0": + folder: all diff --git a/recipes/onnx/all/conandata.yml b/recipes/onnx/all/conandata.yml index f058303147df0b..0ac824c98a00db 100644 --- a/recipes/onnx/all/conandata.yml +++ b/recipes/onnx/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.16.1": + url: "https://github.com/onnx/onnx/archive/v1.16.1.tar.gz" + sha256: "0e6aa2c0a59bb2d90858ad0040ea1807117cc2f05b97702170f18e6cd6b66fb3" "1.16.0": url: "https://github.com/onnx/onnx/archive/v1.16.0.tar.gz" sha256: "0ce153e26ce2c00afca01c331a447d86fbf21b166b640551fe04258b4acfc6a4" diff --git a/recipes/onnx/config.yml b/recipes/onnx/config.yml index 075fe1cfd61f08..9f508d50a4d4bd 100644 --- a/recipes/onnx/config.yml +++ b/recipes/onnx/config.yml @@ -1,4 +1,6 @@ versions: + "1.16.1": + folder: all "1.16.0": folder: all "1.15.0": diff --git a/recipes/openfbx/all/test_package/conanfile.py b/recipes/openfbx/all/test_package/conanfile.py index 7635e9e2837582..0a6bc68712d901 100644 --- a/recipes/openfbx/all/test_package/conanfile.py +++ b/recipes/openfbx/all/test_package/conanfile.py @@ -23,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - fbx_path = os.path.join(self.source_folder, "d.fbx") - self.run(f"{bin_path} {fbx_path}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/openfbx/all/test_package/d.fbx b/recipes/openfbx/all/test_package/d.fbx deleted file mode 100644 index 147ec354d2be2e..00000000000000 Binary files a/recipes/openfbx/all/test_package/d.fbx and /dev/null differ diff --git a/recipes/openfbx/all/test_package/test_package.cpp b/recipes/openfbx/all/test_package/test_package.cpp index be802370b1f876..a45770bbd55622 100644 --- a/recipes/openfbx/all/test_package/test_package.cpp +++ b/recipes/openfbx/all/test_package/test_package.cpp @@ -5,17 +5,11 @@ #include int main(int argc, char **argv) { - if (argc < 2) { - std::cerr << "Need at least one argument" << std::endl; - return -1; - } - std::ifstream in_file(argv[1], std::ios::binary); - in_file.seekg(0, std::ios::end); - int file_size = static_cast(in_file.tellg()); - std::vector content(file_size); + std::vector content(13); + ofbx::IScene *g_scene = ofbx::load(&content[0], 13, static_cast(ofbx::LoadFlags::TRIANGULATE)); - ofbx::IScene *g_scene = ofbx::load(&content[0], file_size, static_cast(ofbx::LoadFlags::TRIANGULATE)); + std::cout << "Test: " << g_scene << std::endl; return 0; } diff --git a/recipes/openfbx/all/test_v1_package/conanfile.py b/recipes/openfbx/all/test_v1_package/conanfile.py index fad029416492df..38f4483872d47f 100644 --- a/recipes/openfbx/all/test_v1_package/conanfile.py +++ b/recipes/openfbx/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - fbx_path = os.path.join(self.source_folder, os.pardir, "test_package", "d.fbx") - self.run(f"{bin_path} {fbx_path}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/openscenegraph/all/CMakeLists.txt b/recipes/openscenegraph/all/CMakeLists.txt index a0749127966c05..5acc346654c579 100644 --- a/recipes/openscenegraph/all/CMakeLists.txt +++ b/recipes/openscenegraph/all/CMakeLists.txt @@ -1,23 +1,44 @@ -cmake_minimum_required(VERSION 3.1.2) +cmake_minimum_required(VERSION 3.15) project(cmake_wrapper) -include(${PROJECT_BINARY_DIR}/conanbuildinfo.cmake) -conan_basic_setup(NO_OUTPUT_DIRS) +macro(custom_find_package name variable) + string(TOUPPER ${name} name_upper) + if(${variable}) + find_package(${name} ${ARGN} REQUIRED CONFIG + # Allow only Conan packages + NO_DEFAULT_PATH + PATHS ${CMAKE_PREFIX_PATH} + ) + set(${name_upper}_FOUND TRUE) + set(${name_upper}_VERSION_STRING ${${name}_VERSION_STRING}) + set(${name_upper}_INCLUDE_DIRS ${${name}_INCLUDE_DIRS}) + set(${name_upper}_INCLUDE_DIR ${${name}_INCLUDE_DIR}) + set(${name_upper}_LIBRARIES ${${name}_LIBRARIES}) + set(${name_upper}_DEFINITIONS ${${name}_DEFINITIONS}) + unset(name_upper) + else() + set(${name}_FOUND FALSE) + set(${name_upper}_FOUND FALSE) + endif() +endmacro() -# Hack to insure that conan's copy of these are used, rather than CMake's -# If this isn't here, find_package(X11) will pull in CMake's copy -find_package(Freetype QUIET) -find_package(Fontconfig QUIET) +custom_find_package(Boost OSG_WITH_ASIO) +custom_find_package(Asio OSG_WITH_ASIO) +custom_find_package(CURL OSG_WITH_CURL) +custom_find_package(Fontconfig OSG_TEXT_USE_FONTCONFIG) +custom_find_package(Freetype OSG_WITH_FREETYPE) +custom_find_package(GDAL OSG_WITH_GDAL) +custom_find_package(GIFLIB OSG_WITH_GIFLIB) +custom_find_package(GTA OSG_WITH_GTA) +custom_find_package(JPEG OSG_WITH_JPEG) +custom_find_package(Jasper OSG_WITH_JASPER) +custom_find_package(OpenEXR OSG_WITH_OPENEXR) +custom_find_package(PNG OSG_WITH_PNG) +custom_find_package(TIFF OSG_WITH_TIFF) +custom_find_package(ZLIB OSG_WITH_ZLIB) +custom_find_package(DCMTK OSG_WITH_DCMTK) +# custom_find_package(Poppler) +# custom_find_package(RSVG) +# custom_find_package(SDL2) -# Workaround limitations of the cmake_find_package generator -set(FREETYPE_FOUND ${Freetype_FOUND}) -if(FREETYPE_FOUND) - set(FREETYPE_LIBRARIES ${Freetype_LIBRARIES}) - set(FREETYPE_INCLUDE_DIRS ${Freetype_INCLUDE_DIRS}) -endif() - -if(APPLE) - add_compile_definitions("GL_SILENCE_DEPRECATION") -endif() - -add_subdirectory("source_subfolder") +add_subdirectory(src) diff --git a/recipes/openscenegraph/all/conan-official-osg-variables.cmake b/recipes/openscenegraph/all/conan-official-osg-variables.cmake new file mode 100644 index 00000000000000..636f54b308c409 --- /dev/null +++ b/recipes/openscenegraph/all/conan-official-osg-variables.cmake @@ -0,0 +1,23 @@ +# Reproduce https://github.com/openscenegraph/OpenSceneGraph/blob/master/packaging/cmake/OpenSceneGraphConfig.cmake.in +# Component-specific variables are not created. Use the component targets instead. + +# Only export these for the OpenSceneGraph config file, not FindOSG.cmake +if(NOT DEFINED OSG_LIBRARIES) + set(OPENSCENEGRAPH_FOUND TRUE) + set(OPENSCENEGRAPH_LIBRARIES ${OpenSceneGraph_LIBRARIES}) + set(OPENSCENEGRAPH_INCLUDE_DIR ${OpenSceneGraph_INCLUDE_DIRS}) + set(OPENSCENEGRAPH_INCLUDE_DIRS ${OpenSceneGraph_INCLUDE_DIRS}) + + set(OPENSCENEGRAPH_VERSION ${OpenSceneGraph_VERSION}) + set(OPENSCENEGRAPH_VERSION_STRING ${OpenSceneGraph_VERSION_STRING}) + + set(OSG_LIBRARY ${OpenSceneGraph_LIBRARIES}) + set(OSG_LIBRARIES ${OpenSceneGraph_LIBRARIES}) + set(OSG_INCLUDE_DIR ${OpenSceneGraph_INCLUDE_DIRS}) + set(OSG_INCLUDE_DIRS ${OpenSceneGraph_INCLUDE_DIRS}) +endif() + +# Reproduce https://github.com/openscenegraph/OpenSceneGraph/blob/master/CMakeModules/FindOpenThreads.cmake +set(OPENTHREADS_FOUND TRUE) +set(OPENTHREADS_INCLUDE_DIR ${OpenSceneGraph_INCLUDE_DIRS}) +set(OPENTHREADS_LIBRARY OpenThreads::OpenThreads) diff --git a/recipes/openscenegraph/all/conandata.yml b/recipes/openscenegraph/all/conandata.yml index 0f1b6a2cc47905..094e9853e6fca2 100644 --- a/recipes/openscenegraph/all/conandata.yml +++ b/recipes/openscenegraph/all/conandata.yml @@ -1,18 +1,38 @@ sources: 3.6.5: - sha256: aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12 - url: https://github.com/openscenegraph/OpenSceneGraph/archive/OpenSceneGraph-3.6.5.tar.gz + url: "https://github.com/openscenegraph/OpenSceneGraph/archive/OpenSceneGraph-3.6.5.tar.gz" + sha256: "aea196550f02974d6d09291c5d83b51ca6a03b3767e234a8c0e21322927d1e12" patches: 3.6.5: - patch_file: patches/0001-fix-to_cmake_path-usage.patch - base_path: source_subfolder - - patch_file: patches/0002-Use-standard-CMake-name-for-gif.patch - base_path: source_subfolder - - patch_file: patches/0003-Correct-usage-of-_LIBRARY-to-_LIBRARIES.patch - base_path: source_subfolder - - patch_file: patches/0004-Allow-explicit-control-of-plugins.patch - base_path: source_subfolder + patch_description: Fix cmake paths + patch_type: portability - patch_file: patches/0005-use-JPEG-target-for-plugin.patch - base_path: source_subfolder + patch_description: This fixes building against a static libjpeg on windows + patch_type: portability - patch_file: patches/0006-Declare-result-as-LONG-for-Mingw-build.patch - base_path: source_subfolder + patch_description: Win32's ChangeDisplaySettingsEx() API function is documented as returning `LONG`, which evidently is not always the same as `unsigned int` (Mingw64.) This cause a compile error on Mingw with clang10. + patch_type: official + patch_source: https://github.com/openscenegraph/OpenSceneGraph/commit/67468cce344dd5e503aaa1063845f34720563f79 + - patch_file: patches/0007-fix-msvc-with-std-c++17.patch + patch_description: Fix to be able to build with c++17 on MSVC + patch_type: official + patch_source: https://github.com/openscenegraph/OpenSceneGraph/pull/1055 + - patch_file: patches/0008-replace-mem-fun-ref.patch + patch_description: Replaced std::mem_fun_ref usage to avoid compatiblity with modern compilers + patch_type: official + patch_source: https://github.com/openscenegraph/OpenSceneGraph/commit/8a0114a46a4bad9041297950fe3bfbb2aea6e1da + - patch_file: patches/0009-replace-auto-ptr-in-plugins.patch + patch_description: auto_ptr is removed in C++17. + patch_type: portability + patch_source: https://github.com/openscenegraph/OpenSceneGraph/pull/1246 + - patch_file: patches/0010-replace-ptr-fun-in-obj-plugin.patch + patch_description: ptr_fun is removed in C++17 + patch_type: portability + patch_source: https://github.com/openscenegraph/OpenSceneGraph/pull/1246 + - patch_file: patches/0011-remove-deprecated-register.patch + patch_description: The "register" keyword is deprecated as of C++17 + patch_type: bugfix + patch_source: + - https://github.com/openscenegraph/OpenSceneGraph/pull/1296 + - https://github.com/openscenegraph/OpenSceneGraph/pull/951 diff --git a/recipes/openscenegraph/all/conanfile.py b/recipes/openscenegraph/all/conanfile.py index 5d6b6d3a14882b..8ed902063ca316 100644 --- a/recipes/openscenegraph/all/conanfile.py +++ b/recipes/openscenegraph/all/conanfile.py @@ -1,25 +1,27 @@ +import os +import re +from pathlib import Path + from conan import ConanFile -from conan.tools.files import get, rmdir, rm, apply_conandata_patches +from conan.errors import ConanInvalidConfiguration +from conan.tools.apple import is_apple_os from conan.tools.build import cross_building +from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout +from conan.tools.files import apply_conandata_patches, copy, export_conandata_patches, get, rm, rmdir, replace_in_file from conan.tools.scm import Version -from conan.tools.apple import is_apple_os -from conan.errors import ConanInvalidConfiguration -from conans import CMake -import os -import functools - -required_conan_version = ">=1.50.0" +required_conan_version = ">=1.53.0" class OpenSceneGraphConanFile(ConanFile): name = "openscenegraph" description = "OpenSceneGraph is an open source high performance 3D graphics toolkit" - topics = ("openscenegraph", "graphics") + license = ("LGPL-2.1-only", "WxWindows-exception-3.1") url = "https://github.com/conan-io/conan-center-index" homepage = "http://www.openscenegraph.org" - license = "LGPL-2.1-only", "WxWindows-exception-3.1" + topics = ("graphics",) + package_type = "library" settings = "os", "arch", "compiler", "build_type" options = { "shared": [True, False], @@ -42,11 +44,12 @@ class OpenSceneGraphConanFile(ConanFile): "with_gif": [True, False], "with_gta": [True, False], "with_jasper": [True, False], - "with_jpeg": [True, False], + "with_jpeg": ["libjpeg", "libjpeg-turbo", "mozjpeg", False], "with_openexr": [True, False], "with_png": [True, False], "with_tiff": [True, False], "with_zlib": [True, False], + "with_avfoundation": [True, False], "opengl_profile": ["gl1", "gl2", "gl3", "glCore", "gles1", "gles2", "gles3", "gles2+gles3"], } default_options = { @@ -70,21 +73,20 @@ class OpenSceneGraphConanFile(ConanFile): "with_gif": True, "with_gta": False, "with_jasper": False, - "with_jpeg": True, + "with_jpeg": "libjpeg", "with_openexr": False, "with_png": True, "with_tiff": True, "with_zlib": True, "opengl_profile": "gl2", + "with_avfoundation": True, } - short_paths = True - exports_sources = "CMakeLists.txt", "patches/*.patch" - generators = "cmake", "cmake_find_package" - @property - def _source_subfolder(self): - return "source_subfolder" + def export_sources(self): + copy(self, "CMakeLists.txt", self.recipe_folder, self.export_sources_folder) + copy(self, "conan-official-osg-variables.cmake", self.recipe_folder, self.export_sources_folder) + export_conandata_patches(self) def config_options(self): if self.settings.os == "Windows": @@ -102,163 +104,254 @@ def config_options(self): # imageio supports tiff files so the tiff plugin isn't needed on Apple platforms self.options.with_tiff = False + else: + del self.options.with_avfoundation def configure(self): if self.options.shared: - del self.options.fPIC + self.options.rm_safe("fPIC") if not self.options.with_zlib: # These require zlib support - del self.options.with_openexr - del self.options.with_png - del self.options.with_dcmtk + self.options.rm_safe("with_openexr") + self.options.rm_safe("with_png") + self.options.rm_safe("with_dcmtk") - def validate(self): - if self.options.get_safe("with_asio", False): - raise ConanInvalidConfiguration("ASIO support in OSG is broken, see https://github.com/openscenegraph/OpenSceneGraph/issues/921") - if hasattr(self, "settings_build") and cross_building(self): - raise ConanInvalidConfiguration("openscenegraph recipe cannot be cross-built yet. Contributions are welcome.") + def layout(self): + cmake_layout(self, src_folder="src") def requirements(self): - if self.options.enable_windowing_system and self.settings.os == "Linux": + if self.options.enable_windowing_system and self.settings.os in ["Linux", "FreeBSD"]: self.requires("xorg/system") self.requires("opengl/system") if self.options.use_fontconfig: self.requires("fontconfig/2.14.2") - if self.options.get_safe("with_asio", False): + if self.options.get_safe("with_asio"): # Should these be private requires? - self.requires("asio/1.22.1") - self.requires("boost/1.81.0") + self.requires("asio/1.28.1") + self.requires("boost/1.83.0") if self.options.with_curl: - self.requires("libcurl/8.0.1") + self.requires("libcurl/[>=7.78 <9]") if self.options.get_safe("with_dcmtk"): - self.requires("dcmtk/3.6.6") + self.requires("dcmtk/3.6.7") if self.options.with_freetype: - self.requires("freetype/2.13.0") + self.requires("freetype/2.13.2") if self.options.with_gdal: - self.requires("gdal/3.4.3") + self.requires("gdal/3.8.3") if self.options.get_safe("with_gif"): self.requires("giflib/5.2.1") if self.options.with_gta: self.requires("libgta/1.2.1") if self.options.with_jasper: - self.requires("jasper/2.0.33") - if self.options.get_safe("with_jpeg"): + self.requires("jasper/4.2.0") + if self.options.get_safe("with_jpeg") == "libjpeg": self.requires("libjpeg/9e") + elif self.options.get_safe("with_jpeg") == "libjpeg-turbo": + self.requires("libjpeg-turbo/3.0.2") + elif self.options.get_safe("with_jpeg") == "mozjpeg": + self.requires("mozjpeg/4.1.5") if self.options.get_safe("with_openexr"): - self.requires("openexr/3.1.7") + self.requires("openexr/3.2.3") if self.options.get_safe("with_png"): self.requires("libpng/1.6.40") if self.options.with_tiff: - self.requires("libtiff/4.5.1") + self.requires("libtiff/4.6.0") if self.options.with_zlib: - self.requires("zlib/1.2.13") - - def source(self): - get(self, **self.conan_data["sources"][self.version], destination=self._source_subfolder, strip_root=True) + self.requires("zlib/[>=1.2.11 <2]") - def _patch_sources(self): - apply_conandata_patches(self) - - for package in ("Fontconfig", "Freetype", "GDAL", "GIFLIB", "GTA", "Jasper", "OpenEXR"): - # Prefer conan's find package scripts over osg's - os.unlink(os.path.join(self._source_subfolder, "CMakeModules", "Find{}.cmake".format(package))) + def validate(self): + if self.options.get_safe("with_asio"): + raise ConanInvalidConfiguration( + "ASIO support in OSG is broken, " + "see https://github.com/openscenegraph/OpenSceneGraph/issues/921" + ) + if hasattr(self, "settings_build") and cross_building(self): + raise ConanInvalidConfiguration( + "openscenegraph recipe cannot be cross-built yet. " + "Contributions are welcome." + ) - @functools.lru_cache(1) - def _configured_cmake(self): - cmake = CMake(self) + def source(self): + get(self, **self.conan_data["sources"][self.version], strip_root=True) - cmake.definitions["USE_3RDPARTY_BIN"] = False + def generate(self): + tc = CMakeToolchain(self) + tc.variables["USE_3RDPARTY_BIN"] = False - cmake.definitions["DYNAMIC_OPENSCENEGRAPH"] = self.options.shared - cmake.definitions["DYNAMIC_OPENTHREADS"] = self.options.shared + tc.variables["DYNAMIC_OPENSCENEGRAPH"] = self.options.shared + tc.variables["DYNAMIC_OPENTHREADS"] = self.options.shared - cmake.definitions["BUILD_OSG_APPLICATIONS"] = self.options.build_applications - cmake.definitions["BUILD_OSG_EXAMPLES"] = False + tc.variables["BUILD_OSG_APPLICATIONS"] = self.options.build_applications + tc.variables["BUILD_OSG_EXAMPLES"] = False - cmake.definitions["OSG_NOTIFY_DISABLED"] = not self.options.enable_notify - cmake.definitions["OSG_USE_DEPRECATED_API"] = self.options.enable_deprecated_api - cmake.definitions["OSG_PROVIDE_READFILE"] = self.options.enable_readfile - cmake.definitions["OSG_USE_REF_PTR_IMPLICIT_OUTPUT_CONVERSION"] = self.options.enable_ref_ptr_implicit_output_conversion - cmake.definitions["OSG_USE_REF_PTR_SAFE_DEREFERENCE"] = self.options.enable_ref_ptr_safe_dereference - cmake.definitions["OSG_ENVVAR_SUPPORTED"] = self.options.enable_envvar_support + tc.variables["OSG_NOTIFY_DISABLED"] = not self.options.enable_notify + tc.variables["OSG_USE_DEPRECATED_API"] = self.options.enable_deprecated_api + tc.variables["OSG_PROVIDE_READFILE"] = self.options.enable_readfile + tc.variables["OSG_USE_REF_PTR_IMPLICIT_OUTPUT_CONVERSION"] = self.options.enable_ref_ptr_implicit_output_conversion + tc.variables["OSG_USE_REF_PTR_SAFE_DEREFERENCE"] = self.options.enable_ref_ptr_safe_dereference + tc.variables["OSG_ENVVAR_SUPPORTED"] = self.options.enable_envvar_support if not self.options.enable_windowing_system: - cmake.definitions["OSG_WINDOWING_SYSTEM"] = None + tc.variables["OSG_WINDOWING_SYSTEM"] = None - cmake.definitions["BUILD_OSG_DEPRECATED_SERIALIZERS"] = self.options.enable_deprecated_serializers + tc.variables["BUILD_OSG_DEPRECATED_SERIALIZERS"] = self.options.enable_deprecated_serializers - cmake.definitions["OSG_TEXT_USE_FONTCONFIG"] = self.options.use_fontconfig + tc.variables["OSG_TEXT_USE_FONTCONFIG"] = self.options.use_fontconfig - cmake.definitions["OPENGL_PROFILE"] = str(self.options.opengl_profile).upper() + tc.variables["OPENGL_PROFILE"] = str(self.options.opengl_profile).upper() # Disable option dependencies unless we have a package for them - cmake.definitions["OSG_WITH_FREETYPE"] = self.options.with_freetype - cmake.definitions["OSG_WITH_OPENEXR"] = self.options.get_safe("with_openexr", False) - cmake.definitions["OSG_WITH_INVENTOR"] = False - cmake.definitions["OSG_WITH_JASPER"] = self.options.with_jasper - cmake.definitions["OSG_WITH_OPENCASCADE"] = False - cmake.definitions["OSG_WITH_FBX"] = False - cmake.definitions["OSG_WITH_ZLIB"] = self.options.with_zlib - cmake.definitions["OSG_WITH_GDAL"] = self.options.with_gdal - cmake.definitions["OSG_WITH_GTA"] = self.options.with_gta - cmake.definitions["OSG_WITH_CURL"] = self.options.with_curl - cmake.definitions["OSG_WITH_LIBVNCSERVER"] = False - cmake.definitions["OSG_WITH_DCMTK"] = self.options.get_safe("with_dcmtk", False) - cmake.definitions["OSG_WITH_FFMPEG"] = False - cmake.definitions["OSG_WITH_DIRECTSHOW"] = False - cmake.definitions["OSG_WITH_SDL"] = False - cmake.definitions["OSG_WITH_POPPLER"] = False - cmake.definitions["OSG_WITH_RSVG"] = False - cmake.definitions["OSG_WITH_NVTT"] = False - cmake.definitions["OSG_WITH_ASIO"] = self.options.get_safe("with_asio", False) - cmake.definitions["OSG_WITH_ZEROCONF"] = False - cmake.definitions["OSG_WITH_LIBLAS"] = False - cmake.definitions["OSG_WITH_GIF"] = self.options.get_safe("with_gif", False) - cmake.definitions["OSG_WITH_JPEG"] = self.options.get_safe("with_jpeg", False) - cmake.definitions["OSG_WITH_PNG"] = self.options.get_safe("with_png", False) - cmake.definitions["OSG_WITH_TIFF"] = self.options.with_tiff + tc.variables["OSG_WITH_FREETYPE"] = self.options.with_freetype + tc.variables["OSG_WITH_OPENEXR"] = self.options.get_safe("with_openexr", False) + tc.variables["OSG_WITH_INVENTOR"] = False + tc.variables["OSG_WITH_JASPER"] = self.options.with_jasper + tc.variables["OSG_WITH_OPENCASCADE"] = False + tc.variables["OSG_WITH_FBX"] = False + tc.variables["OSG_WITH_ZLIB"] = self.options.with_zlib + tc.variables["OSG_WITH_GDAL"] = self.options.with_gdal + tc.variables["OSG_WITH_GTA"] = self.options.with_gta + tc.variables["OSG_WITH_CURL"] = self.options.with_curl + tc.variables["OSG_WITH_LIBVNCSERVER"] = False + tc.variables["OSG_WITH_DCMTK"] = self.options.get_safe("with_dcmtk", False) + tc.variables["OSG_WITH_FFMPEG"] = False + tc.variables["OSG_WITH_DIRECTSHOW"] = False + tc.variables["OSG_WITH_SDL"] = False + tc.variables["OSG_WITH_POPPLER"] = False + tc.variables["OSG_WITH_RSVG"] = False + tc.variables["OSG_WITH_NVTT"] = False + tc.variables["OSG_WITH_ASIO"] = self.options.get_safe("with_asio", False) + tc.variables["OSG_WITH_ZEROCONF"] = False + tc.variables["OSG_WITH_LIBLAS"] = False + tc.variables["OSG_WITH_GIFLIB"] = self.options.get_safe("with_gif", False) + tc.variables["OSG_WITH_JPEG"] = self.options.get_safe("with_jpeg", False) + tc.variables["OSG_WITH_PNG"] = self.options.get_safe("with_png", False) + tc.variables["OSG_WITH_TIFF"] = self.options.with_tiff + + if (self.options.get_safe("with_avfoundation")): + tc.variables["OSG_WITH_AV_FOUNDATION"] = True if self.settings.os == "Windows": # osg has optional quicktime support on Windows - cmake.definitions["CMAKE_DISABLE_FIND_PACKAGE_QuickTime"] = True + tc.variables["CMAKE_DISABLE_FIND_PACKAGE_QuickTime"] = True + + tc.variables["OSG_MSVC_VERSIONED_DLL"] = False - cmake.definitions["OSG_MSVC_VERSIONED_DLL"] = False + if is_apple_os(self): + tc.preprocessor_definitions["GL_SILENCE_DEPRECATION"] = "1" - cmake.configure() + tc.generate() - return cmake + deps = CMakeDeps(self) + deps.set_property("freetype", "cmake_module_file_name", "Freetype") + deps.set_property("giflib", "cmake_file_name", "GIFLIB") + deps.generate() + + def _patch_sources(self): + for package in ["Fontconfig", "Freetype", "GDAL", "GIFLIB", "GTA", "Jasper", "OpenEXR"]: + # Prefer conan's find package scripts over osg's + os.unlink(os.path.join(self.source_folder, "CMakeModules", f"Find{package}.cmake")) + plugins_root = Path(self.source_path.joinpath("src", "osgPlugins")) + for path in plugins_root.rglob("CMakeLists.txt"): + if path.parent == plugins_root: + # Don't replace in the root dir + continue + content = path.read_text() + # Correct usage of *_LIBRARY variables to *_LIBRARIES + content = content.replace("_LIBRARY", "_LIBRARIES") + # Allow explicit control of plugins via OSG_WITH_* variables + # e.g. replace IF(FFMPEG_FOUND) with IF(OSG_WITH_FFMPEG) + content = re.sub(r"\b([A-Z]+)_FOUND\b", r"OSG_WITH_\1", content) + path.write_text(content) + for path in self.source_path.joinpath(self.source_folder, "CMakeModules").rglob("*.cmake"): + content = path.read_text(encoding='utf-8', errors='ignore') + lib_match = re.search(r'FIND_LIBRARY\(([^ ]+)_LIBRARY', content) + if lib_match: + library_name = lib_match.group(1) + new_content = re.sub(rf'\b{library_name}_LIBRARY\b', rf'{library_name}_LIBRARIES', content) + path.write_text(new_content) + + apply_conandata_patches(self) + + # Not sure why, but CMake fails to find the EXPAT::EXPAT target created by Conan when Fontconfig is found as a module. + replace_in_file(self, os.path.join(self.source_folder, "src", "osgText", "CMakeLists.txt"), + "find_package(Fontconfig MODULE)", "find_package(Fontconfig CONFIG REQUIRED)") + replace_in_file(self, os.path.join(self.source_folder, "src", "osgPlugins", "freetype", "CMakeLists.txt"), + "SET(TARGET_EXTERNAL_LIBRARIES ${FREETYPE_LIBRARIES} )", "SET(TARGET_EXTERNAL_LIBRARIES Freetype::Freetype)") + + # osg uses imageio on Apple platforms. PNG_FOUND will be set by `FIND_PACKAGE(Freetype)` + # in the OSG cmake code and without this patch the png plugin will be included even though it shouldn't. + replace_in_file(self, os.path.join(self.source_folder, "src", "osgPlugins", "CMakeLists.txt"), + "PNG_FOUND", "PNG_FOUND AND OSG_WITH_PNG") + + # Only add curl plugin if actually requested. + replace_in_file(self, os.path.join(self.source_folder, "src", "osgPlugins", "CMakeLists.txt"), + "CURL_FOUND", "CURL_FOUND AND OSG_WITH_CURL") def build(self): self._patch_sources() - - self._configured_cmake().build() + cmake = CMake(self) + cmake.configure(build_script_folder=self.source_path.parent) + cmake.build() def package(self): - self._configured_cmake().install() + cmake = CMake(self) + cmake.install() - self.copy(pattern="LICENSE.txt", dst="licenses", src=self._source_subfolder) + copy(self, "LICENSE.txt", dst=os.path.join(self.package_folder, "licenses"), src=self.source_folder) + copy(self, "conan-official-osg-variables.cmake", + dst=os.path.join(self.package_folder, "lib", "cmake"), + src=os.path.join(self.source_folder, os.pardir)) rmdir(self, os.path.join(self.package_folder, "lib", "pkgconfig")) rm(self, "*.pdb", self.package_folder, True) def package_info(self): - # FindOpenSceneGraph.cmake is shipped with cmake and is a traditional cmake script - # It doesn't setup targets and only provides a few variables: - # - OPENSCENEGRAPH_FOUND - # - OPENSCENEGRAPH_VERSION - # - OPENSCENEGRAPH_INCLUDE_DIRS - # - OPENSCENEGRAPH_LIBRARIES - # Unfortunately, the cmake_find_package generators don't currently allow directly setting variables, - # but it will set the last three of these if the name of the package is OPENSCENEGRAPH (it uses - # the filename for the first, so OpenSceneGraph_FOUND gets set, not OPENSCENEGRAPH_FOUND) - # TODO: set OPENSCENEGRAPH_FOUND in cmake_find_package and cmake_find_package_multi - self.cpp_info.filenames["cmake_find_package"] = "OpenSceneGraph" - self.cpp_info.filenames["cmake_find_package_multi"] = "OpenSceneGraph" - self.cpp_info.names["cmake_find_package"] = "OPENSCENEGRAPH" - self.cpp_info.names["cmake_find_package_multi"] = "OPENSCENEGRAPH" + # https://github.com/openscenegraph/OpenSceneGraph/blob/master/packaging/cmake/OpenSceneGraphConfig.cmake.in + self.cpp_info.set_property("cmake_file_name", "OpenSceneGraph") + # https://github.com/openscenegraph/OpenSceneGraph/blob/master/CMakeModules/FindOSG.cmake + self.cpp_info.set_property("cmake_module_file_name", "OSG") + # Disable the automatically created targets, use the "openscenegraph" component instead + self.cpp_info.set_property("pkg_config_name", None) + self.cpp_info.set_property("cmake_target_name", None) + + # Export CMake variables set by the project + self.cpp_info.builddirs.append(os.path.join("lib", "cmake")) + cmake_vars_module = os.path.join("lib", "cmake", "conan-official-osg-variables.cmake") + self.cpp_info.set_property("cmake_build_modules", [cmake_vars_module]) + + # The main component that depends on all non-plugin components + # https://github.com/openscenegraph/OpenSceneGraph/blob/master/packaging/pkgconfig/openscenegraph.pc.in + openscenegraph = self.cpp_info.components["openscenegraph"] + openscenegraph.set_property("pkg_config_name", "openscenegraph") + # Unofficial CMake target + openscenegraph.set_property("cmake_target_name", "OpenSceneGraph::OpenSceneGraph") + openscenegraph.requires = [ + "osg", + "osgDB", + "osgFX", + "osgGA", + "osgParticle", + "osgSim", + "osgText", + "osgUtil", + "osgTerrain", + "osgManipulator", + "osgViewer", + "osgWidget", + "osgShadow", + "osgAnimation", + "osgVolume", + ] + + # TODO: to remove in conan v2 once cmake_find_package_* generators removed + self.cpp_info.names["cmake_find_package"] = "OpenSceneGraph" + self.cpp_info.names["cmake_find_package_multi"] = "OpenSceneGraph" + openscenegraph.names["cmake_find_package"] = "OpenSceneGraph" + openscenegraph.names["cmake_find_package_multi"] = "OpenSceneGraph" + self.cpp_info.build_modules["cmake_find_package"].append(cmake_vars_module) + self.cpp_info.build_modules["cmake_find_package_multi"].append(cmake_vars_module) if self.settings.build_type == "Debug": postfix = "d" @@ -275,49 +368,52 @@ def setup_plugin(plugin): plugin_library.libs = [] if self.options.shared else [lib + postfix] plugin_library.requires = ["OpenThreads", "osg", "osgDB", "osgUtil"] if not self.options.shared: - plugin_library.libdirs = [os.path.join("lib", "osgPlugins-{}".format(self.version))] + plugin_library.libdirs = [os.path.join("lib", f"osgPlugins-{self.version}")] return plugin_library def setup_serializers(lib): plugins = [] if lib not in ("osgDB", "osgWidget", "osgPresentation"): - plugins.append("serializers_{}".format(lib.lower())) + plugins.append(f"serializers_{lib.lower()}") if self.options.enable_deprecated_serializers: if lib not in ("osgUtil", "osgDB", "osgGA", "osgManipulator", "osgUI", "osgPresentation"): - plugins.append("deprecated_{}".format(lib.lower())) + plugins.append(f"deprecated_{lib.lower()}") for plugin in plugins: setup_plugin(plugin).requires.append(lib) def setup_library(lib): library = self.cpp_info.components[lib] library.libs = [lib + postfix] - library.names["pkg_config"] = "openscenegraph-{}".format(lib) + library.set_property("pkg_config_name", f"openscenegraph-{lib}") setup_serializers(lib) return library # Core libraries # requires obtained from osg's source code - # TODO: FindOpenThreads.cmake is shipped with CMake, so we should generate separate - # files for it with cmake_find_package and cmake_find_package_multi + # The project installs FindOpenThreads.cmake as a separate module. + # Conan cannot recreate that, but let's export it as a component instead. + # https://github.com/openscenegraph/OpenSceneGraph/blob/master/CMakeModules/FindOpenThreads.cmake + # https://github.com/openscenegraph/OpenSceneGraph/blob/master/packaging/pkgconfig/openthreads.pc.in library = self.cpp_info.components["OpenThreads"] library.libs = ["OpenThreads" + postfix] - library.names["pkg_config"] = "openthreads" - if self.settings.os == "Linux": + library.set_property("pkg_config_name", "openthreads") + library.set_property("cmake_target_name", "OpenThreads::OpenThreads") + if self.settings.os in ["Linux", "FreeBSD"]: library.system_libs = ["pthread"] library = setup_library("osg") library.requires = ["OpenThreads", "opengl::opengl"] - if self.settings.os == "Linux": + if self.settings.os in ["Linux", "FreeBSD"]: library.system_libs = ["m", "rt", "dl"] if not self.options.shared: library.defines.append("OSG_LIBRARY_STATIC") library = setup_library("osgDB") library.requires = ["osg", "osgUtil", "OpenThreads"] - if self.settings.os == "Linux": + if self.settings.os in ["Linux", "FreeBSD"]: library.system_libs = ["dl"] - elif self.settings.os == "Macos": + elif is_apple_os(self): library.frameworks = ["Carbon", "Cocoa"] if self.options.with_zlib: library.requires.append("zlib::zlib") @@ -333,7 +429,7 @@ def setup_library(lib): library = setup_library("osgViewer") library.requires = ["osgGA", "osgText", "osgDB", "osgUtil", "osg"] if self.options.enable_windowing_system: - if self.settings.os == "Linux": + if self.settings.os in ["Linux", "FreeBSD"]: library.requires.append("xorg::xorg") elif is_apple_os(self): library.frameworks = ["Cocoa"] @@ -350,7 +446,8 @@ def setup_library(lib): setup_library("osgSim").requires = ["osgText", "osgUtil", "osgDB", "osg", "OpenThreads"] setup_library("osgTerrain").requires = ["osgUtil", "osgDB", "osg", "OpenThreads"] setup_library("osgWidget").requires = ["osgText", "osgViewer", "osgDB", "osg", "OpenThreads"] - setup_library("osgPresentation").requires = ["osgViewer", "osgUI", "osgWidget", "osgManipulator", "osgVolume", "osgFX", "osgText", "osgGA", "osgUtil", "osgDB", "osg", "OpenThreads"] + setup_library("osgPresentation").requires = ["osgViewer", "osgUI", "osgWidget", "osgManipulator", "osgVolume", + "osgFX", "osgText", "osgGA", "osgUtil", "osgDB", "osg", "OpenThreads"] # Start of plugins @@ -369,7 +466,7 @@ def setup_library(lib): setup_plugin("osg") plugin = setup_plugin("ive") - plugin.requires.extend(("osgSim", "osgFX", "osgText", "osgTerrain", "osgVolume")) + plugin.requires.extend(["osgSim", "osgFX", "osgText", "osgTerrain", "osgVolume"]) if self.options.with_zlib: plugin.requires.append("zlib::zlib") @@ -390,8 +487,12 @@ def setup_library(lib): setup_plugin("vtf") setup_plugin("ktx") - if self.options.get_safe("with_jpeg"): + if self.options.get_safe("with_jpeg") == "libjpeg": setup_plugin("jpeg").requires.append("libjpeg::libjpeg") + elif self.options.get_safe("with_jpeg") == "libjpeg-turbo": + setup_plugin("jpeg").requires.append("libjpeg-turbo::jpeg") + elif self.options.get_safe("with_jpeg") == "mozjpeg": + setup_plugin("jpeg").requires.append("mozjpeg::libjpeg") if self.options.with_jasper: setup_plugin("jp2").requires.append("jasper::jasper") @@ -403,13 +504,13 @@ def setup_library(lib): setup_plugin("gif").requires.append("giflib::giflib") if self.options.get_safe("with_png"): - setup_plugin("png").requires.extend(("libpng::libpng", "zlib::zlib")) + setup_plugin("png").requires.extend(["libpng::libpng", "zlib::zlib"]) if self.options.with_tiff: setup_plugin("tiff").requires.append("libtiff::libtiff") if self.options.with_gdal: - setup_plugin("gdal").requires.extend(("osgTerrain", "gdal::gdal")) + setup_plugin("gdal").requires.extend(["osgTerrain", "gdal::gdal"]) setup_plugin("ogr").requires.append("gdal::gdal") if self.options.with_gta: @@ -418,13 +519,13 @@ def setup_library(lib): # 3D Image plugins if self.options.get_safe("with_dcmtk"): plugin = setup_plugin("dicom") - plugin.requires.extend(("osgVolume", "dcmtk::dcmtk")) + plugin.requires.extend(["osgVolume", "dcmtk::dcmtk"]) if self.settings.os == "Windows": plugin.system_libs = ["wsock32", "ws2_32"] # 3rd party 3d plugins setup_plugin("3dc") - setup_plugin("p3d").requires.extend(("osgGA", "osgText", "osgVolume", "osgFX", "osgViewer", "osgPresentation")) + setup_plugin("p3d").requires.extend(["osgGA", "osgText", "osgVolume", "osgFX", "osgViewer", "osgPresentation"]) if self.options.with_curl: plugin = setup_plugin("curl") @@ -462,15 +563,15 @@ def setup_library(lib): setup_plugin("md2") setup_plugin("osgtgz") setup_plugin("tgz") - setup_plugin("shp").requires.extend(("osgSim", "osgTerrain")) + setup_plugin("shp").requires.extend(["osgSim", "osgTerrain"]) setup_plugin("txf").requires.append("osgText") setup_plugin("bsp") setup_plugin("mdl") - setup_plugin("gles").requires.extend(("osgUtil", "osgAnimation")) - setup_plugin("osgjs").requires.extend(("osgAnimation", "osgSim")) + setup_plugin("gles").requires.extend(["osgUtil", "osgAnimation"]) + setup_plugin("osgjs").requires.extend(["osgAnimation", "osgSim"]) setup_plugin("lwo").requires.append("osgFX") setup_plugin("ply") - setup_plugin("txp").requires.extend(("osgSim", "osgText")) + setup_plugin("txp").requires.extend(["osgSim", "osgText"]) # with_ffmpeg # setup_plugin("ffmpeg") @@ -484,16 +585,20 @@ def setup_library(lib): if is_apple_os(self): setup_plugin("imageio").frameworks = ["Accelerate"] - if ((self.settings.os == "Macos" and self.settings.os.version and Version(self.settings.os.version) >= "10.8") - or (self.settings.os == "iOS" and Version(self.settings.os.version) >= "6.0")): + if (self.options.get_safe("with_avfoundation")): plugin = setup_plugin("avfoundation") plugin.requires.append("osgViewer") plugin.frameworks = ["AVFoundation", "Cocoa", "CoreVideo", "CoreMedia", "QuartzCore"] - if self.settings.os == "Macos" and self.settings.os.version and Version(self.settings.os.version) <= "10.6" and self.settings.arch == "x86": + if ( + is_apple_os(self) + and self.settings.os.version + and Version(self.settings.os.version) <= "10.6" + and self.settings.arch == "x86" + ): setup_plugin("qt").frameworks = ["QuickTime"] - if self.settings.os == "Macos" and self.settings.arch == "x86": + if is_apple_os(self) and self.settings.arch == "x86": plugin = setup_plugin("QTKit") plugin.requires.append("osgViewer") plugin.frameworks = ["QTKit", "Cocoa", "QuickTime", "CoreVideo"] @@ -502,7 +607,7 @@ def setup_library(lib): # setup_plugin("nvtt") if self.options.with_freetype: - setup_plugin("freetype").requires.extend(("osgText", "freetype::freetype")) + setup_plugin("freetype").requires.extend(["osgText", "freetype::freetype"]) if self.options.with_zlib: setup_plugin("zip") @@ -535,7 +640,7 @@ def setup_library(lib): # setup_plugin("sdl") if self.options.get_safe("with_asio", False): - setup_plugin("resthttp").requires.extend(("osgPresentation", "asio::asio", "boost::boost")) + setup_plugin("resthttp").requires.extend(["osgPresentation", "asio::asio", "boost::boost"]) # with_zeroconf # setup_plugin("zeroconf") diff --git a/recipes/openscenegraph/all/patches/0002-Use-standard-CMake-name-for-gif.patch b/recipes/openscenegraph/all/patches/0002-Use-standard-CMake-name-for-gif.patch deleted file mode 100644 index 7a75a5c3262282..00000000000000 --- a/recipes/openscenegraph/all/patches/0002-Use-standard-CMake-name-for-gif.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 17ad9caac56282e89d0e6a62c9564b99e2736225 Mon Sep 17 00:00:00 2001 -From: "R. Andrew Ohana" -Date: Thu, 17 Sep 2020 16:51:45 -0700 -Subject: [PATCH 2/5] Use standard CMake name for gif - ---- - CMakeLists.txt | 2 +- - src/osgPlugins/CMakeLists.txt | 2 +- - src/osgPlugins/gif/CMakeLists.txt | 4 ++-- - 3 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0ef2edd33..5e0c8f349 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -813,7 +813,7 @@ ENDIF(BUILD_OSG_EXAMPLES AND NOT ANDROID) - # can use Quicktime. - IF(NOT ANDROID) - IF(NOT APPLE) -- FIND_PACKAGE(GIFLIB) -+ FIND_PACKAGE(GIF) - FIND_PACKAGE(JPEG) - FIND_PACKAGE(PNG) - FIND_PACKAGE(TIFF) -diff --git a/src/osgPlugins/CMakeLists.txt b/src/osgPlugins/CMakeLists.txt -index 812550412..2a88684b5 100644 ---- a/src/osgPlugins/CMakeLists.txt -+++ b/src/osgPlugins/CMakeLists.txt -@@ -108,7 +108,7 @@ ENDIF() - IF(OPENEXR_FOUND AND ZLIB_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) - ADD_PLUGIN_DIRECTORY(exr) - ENDIF() --IF(GIFLIB_FOUND) -+IF(GIF_FOUND) - ADD_PLUGIN_DIRECTORY(gif) - ENDIF() - IF(PNG_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -diff --git a/src/osgPlugins/gif/CMakeLists.txt b/src/osgPlugins/gif/CMakeLists.txt -index 642339af1..0db0296cc 100644 ---- a/src/osgPlugins/gif/CMakeLists.txt -+++ b/src/osgPlugins/gif/CMakeLists.txt -@@ -1,7 +1,7 @@ --INCLUDE_DIRECTORIES( ${GIFLIB_INCLUDE_DIR} ) -+INCLUDE_DIRECTORIES( ${GIF_INCLUDE_DIR} ) - - SET(TARGET_SRC ReaderWriterGIF.cpp ) --SET(TARGET_LIBRARIES_VARS GIFLIB_LIBRARY ) -+SET(TARGET_LIBRARIES_VARS GIF_LIBRARY ) - #### end var setup ### - SETUP_PLUGIN(gif) - --- -2.21.0.windows.1 - diff --git a/recipes/openscenegraph/all/patches/0003-Correct-usage-of-_LIBRARY-to-_LIBRARIES.patch b/recipes/openscenegraph/all/patches/0003-Correct-usage-of-_LIBRARY-to-_LIBRARIES.patch deleted file mode 100644 index b3965bd4897ebf..00000000000000 --- a/recipes/openscenegraph/all/patches/0003-Correct-usage-of-_LIBRARY-to-_LIBRARIES.patch +++ /dev/null @@ -1,155 +0,0 @@ -From 4925ff028681f79b8c0cb1d8e0772ca026c6e63e Mon Sep 17 00:00:00 2001 -From: "R. Andrew Ohana" -Date: Thu, 17 Sep 2020 17:06:49 -0700 -Subject: [PATCH 3/5] Correct usage of *_LIBRARY to *_LIBRARIES - ---- - src/osgPlugins/curl/CMakeLists.txt | 4 ++-- - src/osgPlugins/gdal/CMakeLists.txt | 2 +- - src/osgPlugins/gif/CMakeLists.txt | 2 +- - src/osgPlugins/gta/CMakeLists.txt | 2 +- - src/osgPlugins/jp2/CMakeLists.txt | 2 +- - src/osgPlugins/jpeg/CMakeLists.txt | 2 +- - src/osgPlugins/ogr/CMakeLists.txt | 2 +- - src/osgPlugins/png/CMakeLists.txt | 2 +- - src/osgPlugins/tiff/CMakeLists.txt | 2 +- - src/osgPlugins/vnc/CMakeLists.txt | 2 +- - 10 files changed, 11 insertions(+), 11 deletions(-) - -diff --git a/src/osgPlugins/curl/CMakeLists.txt b/src/osgPlugins/curl/CMakeLists.txt -index 667631f07..4afb738c7 100644 ---- a/src/osgPlugins/curl/CMakeLists.txt -+++ b/src/osgPlugins/curl/CMakeLists.txt -@@ -23,11 +23,11 @@ SET(TARGET_H - - IF(ZLIB_FOUND) - SET(TARGET_LIBRARIES_VARS -- CURL_LIBRARY -+ CURL_LIBRARIES - ZLIB_LIBRARIES) - ELSE() - SET(TARGET_LIBRARIES_VARS -- CURL_LIBRARY) -+ CURL_LIBRARIES) - ENDIF() - - IF(WIN32 OR MINGW) -diff --git a/src/osgPlugins/gdal/CMakeLists.txt b/src/osgPlugins/gdal/CMakeLists.txt -index f1b670701..353bc9fc6 100644 ---- a/src/osgPlugins/gdal/CMakeLists.txt -+++ b/src/osgPlugins/gdal/CMakeLists.txt -@@ -9,7 +9,7 @@ SET(TARGET_H - DataSetLayer.h - ) - --SET(TARGET_LIBRARIES_VARS GDAL_LIBRARY ) -+SET(TARGET_LIBRARIES_VARS GDAL_LIBRARIES ) - SET(TARGET_ADDED_LIBRARIES osgTerrain ) - - IF(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang") -diff --git a/src/osgPlugins/gif/CMakeLists.txt b/src/osgPlugins/gif/CMakeLists.txt -index 0db0296cc..99d1e26dc 100644 ---- a/src/osgPlugins/gif/CMakeLists.txt -+++ b/src/osgPlugins/gif/CMakeLists.txt -@@ -1,7 +1,7 @@ - INCLUDE_DIRECTORIES( ${GIF_INCLUDE_DIR} ) - - SET(TARGET_SRC ReaderWriterGIF.cpp ) --SET(TARGET_LIBRARIES_VARS GIF_LIBRARY ) -+SET(TARGET_LIBRARIES_VARS GIF_LIBRARIES ) - #### end var setup ### - SETUP_PLUGIN(gif) - -diff --git a/src/osgPlugins/gta/CMakeLists.txt b/src/osgPlugins/gta/CMakeLists.txt -index 2b910a628..16466fefc 100644 ---- a/src/osgPlugins/gta/CMakeLists.txt -+++ b/src/osgPlugins/gta/CMakeLists.txt -@@ -2,7 +2,7 @@ INCLUDE_DIRECTORIES( ${GTA_INCLUDE_DIRS} ) - - SET(TARGET_SRC ReaderWriterGTA.cpp ) - --SET(TARGET_LIBRARIES_VARS GTA_LIBRARY) -+SET(TARGET_LIBRARIES_VARS GTA_LIBRARIES) - - #### end var setup ### - SETUP_PLUGIN(gta) -diff --git a/src/osgPlugins/jp2/CMakeLists.txt b/src/osgPlugins/jp2/CMakeLists.txt -index b95537680..adcd84f64 100644 ---- a/src/osgPlugins/jp2/CMakeLists.txt -+++ b/src/osgPlugins/jp2/CMakeLists.txt -@@ -2,7 +2,7 @@ INCLUDE_DIRECTORIES( ${JASPER_INCLUDE_DIR} ) - - SET(TARGET_SRC ReaderWriterJP2.cpp ) - --SET(TARGET_LIBRARIES_VARS JASPER_LIBRARY ) -+SET(TARGET_LIBRARIES_VARS JASPER_LIBRARIES ) - - IF(WIN32) - ADD_DEFINITIONS(-DJAS_WIN_MSVC_BUILD) -diff --git a/src/osgPlugins/jpeg/CMakeLists.txt b/src/osgPlugins/jpeg/CMakeLists.txt -index 7117713a0..2d290a29d 100644 ---- a/src/osgPlugins/jpeg/CMakeLists.txt -+++ b/src/osgPlugins/jpeg/CMakeLists.txt -@@ -5,6 +5,6 @@ SET(TARGET_SRC - ReaderWriterJPEG.cpp - ) - --SET(TARGET_LIBRARIES_VARS JPEG_LIBRARY ) -+SET(TARGET_LIBRARIES_VARS JPEG_LIBRARIES ) - #### end var setup ### - SETUP_PLUGIN(jpeg) -diff --git a/src/osgPlugins/ogr/CMakeLists.txt b/src/osgPlugins/ogr/CMakeLists.txt -index 01b71e360..ea8b9706a 100644 ---- a/src/osgPlugins/ogr/CMakeLists.txt -+++ b/src/osgPlugins/ogr/CMakeLists.txt -@@ -2,7 +2,7 @@ INCLUDE_DIRECTORIES( ${GDAL_INCLUDE_DIR} ) - - SET(TARGET_SRC ReaderWriterOGR.cpp) - --SET(TARGET_LIBRARIES_VARS GDAL_LIBRARY ) -+SET(TARGET_LIBRARIES_VARS GDAL_LIBRARIES ) - - IF(CMAKE_COMPILER_IS_GNUCXX) - # Remove -Wshadow flag as it barfs on ffmoeg headers -diff --git a/src/osgPlugins/png/CMakeLists.txt b/src/osgPlugins/png/CMakeLists.txt -index 33df903d2..c4a6a2acc 100644 ---- a/src/osgPlugins/png/CMakeLists.txt -+++ b/src/osgPlugins/png/CMakeLists.txt -@@ -5,7 +5,7 @@ IF(OSG_CPP_EXCEPTIONS_AVAILABLE) - ENDIF() - - SET(TARGET_SRC ReaderWriterPNG.cpp ) --SET(TARGET_LIBRARIES_VARS PNG_LIBRARY ZLIB_LIBRARIES ) -+SET(TARGET_LIBRARIES_VARS PNG_LIBRARIES ZLIB_LIBRARIES ) - - - #### end var setup ### -diff --git a/src/osgPlugins/tiff/CMakeLists.txt b/src/osgPlugins/tiff/CMakeLists.txt -index fc945d68e..6b856eab2 100644 ---- a/src/osgPlugins/tiff/CMakeLists.txt -+++ b/src/osgPlugins/tiff/CMakeLists.txt -@@ -2,7 +2,7 @@ INCLUDE_DIRECTORIES( ${TIFF_INCLUDE_DIR} ) - - SET(TARGET_SRC ReaderWriterTIFF.cpp ) - --SET(TARGET_LIBRARIES_VARS TIFF_LIBRARY) -+SET(TARGET_LIBRARIES_VARS TIFF_LIBRARIES) - - #### end var setup ### - SETUP_PLUGIN(tiff) -diff --git a/src/osgPlugins/vnc/CMakeLists.txt b/src/osgPlugins/vnc/CMakeLists.txt -index 9a54b2bf2..49bb2dce4 100644 ---- a/src/osgPlugins/vnc/CMakeLists.txt -+++ b/src/osgPlugins/vnc/CMakeLists.txt -@@ -5,7 +5,7 @@ INCLUDE_DIRECTORIES(${LIBVNCSERVER_INCLUDE_DIR}) - SET(TARGET_EXTERNAL_LIBRARIES - ${LIBVNCCLIENT_LIBRARY} - ${ZLIB_LIBRARIES} -- ${JPEG_LIBRARY} ) -+ ${JPEG_LIBRARIES} ) - - SET(TARGET_ADDED_LIBRARIES osgWidget ) - --- -2.21.0.windows.1 - diff --git a/recipes/openscenegraph/all/patches/0004-Allow-explicit-control-of-plugins.patch b/recipes/openscenegraph/all/patches/0004-Allow-explicit-control-of-plugins.patch deleted file mode 100644 index 19caf4dfed5372..00000000000000 --- a/recipes/openscenegraph/all/patches/0004-Allow-explicit-control-of-plugins.patch +++ /dev/null @@ -1,259 +0,0 @@ -From 04859156034c6762338411d5f2c07d02d0a7b814 Mon Sep 17 00:00:00 2001 -From: "R. Andrew Ohana" -Date: Thu, 17 Sep 2020 17:25:12 -0700 -Subject: [PATCH 4/5] Allow explicit control of plugins - ---- - src/osgDB/CMakeLists.txt | 8 ++-- - src/osgPlugins/CMakeLists.txt | 58 ++++++++++++++--------------- - src/osgPlugins/curl/CMakeLists.txt | 4 +- - src/osgPlugins/dicom/CMakeLists.txt | 2 +- - src/osgPlugins/ive/CMakeLists.txt | 2 +- - 5 files changed, 37 insertions(+), 37 deletions(-) - -diff --git a/src/osgDB/CMakeLists.txt b/src/osgDB/CMakeLists.txt -index 340aae095..59b8b3a0d 100644 ---- a/src/osgDB/CMakeLists.txt -+++ b/src/osgDB/CMakeLists.txt -@@ -147,19 +147,19 @@ IF(AV_FOUNDATION_FOUND) - ADD_DEFINITIONS(-DUSE_AV_FOUNDATION) - ENDIF() - --IF(FFMPEG_FOUND) -+IF(OSG_WITH_FFMPEG) - ADD_DEFINITIONS(-DUSE_FFMPEG) - ENDIF() - --IF(INVENTOR_FOUND) -+IF(OSG_WITH_INVENTOR) - ADD_DEFINITIONS(-DUSE_INVENTOR) - ENDIF() - --IF(OPENVRML_FOUND) -+IF(OSG_WITH_OPENVRML) - ADD_DEFINITIONS(-DUSE_VRML) - ENDIF() - --IF( ZLIB_FOUND ) -+IF(OSG_WITH_ZLIB) - ADD_DEFINITIONS( -DUSE_ZLIB ) - INCLUDE_DIRECTORIES( ${ZLIB_INCLUDE_DIR} ) - SET(COMPRESSION_LIBRARIES ZLIB_LIBRARIES) -diff --git a/src/osgPlugins/CMakeLists.txt b/src/osgPlugins/CMakeLists.txt -index 2a88684b5..24dc68667 100644 ---- a/src/osgPlugins/CMakeLists.txt -+++ b/src/osgPlugins/CMakeLists.txt -@@ -99,29 +99,29 @@ ADD_PLUGIN_DIRECTORY(dot) - ADD_PLUGIN_DIRECTORY(vtf) - ADD_PLUGIN_DIRECTORY(ktx) - --IF(JPEG_FOUND) -+IF(OSG_WITH_JPEG) - ADD_PLUGIN_DIRECTORY(jpeg) - ENDIF() --IF(JASPER_FOUND) -+IF(OSG_WITH_JASPER) - ADD_PLUGIN_DIRECTORY(jp2) - ENDIF() --IF(OPENEXR_FOUND AND ZLIB_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_OPENEXR) - ADD_PLUGIN_DIRECTORY(exr) - ENDIF() --IF(GIF_FOUND) -+IF(OSG_WITH_GIF) - ADD_PLUGIN_DIRECTORY(gif) - ENDIF() --IF(PNG_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_PNG) - ADD_PLUGIN_DIRECTORY(png) - ENDIF() --IF(TIFF_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_TIFF) - ADD_PLUGIN_DIRECTORY(tiff) - ENDIF() --IF(GDAL_FOUND) -+IF(OSG_WITH_GDAL) - ADD_PLUGIN_DIRECTORY(gdal) - ADD_PLUGIN_DIRECTORY(ogr) - ENDIF() --IF(GTA_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_GTA) - ADD_PLUGIN_DIRECTORY(gta) - ENDIF() - -@@ -130,9 +130,9 @@ ENDIF() - # - # 3D Image plugins - # --IF(DCMTK_FOUND AND ZLIB_FOUND) -+IF(OSG_WITH_DCMTK) - ADD_PLUGIN_DIRECTORY(dicom) --ELSE() -+ELSEIF(FALSE) - IF(ITK_FOUND) - ADD_PLUGIN_DIRECTORY(dicom) - ENDIF() -@@ -147,29 +147,29 @@ ADD_PLUGIN_DIRECTORY(3dc) - - ADD_PLUGIN_DIRECTORY(p3d) - --IF(CURL_FOUND) -+IF(OSG_WITH_CURL) - ADD_PLUGIN_DIRECTORY(curl) - ENDIF() - --IF(ZLIB_FOUND) -+IF(OSG_WITH_ZLIB) - ADD_PLUGIN_DIRECTORY(gz) - ENDIF() - - IF(NOT OSG_GLES1_AVAILABLE AND NOT OSG_GLES2_AVAILABLE) -- IF(INVENTOR_FOUND) -+ IF(OSG_WITH_INVENTOR) - ADD_PLUGIN_DIRECTORY(Inventor) - ENDIF() - ENDIF() - --IF(COLLADA_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_COLLADA) - ADD_PLUGIN_DIRECTORY(dae) - ENDIF() - --IF(FBX_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_FBX) - ADD_PLUGIN_DIRECTORY(fbx) - ENDIF() - --IF(OPENCASCADE_FOUND) -+IF(OSG_WITH_OPENCASCADE) - ADD_PLUGIN_DIRECTORY(OpenCASCADE) - ENDIF() - -@@ -209,15 +209,15 @@ IF(OSG_CPP_EXCEPTIONS_AVAILABLE) - ADD_PLUGIN_DIRECTORY(txp) - ENDIF() - --IF(FFMPEG_FOUND AND OSG_CPP_EXCEPTIONS_AVAILABLE) -+IF(OSG_WITH_FFMPEG) - ADD_PLUGIN_DIRECTORY(ffmpeg) - ENDIF() - --IF(GSTREAMER_FOUND AND GLIB_FOUND) -+IF(OSG_WITH_GSTREAMER) - ADD_PLUGIN_DIRECTORY(gstreamer) - ENDIF() - --IF(DIRECTSHOW_FOUND) -+IF(OSG_WITH_DIRECTSHOW) - ADD_PLUGIN_DIRECTORY(directshow) - ENDIF() - -@@ -241,28 +241,28 @@ IF(QTKIT_FOUND) - ADD_PLUGIN_DIRECTORY(QTKit) - ENDIF() - --IF(NVTT_FOUND) -+IF(OSG_WITH_NVTT) - ADD_PLUGIN_DIRECTORY(nvtt) - ENDIF() - - --IF(FREETYPE_FOUND) -+IF(OSG_WITH_FREETYPE) - ADD_PLUGIN_DIRECTORY(freetype) - ENDIF() - --IF(ZLIB_FOUND) -+IF(OSG_WITH_ZLIB) - ADD_PLUGIN_DIRECTORY(zip) - ENDIF() - --IF(RSVG_FOUND) -+IF(OSG_WITH_RSVG) - ADD_PLUGIN_DIRECTORY(svg) - ENDIF() - --IF(POPPLER_FOUND) -+IF(OSG_WITH_POPPLER) - ADD_PLUGIN_DIRECTORY(pdf) - ENDIF() - --IF(LIBVNCSERVER_FOUND) -+IF(OSG_WITH_LIBVNCSERVER) - ADD_PLUGIN_DIRECTORY(vnc) - ENDIF() - -@@ -272,7 +272,7 @@ ADD_PLUGIN_DIRECTORY(osc) - ADD_PLUGIN_DIRECTORY(trk) - ADD_PLUGIN_DIRECTORY(tf) - --IF(LIBLAS_FOUND) -+IF(OSG_WITH_LIBLAS) - ADD_PLUGIN_DIRECTORY(las) - ENDIF() - -@@ -299,16 +299,16 @@ ENDIF() - # - # Device integration plugins - # --IF (SDL_FOUND) -+IF(OSG_WITH_SDL) - ADD_PLUGIN_DIRECTORY(sdl) - ENDIF(SDL_FOUND) - --IF(ASIO_FOUND) -+IF(OSG_WITH_ASIO) - ADD_PLUGIN_DIRECTORY(RestHttpDevice) - ENDIF(ASIO_FOUND) - - --IF(ZEROCONF_FOUND) -+IF(OSG_WITH_ZEROCONF) - ADD_PLUGIN_DIRECTORY(ZeroConfDevice) - ENDIF() - -diff --git a/src/osgPlugins/curl/CMakeLists.txt b/src/osgPlugins/curl/CMakeLists.txt -index 4afb738c7..fb5b98498 100644 ---- a/src/osgPlugins/curl/CMakeLists.txt -+++ b/src/osgPlugins/curl/CMakeLists.txt -@@ -5,7 +5,7 @@ IF(WIN32) - SET(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:MSVCRT") - ENDIF() - --IF(ZLIB_FOUND) -+IF(OSG_WITH_ZLIB) - ADD_DEFINITIONS(-DUSE_ZLIB) - INCLUDE_DIRECTORIES( ${CURL_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIR}) - ELSE() -@@ -21,7 +21,7 @@ SET(TARGET_H - ReaderWriterCURL.h - ) - --IF(ZLIB_FOUND) -+IF(OSG_WITH_ZLIB) - SET(TARGET_LIBRARIES_VARS - CURL_LIBRARIES - ZLIB_LIBRARIES) -diff --git a/src/osgPlugins/dicom/CMakeLists.txt b/src/osgPlugins/dicom/CMakeLists.txt -index 3f159a9c5..06ccd17ed 100644 ---- a/src/osgPlugins/dicom/CMakeLists.txt -+++ b/src/osgPlugins/dicom/CMakeLists.txt -@@ -1,4 +1,4 @@ --IF (DCMTK_FOUND) -+IF (TRUE) - - # note, we have to include a '/' in front of the directory string to prevent a CMake bug from ignoring the directory - INCLUDE_DIRECTORIES(${DCMTK_INCLUDE_DIRS}) -diff --git a/src/osgPlugins/ive/CMakeLists.txt b/src/osgPlugins/ive/CMakeLists.txt -index 784a79c7e..40030b27d 100644 ---- a/src/osgPlugins/ive/CMakeLists.txt -+++ b/src/osgPlugins/ive/CMakeLists.txt -@@ -1,4 +1,4 @@ --IF(ZLIB_FOUND) -+IF(OSG_WITH_ZLIB) - ADD_DEFINITIONS(-DUSE_ZLIB) - INCLUDE_DIRECTORIES( ${ZLIB_INCLUDE_DIR}) - ENDIF() --- -2.21.0.windows.1 - diff --git a/recipes/openscenegraph/all/patches/0007-fix-msvc-with-std-c++17.patch b/recipes/openscenegraph/all/patches/0007-fix-msvc-with-std-c++17.patch new file mode 100644 index 00000000000000..39046ed3994aa6 --- /dev/null +++ b/recipes/openscenegraph/all/patches/0007-fix-msvc-with-std-c++17.patch @@ -0,0 +1,50 @@ +diff --git a/src/osg/DisplaySettings.cpp b/src/osg/DisplaySettings.cpp +index 5c699c8b0..5c097cf66 100644 +--- a/src/osg/DisplaySettings.cpp ++++ b/src/osg/DisplaySettings.cpp +@@ -22,9 +22,6 @@ + #include + #include + +-using namespace osg; +-using namespace std; +- + #if defined(WIN32) && !defined(__CYGWIN__) + #include + extern "C" { OSG_EXPORT DWORD NvOptimusEnablement=0x00000001; } +@@ -32,6 +29,9 @@ extern "C" { OSG_EXPORT DWORD NvOptimusEnablement=0x00000001; } + extern "C" { int NvOptimusEnablement=0x00000001; } + #endif + ++using namespace osg; ++using namespace std; ++ + void DisplaySettings::setNvOptimusEnablement(int value) + { + NvOptimusEnablement = value; +diff --git a/src/osgPlugins/cfg/ConfigParser.cpp b/src/osgPlugins/cfg/ConfigParser.cpp +index 263c82896..4247cc2af 100644 +--- a/src/osgPlugins/cfg/ConfigParser.cpp ++++ b/src/osgPlugins/cfg/ConfigParser.cpp +@@ -235,7 +235,7 @@ + #include "CameraConfig.h" + + +-using namespace std; ++ + using namespace osgProducer; + + static void ConfigParser_error( const char * ); +diff --git a/src/osgPlugins/cfg/ConfigParser.y b/src/osgPlugins/cfg/ConfigParser.y +index cf9adf507..5221be184 100644 +--- a/src/osgPlugins/cfg/ConfigParser.y ++++ b/src/osgPlugins/cfg/ConfigParser.y +@@ -34,7 +34,7 @@ + #include + + +-using namespace std; ++ + using namespace Producer; + + static void ConfigParser_error( const char * ); diff --git a/recipes/openscenegraph/all/patches/0008-replace-mem-fun-ref.patch b/recipes/openscenegraph/all/patches/0008-replace-mem-fun-ref.patch new file mode 100644 index 00000000000000..5f86f332a80cf1 --- /dev/null +++ b/recipes/openscenegraph/all/patches/0008-replace-mem-fun-ref.patch @@ -0,0 +1,13 @@ +diff --git a/src/osgUtil/tristripper/include/detail/graph_array.h b/src/osgUtil/tristripper/include/detail/graph_array.h +index dc1f38027..ce7000cc8 100644 +--- a/src/osgUtil/tristripper/include/detail/graph_array.h ++++ b/src/osgUtil/tristripper/include/detail/graph_array.h +@@ -446,7 +446,7 @@ inline void graph_array::swap(graph_type & Right) + template + inline void unmark_nodes(graph_array & G) + { +- std::for_each(G.begin(), G.end(), std::mem_fun_ref(&graph_array::node::unmark)); ++ for(typename graph_array::node_iterator itr = G.begin(); itr != G.end(); ++itr) itr->unmark(); + } + + diff --git a/recipes/openscenegraph/all/patches/0009-replace-auto-ptr-in-plugins.patch b/recipes/openscenegraph/all/patches/0009-replace-auto-ptr-in-plugins.patch new file mode 100644 index 00000000000000..de0f3ee7139ef9 --- /dev/null +++ b/recipes/openscenegraph/all/patches/0009-replace-auto-ptr-in-plugins.patch @@ -0,0 +1,75 @@ +diff --git a/src/osgPlugins/dae/ReaderWriterDAE.cpp b/src/osgPlugins/dae/ReaderWriterDAE.cpp +index fc1a448d4..3b883f19a 100644 +--- a/src/osgPlugins/dae/ReaderWriterDAE.cpp ++++ b/src/osgPlugins/dae/ReaderWriterDAE.cpp +@@ -32,7 +32,7 @@ + + #define SERIALIZER() OpenThreads::ScopedLock lock(_serializerMutex) + +-#if __cplusplus > 199711L ++#if ((defined(_MSVC_LANG) && _MSVC_LANG > 199711L) || __cplusplus > 199711L) + #define smart_ptr std::unique_ptr + #else + #define smart_ptr std::auto_ptr +diff --git a/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp b/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp +index 69826c456..9bba5532a 100644 +--- a/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp ++++ b/src/osgPlugins/ffmpeg/FFmpegImageStream.cpp +@@ -10,6 +10,11 @@ + + #define STREAM_TIMEOUT_IN_SECONDS_TO_CONSIDER_IT_DEAD 10 + ++#if ((defined(_MSVC_LANG) && _MSVC_LANG > 199711L) || __cplusplus > 199711L) ++ template using smart_ptr = std::unique_ptr; ++#else ++ #define smart_ptr std::auto_ptr ++#endif + + namespace osgFFmpeg { + +@@ -23,8 +28,8 @@ FFmpegImageStream::FFmpegImageStream() : + { + setOrigin(osg::Image::TOP_LEFT); + +- std::auto_ptr decoder(new FFmpegDecoder); +- std::auto_ptr commands(new CommandQueue); ++ smart_ptr decoder(new FFmpegDecoder); ++ smart_ptr commands(new CommandQueue); + + m_decoder = decoder.release(); + m_commands = commands.release(); +diff --git a/src/osgPlugins/gdal/ReaderWriterGDAL.cpp b/src/osgPlugins/gdal/ReaderWriterGDAL.cpp +index 298e02fcc..113c9c45f 100644 +--- a/src/osgPlugins/gdal/ReaderWriterGDAL.cpp ++++ b/src/osgPlugins/gdal/ReaderWriterGDAL.cpp +@@ -34,6 +34,12 @@ + + #define SERIALIZER() OpenThreads::ScopedLock lock(_serializerMutex) + ++#if ((defined(_MSVC_LANG) && _MSVC_LANG > 199711L) || __cplusplus > 199711L) ++ #define smart_ptr std::unique_ptr ++#else ++ #define smart_ptr std::auto_ptr ++#endif ++ + // From easyrgb.com + float Hue_2_RGB( float v1, float v2, float vH ) + { +@@ -123,7 +129,7 @@ class ReaderWriterGDAL : public osgDB::ReaderWriter + + initGDAL(); + +- std::auto_ptr dataset((GDALDataset*)GDALOpen(fileName.c_str(),GA_ReadOnly)); ++ smart_ptr dataset((GDALDataset*)GDALOpen(fileName.c_str(),GA_ReadOnly)); + if (!dataset.get()) return ReadResult::FILE_NOT_HANDLED; + + int dataWidth = dataset->GetRasterXSize(); +@@ -577,7 +583,7 @@ class ReaderWriterGDAL : public osgDB::ReaderWriter + + initGDAL(); + +- std::auto_ptr dataset((GDALDataset*)GDALOpen(fileName.c_str(),GA_ReadOnly)); ++ smart_ptr dataset((GDALDataset*)GDALOpen(fileName.c_str(),GA_ReadOnly)); + if (!dataset.get()) return ReadResult::FILE_NOT_HANDLED; + + int dataWidth = dataset->GetRasterXSize(); diff --git a/recipes/openscenegraph/all/patches/0010-replace-ptr-fun-in-obj-plugin.patch b/recipes/openscenegraph/all/patches/0010-replace-ptr-fun-in-obj-plugin.patch new file mode 100644 index 00000000000000..139031361bc285 --- /dev/null +++ b/recipes/openscenegraph/all/patches/0010-replace-ptr-fun-in-obj-plugin.patch @@ -0,0 +1,24 @@ +diff --git a/src/osgPlugins/obj/obj.cpp b/src/osgPlugins/obj/obj.cpp +index 859add652..3580e5181 100644 +--- a/src/osgPlugins/obj/obj.cpp ++++ b/src/osgPlugins/obj/obj.cpp +@@ -37,10 +37,15 @@ using namespace obj; + + static std::string strip( const std::string& ss ) + { +- std::string result; +- result.assign( std::find_if( ss.begin(), ss.end(), std::not1( std::ptr_fun< int, int >( isspace ) ) ), +- std::find_if( ss.rbegin(), ss.rend(), std::not1( std::ptr_fun< int, int >( isspace ) ) ).base() ); +- return( result ); ++ std::string::const_iterator it = ss.begin(); ++ while (it != ss.end() && isspace(*it)) ++ it++; ++ ++ std::string::const_reverse_iterator rit = ss.rbegin(); ++ while (rit.base() != it && isspace(*rit)) ++ rit++; ++ ++ return std::string(it, rit.base()); + } + + /* diff --git a/recipes/openscenegraph/all/patches/0011-remove-deprecated-register.patch b/recipes/openscenegraph/all/patches/0011-remove-deprecated-register.patch new file mode 100644 index 00000000000000..9a1ea80d16a656 --- /dev/null +++ b/recipes/openscenegraph/all/patches/0011-remove-deprecated-register.patch @@ -0,0 +1,187 @@ +From b9f32bf6df5af101624bb065175097d8d96067c2 Mon Sep 17 00:00:00 2001 +From: czoido +Date: Thu, 25 Jan 2024 09:32:10 +0100 +Subject: [PATCH] remove deprecated register + +--- + src/osgPlugins/cfg/ConfigLexer.cpp | 40 ++++++++++++++--------------- + src/osgPlugins/cfg/ConfigParser.cpp | 16 ++++++------ + 2 files changed, 28 insertions(+), 28 deletions(-) + +diff --git a/src/osgPlugins/cfg/ConfigLexer.cpp b/src/osgPlugins/cfg/ConfigLexer.cpp +index 4e169efe4..cba6d6f9e 100644 +--- a/src/osgPlugins/cfg/ConfigLexer.cpp ++++ b/src/osgPlugins/cfg/ConfigLexer.cpp +@@ -832,9 +832,9 @@ YY_MALLOC_DECL + + YY_DECL + { +- register yy_state_type yy_current_state; +- register char *yy_cp, *yy_bp; +- register int yy_act; ++ yy_state_type yy_current_state; ++ char *yy_cp, *yy_bp; ++ int yy_act; + + #line 35 ".././ConfigLexer.l" + +@@ -881,7 +881,7 @@ YY_DECL + yy_match: + do + { +- register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; ++ YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; +@@ -1598,9 +1598,9 @@ void yyFlexLexer::LexerOutput( const char* buf, int size ) + + int yyFlexLexer::yy_get_next_buffer() + { +- register char *dest = yy_current_buffer->yy_ch_buf; +- register char *source = yytext_ptr; +- register int number_to_move, i; ++ char *dest = yy_current_buffer->yy_ch_buf; ++ char *source = yytext_ptr; ++ int number_to_move, i; + int ret_val; + + if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] ) +@@ -1730,14 +1730,14 @@ int yyFlexLexer::yy_get_next_buffer() + + yy_state_type yyFlexLexer::yy_get_previous_state() + { +- register yy_state_type yy_current_state; +- register char *yy_cp; ++ yy_state_type yy_current_state; ++ char *yy_cp; + + yy_current_state = yy_start; + + for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp ) + { +- register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); ++ YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; +@@ -1764,10 +1764,10 @@ yy_state_type yyFlexLexer::yy_get_previous_state() + + yy_state_type yyFlexLexer::yy_try_NUL_trans( yy_state_type yy_current_state ) + { +- register int yy_is_jam; +- register char *yy_cp = yy_c_buf_p; ++ int yy_is_jam; ++ char *yy_cp = yy_c_buf_p; + +- register YY_CHAR yy_c = 1; ++ YY_CHAR yy_c = 1; + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; +@@ -1786,9 +1786,9 @@ yy_state_type yyFlexLexer::yy_try_NUL_trans( yy_state_type yy_current_state ) + } + + +-void yyFlexLexer::yyunput( int c, register char* yy_bp ) ++void yyFlexLexer::yyunput( int c, char* yy_bp ) + { +- register char *yy_cp = yy_c_buf_p; ++ char *yy_cp = yy_c_buf_p; + + /* undo effects of setting up yytext */ + *yy_cp = yy_hold_char; +@@ -1796,10 +1796,10 @@ void yyFlexLexer::yyunput( int c, register char* yy_bp ) + if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) + { /* need to shift things up to make room */ + /* +2 for EOB chars. */ +- register int number_to_move = yy_n_chars + 2; +- register char *dest = &yy_current_buffer->yy_ch_buf[ ++ int number_to_move = yy_n_chars + 2; ++ char *dest = &yy_current_buffer->yy_ch_buf[ + yy_current_buffer->yy_buf_size + 2]; +- register char *source = ++ char *source = + &yy_current_buffer->yy_ch_buf[number_to_move]; + + while ( source > yy_current_buffer->yy_ch_buf ) +@@ -2119,7 +2119,7 @@ yyconst char *s2; + int n; + #endif + { +- register int i; ++ int i; + for ( i = 0; i < n; ++i ) + s1[i] = s2[i]; + } +@@ -2133,7 +2133,7 @@ static int yy_flex_strlen( s ) + yyconst char *s; + #endif + { +- register int n; ++ int n; + for ( n = 0; s[n]; ++n ) + ; + +diff --git a/src/osgPlugins/cfg/ConfigParser.cpp b/src/osgPlugins/cfg/ConfigParser.cpp +index 263c82896..62d30c3f5 100644 +--- a/src/osgPlugins/cfg/ConfigParser.cpp ++++ b/src/osgPlugins/cfg/ConfigParser.cpp +@@ -351,7 +351,7 @@ union yyalloc + # define YYCOPY(To, From, Count) \ + do \ + { \ +- register YYSIZE_T yyi; \ ++ YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ +@@ -1025,7 +1025,7 @@ yystrlen (yystr) + const char *yystr; + # endif + { +- register const char *yys = yystr; ++ const char *yys = yystr; + + while (*yys++ != '\0') + continue; +@@ -1050,8 +1050,8 @@ yystpcpy (yydest, yysrc) + const char *yysrc; + # endif + { +- register char *yyd = yydest; +- register const char *yys = yysrc; ++ char *yyd = yydest; ++ const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; +@@ -1175,8 +1175,8 @@ yyparse () + #endif + { + +- register int yystate; +- register int yyn; ++ int yystate; ++ int yyn; + int yyresult; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; +@@ -1194,12 +1194,12 @@ yyparse () + /* The state stack. */ + short yyssa[YYINITDEPTH]; + short *yyss = yyssa; +- register short *yyssp; ++ short *yyssp; + + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs = yyvsa; +- register YYSTYPE *yyvsp; ++ YYSTYPE *yyvsp; + + + +-- +2.39.3 (Apple Git-145) + diff --git a/recipes/openscenegraph/all/test_package/CMakeLists.txt b/recipes/openscenegraph/all/test_package/CMakeLists.txt index c2aca0be1b70aa..fcd48ccf6e39d7 100644 --- a/recipes/openscenegraph/all/test_package/CMakeLists.txt +++ b/recipes/openscenegraph/all/test_package/CMakeLists.txt @@ -1,21 +1,58 @@ -cmake_minimum_required(VERSION 3.1.2) -project(test_package) - -include(${PROJECT_BINARY_DIR}/conanbuildinfo.cmake) -conan_basic_setup() - -find_package(OpenSceneGraph REQUIRED) - -include_directories(${OPENSCENEGRAPH_INCLUDE_DIRS}) -link_libraries(${OPENSCENEGRAPH_LIBRARIES}) -add_compile_definitions(${OPENSCENEGRAPH_COMPILE_DEFINITIONS}) +cmake_minimum_required(VERSION 3.15) +project(test_package LANGUAGES CXX) +find_package(OpenSceneGraph REQUIRED CONFIG) +add_executable(${PROJECT_NAME} test_package.cpp) +target_link_libraries(${PROJECT_NAME} OpenSceneGraph::OpenSceneGraph) -get_property(cache_variables DIRECTORY PROPERTY CACHE_VARIABLES) -foreach(cache_variable ${cache_variables}) - if("${cache_variable}" MATCHES "^OSG_HAS_(WITH_.+)$") - add_compile_definitions("${CMAKE_MATCH_1}=${${cache_variable}}") - endif() +get_directory_property(compile_definitions DIRECTORY ${CMAKE_SOURCE_DIR} COMPILE_DEFINITIONS) +foreach(compile_definition ${compile_definitions}) + if("${compile_definition}" MATCHES "(WITH_.+)=(1)$") + string(REPLACE "=" ";" definition_list ${compile_definition}) + list(GET definition_list 0 definition_key) + list(GET definition_list 1 definition_value) + message("Defined: ${definition_key}=${definition_value}") + if("${definition_key}" STREQUAL "WITH_BMP") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_bmp) + endif() + if("${definition_key}" STREQUAL "WITH_JPEG") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_jpeg) + endif() + if("${definition_key}" STREQUAL "WITH_JASPER") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_jp2) + endif() + if("${definition_key}" STREQUAL "WITH_OPENEXR") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_exr) + endif() + if("${definition_key}" STREQUAL "WITH_GIF") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_gif) + endif() + if("${definition_key}" STREQUAL "WITH_PNG") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_png) + endif() + if("${definition_key}" STREQUAL "WITH_TIFF") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_tiff) + endif() + if("${definition_key}" STREQUAL "WITH_GDAL") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_gdal) + endif() + if("${definition_key}" STREQUAL "WITH_GTA") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_gta) + endif() + if("${definition_key}" STREQUAL "WITH_DCMTK") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_dicom) + endif() + if("${definition_key}" STREQUAL "WITH_CURL") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_curl) + endif() + if("${definition_key}" STREQUAL "WITH_ZLIB") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_gz) + endif() + if("${definition_key}" STREQUAL "WITH_FREETYPE") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_freetype) + endif() + if("${definition_key}" STREQUAL "WITH_IMAGEIO") + target_link_libraries(${PROJECT_NAME} openscenegraph::osgdb_imageio) + endif() + endif() endforeach() - -add_executable(${PROJECT_NAME} test_package.cpp) diff --git a/recipes/openscenegraph/all/test_package/conanfile.py b/recipes/openscenegraph/all/test_package/conanfile.py index 0e02c2d008408d..b27efd09cb3f16 100644 --- a/recipes/openscenegraph/all/test_package/conanfile.py +++ b/recipes/openscenegraph/all/test_package/conanfile.py @@ -1,25 +1,43 @@ -from conans import CMake, ConanFile, tools +from conan import ConanFile +from conan.tools.apple import is_apple_os +from conan.tools.build import can_run +from conan.tools.cmake import cmake_layout, CMake, CMakeToolchain import os class TestPackageConan(ConanFile): - settings = "os", "compiler", "build_type", "arch" - generators = "cmake", "cmake_find_package" + settings = "os", "arch", "compiler", "build_type" + generators = "CMakeDeps", "VirtualRunEnv" + test_type = "explicit" - def build(self): - cmake = CMake(self) - for key, value in self.options["openscenegraph"].items(): + def requirements(self): + self.requires(self.tested_reference_str) + + def layout(self): + cmake_layout(self) + + def generate(self): + tc = CMakeToolchain(self) + for key, value in self.dependencies["openscenegraph"].options.items(): if key.startswith("with_"): - cmake.definitions["OSG_HAS_" + key.upper()] = 1 if value else 0 - if self.settings.os == "Macos": - cmake.definitions["OSG_HAS_WITH_GIF"] = 0 - cmake.definitions["OSG_HAS_WITH_JPEG"] = 0 - cmake.definitions["OSG_HAS_WITH_PNG"] = 0 + tc.preprocessor_definitions[key.upper()] = 1 if str(value) != "False" else 0 + #OSG always builds the bmp plugin + tc.preprocessor_definitions["WITH_BMP"] = 1 + if is_apple_os(self): + tc.preprocessor_definitions["WITH_GIF"] = 0 + tc.preprocessor_definitions["WITH_JPEG"] = 0 + tc.preprocessor_definitions["WITH_PNG"] = 0 + # OSG builds the imageio plugin on apple platforms + tc.preprocessor_definitions["WITH_IMAGEIO"] = 1 + tc.generate() + + def build(self): + cmake = CMake(self) cmake.configure() cmake.build() def test(self): - if not tools.cross_building(self): - bin_path = os.path.join("bin", "test_package") - self.run(bin_path, run_environment=True) + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindir, "test_package") + self.run(bin_path, env="conanrun") diff --git a/recipes/openscenegraph/all/test_package/test_package.cpp b/recipes/openscenegraph/all/test_package/test_package.cpp index d165af7b347332..c833eb8e3caee0 100644 --- a/recipes/openscenegraph/all/test_package/test_package.cpp +++ b/recipes/openscenegraph/all/test_package/test_package.cpp @@ -4,14 +4,8 @@ #include #include -// OSG always builds the bmp plugin -#define WITH_BMP 1 - -// OSG builds the imageio plugin on apple platforms -#ifdef __APPLE__ -# define WITH_IMAGEIO 1 -#else -# define WITH_IMAGEIO 0 +#ifndef WITH_IMAGEIO +#define WITH_IMAGEIO 0 #endif #ifdef OSG_LIBRARY_STATIC diff --git a/recipes/openssh/all/conanfile.py b/recipes/openssh/all/conanfile.py index 15aec4e4327536..193d5c2993c516 100644 --- a/recipes/openssh/all/conanfile.py +++ b/recipes/openssh/all/conanfile.py @@ -25,6 +25,7 @@ class PackageConan(ConanFile): "with_pam": [False, "openpam"], # linux-pam and Solaris PAM are also supported "with_selinux": [True, False], "with_libedit": [True, False], + "with_strip": [True, False], "with_sandbox": [False, "auto", "capsicum", "darwin", "rlimit", "seccomp_filter", "systrace", "pledge"] } default_options = { @@ -32,6 +33,7 @@ class PackageConan(ConanFile): "with_pam": False, "with_selinux": False, "with_libedit": False, + "with_strip": True, "with_sandbox": "auto" } @@ -81,6 +83,9 @@ def generate(self): tc = AutotoolsToolchain(self) tc.configure_args.append("--without-zlib-version-check") + if not self.options.with_strip: + tc.configure_args.append("--disable-strip") + if self.options.with_selinux: tc.configure_args.append("--with-selinux") diff --git a/recipes/openvino/all/conandata.yml b/recipes/openvino/all/conandata.yml index dd23e75ae9252b..a47bfa540ad579 100644 --- a/recipes/openvino/all/conandata.yml +++ b/recipes/openvino/all/conandata.yml @@ -1,4 +1,20 @@ sources: + "2024.1.0": + "openvino": + url: "https://github.com/openvinotoolkit/openvino/archive/refs/tags/2024.1.0.tar.gz" + sha256: "b298a91b5aae252ef9883e0f2017e88677be88a9839b1aa2f6e9f70067d98ce6" + "arm_compute": + url: "https://github.com/ARM-software/ComputeLibrary/archive/refs/tags/v24.02.1.tar.gz" + sha256: "590d5cb710355bce2ddfe7117529c2f492cd253b548f709bbfe84702203d99c8" + "onednn_cpu": + url: "https://github.com/openvinotoolkit/oneDNN/archive/26633ae49edd4353a29b7170d9fcef6b2d79f4b3.tar.gz" + sha256: "3cd4a2aea30cd6ca689e63545cf986f8e83c88333b73d42bb750fcaf08940b17" + "mlas": + url: "https://github.com/openvinotoolkit/mlas/archive/d1bc25ec4660cddd87804fcf03b2411b5dfb2e94.tar.gz" + sha256: "0a44fbfd4b13e8609d66ddac4b11a27c90c1074cde5244c91ad197901666004c" + "onednn_gpu": + url: "https://github.com/oneapi-src/oneDNN/archive/4e6ff043c439652fcf6c400ac4e0c81bbac7c71c.tar.gz" + sha256: "c3543d560fbbb7297df91c191cc9bf682322c5554302e256f1bf4a757424a331" "2024.0.0": "openvino": url: "https://github.com/openvinotoolkit/openvino/archive/refs/tags/2024.0.0.tar.gz" @@ -47,23 +63,12 @@ sources: "onednn_gpu": url: "https://github.com/oneapi-src/oneDNN/archive/284ad4574939fa784e4ddaa1f4aa577b8eb7a017.tar.gz" sha256: "16f36078339cd08b949efea1d863344cb0b742d9f5898937d07a591b0c4da517" - "2023.1.0": - "openvino": - url: "https://github.com/openvinotoolkit/openvino/archive/refs/tags/2023.1.0.tar.gz" - sha256: "ff88596b342440185874ddbe22874b47ad7b923f14671921af760b15c98aacd6" - "arm_compute": - url: "https://github.com/ARM-software/ComputeLibrary/archive/refs/tags/v23.02.1.tar.gz" - sha256: "c3a443e26539f866969242e690cf0651ef629149741ee18732f954c734da6763" - "onednn_cpu": - url: "https://github.com/openvinotoolkit/oneDNN/archive/ae825539bd850d1ad5c83d4bb0d56c65d46d5842.tar.gz" - sha256: "1204df17785c8603f9dfa1f4f91e91e5ffd4391bf7680d2b256de2513490ebee" - "mlas": - url: "https://github.com/openvinotoolkit/mlas/archive/c7c8a631315000f17c650af34431009d2f22129c.tar.gz" - sha256: "7b790dfeef8e1dd612f920c85186c52ad3a3e2245e2a2afd6cc91ce4b1dc64a9" - "onednn_gpu": - url: "https://github.com/oneapi-src/oneDNN/archive/4b82a66ed38ecaa993352e5cc6ed7753656b8a26.tar.gz" - sha256: "cb17c003fe51bc9b4e20189573956b4446468162adf0fc4cea2ee0820cff0cd0" patches: + "2024.1.0": + - patch_file: "patches/2024.1.0/0001-fix-cxxflags.patch" + patch_description: "Fix build failure when explicitly passing different gcc ABI via cxx flags" + patch_type: "portability" + patch_source: "https://github.com/openvinotoolkit/openvino/pull/24274" "2024.0.0": - patch_file: "patches/2024.0.0/0001-Include-mutex-for-std-call_once.patch" patch_description: "Include mutex for std::call_once" @@ -82,40 +87,3 @@ patches: patch_description: "Fixed issue with version on Windows" patch_type: "portability" patch_source: "https://github.com/openvinotoolkit/openvino/pull/19628" - "2023.1.0": - - patch_file: "patches/2023.1.0/0001-cpu-plugin-compilation-c++17.patch" - patch_description: "Fixed CPU plugin compilation with C++17" - patch_type: "portability" - patch_source: "https://github.com/openvinotoolkit/openvino/pull/19628" - - patch_file: "patches/2023.1.0/0002-core-compilation-c++17.patch" - patch_description: "Fixed OpenVINO Core compilation with C++17" - patch_type: "portability" - patch_source: "https://github.com/openvinotoolkit/openvino/pull/19707" - - patch_file: "patches/2023.1.0/0003-fixed-gpu-with-onednn-build.patch" - patch_description: "Fixed Intel GPU plugin with oneDNN" - patch_type: "portability" - # severals PR are merged into a single patch including: - # https://github.com/openvinotoolkit/openvino/pull/19668, - # https://github.com/openvinotoolkit/openvino/pull/19715, - # https://github.com/openvinotoolkit/openvino/pull/19716, - # https://github.com/openvinotoolkit/openvino/pull/19762 and - patch_source: "https://github.com/openvinotoolkit/openvino/pull/19811" - - patch_file: "patches/2023.1.0/0004-fixed-gpu-plugin-with-clang.patch" - patch_description: "Fixed order of initialization of static variables in GPU plugin compiled with clang" - patch_type: "portability" - patch_source: "https://github.com/openvinotoolkit/openvino/pull/19768" - - patch_file: "patches/2023.1.0/0005-dynamic-protobuf.patch" - patch_description: "Added a workaround for OpenVINO to work with dynamic protobuf" - patch_type: "portability" - # severals PR are merged into a single patch including: - # https://github.com/openvinotoolkit/openvino/pull/19599, - # https://github.com/openvinotoolkit/openvino/pull/19758 and - patch_source: "https://github.com/openvinotoolkit/openvino/pull/20612" - - patch_file: "patches/2023.1.0/0006-macos-14.patch" - patch_description: "Support macos 14" - patch_type: "portability" - patch_source: "https://github.com/openvinotoolkit/openvino/pull/19946" - - patch_file: "patches/2023.1.0/0007-compilation-c++23.patch" - patch_description: "Compilation with C++23" - patch_type: "portability" - patch_source: "https://github.com/openvinotoolkit/openvino/pull/20724" diff --git a/recipes/openvino/all/conanfile.py b/recipes/openvino/all/conanfile.py index d5b090836295b5..fca46b7f107365 100644 --- a/recipes/openvino/all/conanfile.py +++ b/recipes/openvino/all/conanfile.py @@ -14,7 +14,6 @@ class OpenvinoConan(ConanFile): name = "openvino" - # Optional metadata license = "Apache-2.0" homepage = "https://github.com/openvinotoolkit/openvino" url = "https://github.com/conan-io/conan-center-index" @@ -100,6 +99,10 @@ def _target_x86_64(self): def _gna_option_available(self): return self.settings.os in ["Linux", "Windows"] and self._target_x86_64 and Version(self.version) < "2024.0.0" + @property + def _npu_option_available(self): + return self.settings.os in ["Linux", "Windows"] and self._target_x86_64 and Version(self.version) >= "2024.1.0" + @property def _gpu_option_available(self): return self.settings.os != "Macos" and self._target_x86_64 @@ -205,6 +208,8 @@ def generate(self): toolchain.cache_variables["ENABLE_ONEDNN_FOR_GPU"] = self.options.shared or not self.options.enable_cpu if self._gna_option_available: toolchain.cache_variables["ENABLE_INTEL_GNA"] = False + if self._npu_option_available: + toolchain.cache_variables["ENABLE_INTEL_NPU"] = False # SW plugins toolchain.cache_variables["ENABLE_AUTO"] = self.options.enable_auto toolchain.cache_variables["ENABLE_MULTI"] = self.options.enable_auto diff --git a/recipes/openvino/all/dependencies/dependencies-2023.1.0.yml b/recipes/openvino/all/dependencies/dependencies-2023.1.0.yml deleted file mode 100644 index fd126ded2ddeea..00000000000000 --- a/recipes/openvino/all/dependencies/dependencies-2023.1.0.yml +++ /dev/null @@ -1,2 +0,0 @@ -onnx: "1.13.1" -ade: "0.1.2d" diff --git a/recipes/openvino/all/dependencies/dependencies-2024.1.0.yml b/recipes/openvino/all/dependencies/dependencies-2024.1.0.yml new file mode 100644 index 00000000000000..f99604741682a5 --- /dev/null +++ b/recipes/openvino/all/dependencies/dependencies-2024.1.0.yml @@ -0,0 +1 @@ +onnx: "1.15.0" diff --git a/recipes/openvino/all/patches/2023.1.0/0001-cpu-plugin-compilation-c++17.patch b/recipes/openvino/all/patches/2023.1.0/0001-cpu-plugin-compilation-c++17.patch deleted file mode 100644 index da6548b7c91159..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0001-cpu-plugin-compilation-c++17.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/src/plugins/intel_cpu/src/cpu_tensor.cpp b/src/plugins/intel_cpu/src/cpu_tensor.cpp -index 48d8fdd4be..815edd9309 100644 ---- a/src/plugins/intel_cpu/src/cpu_tensor.cpp -+++ b/src/plugins/intel_cpu/src/cpu_tensor.cpp -@@ -68,8 +68,9 @@ void Tensor::update_strides() const { - OPENVINO_ASSERT(blocked_desc, "not a valid blocked memory descriptor."); - auto& strides = blocked_desc->getStrides(); - m_strides.resize(strides.size()); -- std::transform(strides.cbegin(), strides.cend(), m_strides.begin(), -- std::bind1st(std::multiplies(), m_element_type.size())); -+ std::transform(strides.cbegin(), strides.cend(), m_strides.begin(), [this] (const size_t stride) { -+ return stride * m_element_type.size(); -+ }); - } - - void* Tensor::data(const element::Type& element_type) const { diff --git a/recipes/openvino/all/patches/2023.1.0/0002-core-compilation-c++17.patch b/recipes/openvino/all/patches/2023.1.0/0002-core-compilation-c++17.patch deleted file mode 100644 index 2df86d8ed0ec68..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0002-core-compilation-c++17.patch +++ /dev/null @@ -1,46 +0,0 @@ -diff --git a/src/frontends/common/src/utils.cpp b/src/frontends/common/src/utils.cpp -index 8ef7481551..3a0db585fd 100644 ---- a/src/frontends/common/src/utils.cpp -+++ b/src/frontends/common/src/utils.cpp -@@ -12,10 +12,6 @@ - # include - # include - # include --# ifdef OPENVINO_ENABLE_UNICODE_PATH_SUPPORT --# include --# include --# endif - #else - # if defined(WINAPI_FAMILY) && !WINAPI_PARTITION_DESKTOP - # error "Only WINAPI_PARTITION_DESKTOP is supported, because of GetModuleHandleEx[A|W]" -diff --git a/src/frontends/paddle/src/input_model.cpp b/src/frontends/paddle/src/input_model.cpp -index 6987b3285e..287fa5e54a 100644 ---- a/src/frontends/paddle/src/input_model.cpp -+++ b/src/frontends/paddle/src/input_model.cpp -@@ -13,14 +13,10 @@ - #include "openvino/frontend/paddle/node_context.hpp" - #include "openvino/opsets/opset7.hpp" - #include "openvino/util/common_util.hpp" -+#include "openvino/util/file_util.hpp" - #include "paddle_utils.hpp" - #include "place.hpp" - --#if defined(OPENVINO_ENABLE_UNICODE_PATH_SUPPORT) && defined(_WIN32) --# include --# include --#endif -- - namespace ov { - namespace frontend { - namespace paddle { -@@ -169,9 +165,7 @@ std::basic_string get_const_path(const std::basic_string& folder_with_weig - #if defined(OPENVINO_ENABLE_UNICODE_PATH_SUPPORT) && defined(_WIN32) - template <> - std::basic_string get_const_path(const std::basic_string& folder, const std::string& name) { -- std::wstring_convert> converter; -- std::wstring _name = converter.from_bytes(name); -- return folder + paddle::get_path_sep() + _name; -+ return folder + paddle::get_path_sep() + ov::util::string_to_wstring(name); - } - #endif - diff --git a/recipes/openvino/all/patches/2023.1.0/0003-fixed-gpu-with-onednn-build.patch b/recipes/openvino/all/patches/2023.1.0/0003-fixed-gpu-with-onednn-build.patch deleted file mode 100644 index e5791b37c7a7ac..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0003-fixed-gpu-with-onednn-build.patch +++ /dev/null @@ -1,684 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 461f1a209c..0b552b3da3 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -47,6 +47,7 @@ message (STATUS "CMAKE_GENERATOR ....................... " ${CMAKE_GENERATOR}) - message (STATUS "CPACK_GENERATOR ....................... " ${CPACK_GENERATOR}) - message (STATUS "CMAKE_C_COMPILER_ID ................... " ${CMAKE_C_COMPILER_ID}) - message (STATUS "CMAKE_CXX_COMPILER_ID ................. " ${CMAKE_CXX_COMPILER_ID}) -+message (STATUS "CMAKE_CXX_STANDARD .................... " ${CMAKE_CXX_STANDARD}) - if(OV_GENERATOR_MULTI_CONFIG) - string(REPLACE ";" " " config_types "${CMAKE_CONFIGURATION_TYPES}") - message (STATUS "CMAKE_CONFIGURATION_TYPES ............. " ${config_types}) -diff --git a/cmake/developer_package/plugins/plugins.cmake b/cmake/developer_package/plugins/plugins.cmake -index 436685355a..ea187411d1 100644 ---- a/cmake/developer_package/plugins/plugins.cmake -+++ b/cmake/developer_package/plugins/plugins.cmake -@@ -117,6 +117,10 @@ function(ov_add_plugin) - # install rules - if(NOT OV_PLUGIN_SKIP_INSTALL OR NOT BUILD_SHARED_LIBS) - string(TOLOWER "${OV_PLUGIN_DEVICE_NAME}" install_component) -+ if(NOT BUILD_SHARED_LIBS) -+ # in case of static libs everything is installed to 'core' -+ set(install_component ${OV_CPACK_COMP_CORE}) -+ endif() - - if(OV_PLUGIN_PSEUDO_DEVICE) - set(plugin_hidden HIDDEN) -diff --git a/cmake/features.cmake b/cmake/features.cmake -index e4b60c89e0..7327b262a2 100644 ---- a/cmake/features.cmake -+++ b/cmake/features.cmake -@@ -23,7 +23,7 @@ endif() - - ie_dependent_option (ENABLE_INTEL_GPU "GPU OpenCL-based plugin for OpenVINO Runtime" ${ENABLE_INTEL_GPU_DEFAULT} "X86_64 OR AARCH64;NOT APPLE;NOT WINDOWS_STORE;NOT WINDOWS_PHONE" OFF) - --if (ANDROID OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) OR NOT BUILD_SHARED_LIBS) -+if (ANDROID OR MINGW OR (CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) OR (NOT BUILD_SHARED_LIBS AND ENABLE_INTEL_CPU)) - # oneDNN doesn't support old compilers and android builds for now, so we'll build GPU plugin without oneDNN - # also, in case of static build CPU's and GPU's oneDNNs will conflict, so we are disabling GPU's one in this case - set(ENABLE_ONEDNN_FOR_GPU_DEFAULT OFF) -diff --git a/cmake/templates/OpenVINOConfig.cmake.in b/cmake/templates/OpenVINOConfig.cmake.in -index 9eb1cfdd35..7dda80d8a3 100644 ---- a/cmake/templates/OpenVINOConfig.cmake.in -+++ b/cmake/templates/OpenVINOConfig.cmake.in -@@ -223,6 +223,10 @@ macro(_ov_find_tbb) - PATHS ${_tbb_bind_dir} - NO_CMAKE_FIND_ROOT_PATH - NO_DEFAULT_PATH) -+ if(TARGET TBBbind::tbbbind_2_5) -+ # To solve https://cmake.org/cmake/help/latest/policy/CMP0111.html warnings -+ set_property(TARGET TBBbind::tbbbind_2_5 PROPERTY IMPORTED_CONFIGURATIONS RELEASE DEBUG) -+ endif() - unset(_tbb_bind_dir) - endif() - unset(install_tbbbind) -@@ -343,11 +347,15 @@ endmacro() - macro(_ov_find_intel_cpu_dependencies) - set(_OV_ENABLE_CPU_ACL "@DNNL_USE_ACL@") - if(_OV_ENABLE_CPU_ACL) -- set(_ov_in_install_tree "@PACKAGE_ARM_COMPUTE_LIB_DIR@") -+ set(_ov_in_install_tree "@PACKAGE_OPENVINO_LIB_DIR@") - if(_ov_in_install_tree) -- set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_ARM_COMPUTE_LIB_DIR@") -+ set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_OPENVINO_LIB_DIR@") - set(ACL_DIR "${CMAKE_CURRENT_LIST_DIR}") - else() -+ if(NOT TARGET arm_compute::arm_compute) -+ # for case when build tree is used separately, e.g. OpenVINODeveloperPackageConfig.cmake -+ set_and_check(ARM_COMPUTE_LIB_DIR "@PACKAGE_CMAKE_ARCHIVE_OUTPUT_DIRECTORY@") -+ endif() - set_and_check(ACL_DIR "@PACKAGE_FIND_ACL_PATH@") - endif() - -@@ -363,16 +371,50 @@ macro(_ov_find_intel_gpu_dependencies) - set(_OV_ENABLE_INTEL_GPU "@ENABLE_INTEL_GPU@") - set(_OV_ENABLE_SYSTEM_OPENCL "@ENABLE_SYSTEM_OPENCL@") - if(_OV_ENABLE_INTEL_GPU AND _OV_ENABLE_SYSTEM_OPENCL) -- set(_OV_OpenCLICDLoader_FOUND "@OpenCLICDLoader_FOUND@") -- if(_OV_OpenCLICDLoader_FOUND) -- _ov_find_dependency(OpenCLICDLoader) -- else() -- _ov_find_dependency(OpenCL) -- endif() -- unset(_OV_OpenCLICDLoader_FOUND) -+ _ov_find_dependency(OpenCL) - endif() - unset(_OV_ENABLE_INTEL_GPU) - unset(_OV_ENABLE_SYSTEM_OPENCL) -+ -+ set(_OV_ENABLE_ONEDNN_FOR_GPU "@ENABLE_ONEDNN_FOR_GPU@") -+ if(_OV_ENABLE_ONEDNN_FOR_GPU AND NOT TARGET onednn_gpu_tgt) -+ set(_OV_DNNL_GPU_LIBRARY_NAME "@DNNL_GPU_LIBRARY_NAME@") -+ -+ set(_ov_in_install_tree "@PACKAGE_OPENVINO_LIB_DIR@") -+ if(_ov_in_install_tree) -+ set(onednn_gpu_lib "${CMAKE_STATIC_LIBRARY_PREFIX}${_OV_DNNL_GPU_LIBRARY_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}") -+ set_and_check(onednn_gpu_lib_root "@PACKAGE_OPENVINO_LIB_DIR@") -+ if(WIN32) -+ if(OV_GENERATOR_MULTI_CONFIG) -+ set(extra_args PATH_SUFFIXES ${CMAKE_CONFIGURATION_TYPES}) -+ else() -+ set(extra_args PATH_SUFFIXES ${CMAKE_BUILD_TYPE}) -+ endif() -+ endif() -+ -+ find_library(onednn_gpu_lib_path -+ NAMES ${_OV_DNNL_GPU_LIBRARY_NAME} -+ PATHS ${onednn_gpu_lib_root} -+ ${extra_args}) -+ -+ if(NOT onednn_gpu_lib_path) -+ message(FATAL_ERROR "Internal error: failed to find '${_OV_DNNL_GPU_LIBRARY_NAME}' in '${onednn_gpu_lib_root}'") -+ endif() -+ -+ unset(extra_args) -+ unset(onednn_gpu_lib) -+ else() -+ set_and_check(onednn_gpu_lib_path "@PACKAGE_ONEDNN_GPU_LIB_PATH@") -+ endif() -+ -+ set_target_properties(openvino::onednn_gpu_tgt PROPERTIES -+ INTERFACE_LINK_LIBRARIES "${onednn_gpu_lib_path}") -+ -+ unset(onednn_gpu_lib_path) -+ unset(_ov_in_install_tree) -+ unset(_OV_DNNL_GPU_LIBRARY_NAME) -+ endif() -+ unset(_OV_ENABLE_ONEDNN_FOR_GPU) - endmacro() - - macro(_ov_find_intel_gna_dependencies) -@@ -455,6 +497,7 @@ set(_OV_ENABLE_OPENVINO_BUILD_SHARED "@BUILD_SHARED_LIBS@") - - if(NOT TARGET openvino) - set(_ov_as_external_package ON) -+ include("${CMAKE_CURRENT_LIST_DIR}/OpenVINOTargets.cmake") - endif() - - if(NOT _OV_ENABLE_OPENVINO_BUILD_SHARED) -@@ -487,8 +530,6 @@ set(_ov_imported_libs openvino::runtime openvino::runtime::c - openvino::frontend::pytorch openvino::frontend::tensorflow_lite) - - if(_ov_as_external_package) -- include("${CMAKE_CURRENT_LIST_DIR}/OpenVINOTargets.cmake") -- - foreach(target IN LISTS _ov_imported_libs) - if(TARGET ${target}) - get_target_property(imported_configs ${target} IMPORTED_CONFIGURATIONS) -diff --git a/src/cmake/openvino.cmake b/src/cmake/openvino.cmake -index eb9a54354e..1d2996482b 100644 ---- a/src/cmake/openvino.cmake -+++ b/src/cmake/openvino.cmake -@@ -157,9 +157,12 @@ if(ENABLE_INTEL_GNA) - list(APPEND PATH_VARS "GNA_PATH") - endif() - if(DNNL_USE_ACL) -- list(APPEND BUILD_PATH_VARS "FIND_ACL_PATH") -+ list(APPEND BUILD_PATH_VARS "FIND_ACL_PATH;CMAKE_ARCHIVE_OUTPUT_DIRECTORY") - set(FIND_ACL_PATH "${intel_cpu_thirdparty_SOURCE_DIR}") - endif() -+if(ENABLE_ONEDNN_FOR_GPU) -+ list(APPEND BUILD_PATH_VARS "ONEDNN_GPU_LIB_PATH") -+endif() - - set(PUBLIC_HEADERS_DIR "${OpenVINO_SOURCE_DIR}/src/inference/include") - set(IE_INCLUDE_DIR "${PUBLIC_HEADERS_DIR}/ie") -@@ -177,12 +180,10 @@ configure_package_config_file("${OpenVINO_SOURCE_DIR}/cmake/templates/OpenVINOCo - - # install tree - --if(DNNL_USE_ACL) -- list(APPEND INSTALL_PATH_VARS "ARM_COMPUTE_LIB_DIR") -- # remove generator expression at the end, because searching in Release / Debug will be -- # done by ACLConfig.cmake itself -- string(REPLACE "$" "" ARM_COMPUTE_LIB_DIR "${OV_CPACK_LIBRARYDIR}") --endif() -+list(APPEND INSTALL_PATH_VARS "OPENVINO_LIB_DIR") -+# remove generator expression at the end, because searching in Release / Debug -+# will be done by inside OpenVINOConfig.cmak / ACLConfig.cmake -+string(REPLACE "$" "" OPENVINO_LIB_DIR "${OV_CPACK_LIBRARYDIR}") - - set(IE_INCLUDE_DIR "${OV_CPACK_INCLUDEDIR}/ie") - set(IE_TBB_DIR "${IE_TBB_DIR_INSTALL}") -diff --git a/src/plugins/intel_cpu/thirdparty/CMakeLists.txt b/src/plugins/intel_cpu/thirdparty/CMakeLists.txt -index 98935a0792..7e8325acef 100644 ---- a/src/plugins/intel_cpu/thirdparty/CMakeLists.txt -+++ b/src/plugins/intel_cpu/thirdparty/CMakeLists.txt -@@ -117,7 +117,7 @@ function(ov_add_onednn) - add_subdirectory(onednn EXCLUDE_FROM_ALL) - - # install static libraries -- ov_install_static_lib(dnnl cpu) -+ ov_install_static_lib(dnnl ${OV_CPACK_COMP_CORE}) - - if(DNNL_USE_ACL AND NOT BUILD_SHARED_LIBS) - # use ACLConfig.cmake in OpenVINOConfig.cmake in case of static build -@@ -125,16 +125,16 @@ function(ov_add_onednn) - # but for this we need to install library files - install(FILES $ - DESTINATION ${OV_CPACK_ARCHIVEDIR} -- COMPONENT cpu) -+ COMPONENT ${OV_CPACK_COMP_CORE}) - install(FILES "${intel_cpu_thirdparty_SOURCE_DIR}/ACLConfig.cmake" - DESTINATION ${OV_CPACK_OPENVINO_CMAKEDIR} -- COMPONENT core_dev) -+ COMPONENT ${OV_CPACK_COMP_CORE_DEV}) - endif() - endfunction() - - if(ENABLE_MLAS_FOR_CPU) - add_subdirectory(mlas) -- ov_install_static_lib(mlas cpu) -+ ov_install_static_lib(mlas ${OV_CPACK_COMP_CORE}) - endif() - - ov_add_onednn() -diff --git a/src/plugins/intel_gpu/CMakeLists.txt b/src/plugins/intel_gpu/CMakeLists.txt -index 1770b34b65..4e8a9d0e68 100644 ---- a/src/plugins/intel_gpu/CMakeLists.txt -+++ b/src/plugins/intel_gpu/CMakeLists.txt -@@ -35,6 +35,7 @@ set(MAIN_DIR "${CMAKE_CURRENT_SOURCE_DIR}") - set(INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include") - - add_subdirectory(thirdparty) -+include(thirdparty/cmake/rapidjson.cmake) - - if(CMAKE_COMPILER_IS_GNUCXX) - ie_add_compiler_flags(-Werror) -diff --git a/src/plugins/intel_gpu/src/graph/CMakeLists.txt b/src/plugins/intel_gpu/src/graph/CMakeLists.txt -index 0b2093d2a0..fac58ec0fa 100644 ---- a/src/plugins/intel_gpu/src/graph/CMakeLists.txt -+++ b/src/plugins/intel_gpu/src/graph/CMakeLists.txt -@@ -58,7 +58,7 @@ elseif((NOT ANDROID) AND (UNIX)) - target_link_libraries(${TARGET_NAME} PRIVATE pthread) - endif() - --ov_install_static_lib(${TARGET_NAME} gpu) -+ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE}) - - if(ENABLE_SSE42) - ie_sse42_optimization_flags(sse4_2_flags) -diff --git a/src/plugins/intel_gpu/src/kernel_selector/CMakeLists.txt b/src/plugins/intel_gpu/src/kernel_selector/CMakeLists.txt -index b76d8ee732..99ebf5331a 100644 ---- a/src/plugins/intel_gpu/src/kernel_selector/CMakeLists.txt -+++ b/src/plugins/intel_gpu/src/kernel_selector/CMakeLists.txt -@@ -61,7 +61,8 @@ endif() - target_include_directories(${TARGET_NAME} PUBLIC $ - $ - $ -- $) -+ $ -+ PRIVATE $) - - target_compile_options(${TARGET_NAME} PRIVATE - $<$:$,/Os,-Os>>) -@@ -70,7 +71,7 @@ if(COMMAND add_cpplint_target) - add_cpplint_target(${TARGET_NAME}_cpplint FOR_TARGETS ${TARGET_NAME}) - endif() - --target_link_libraries(${TARGET_NAME} PUBLIC OpenCL::OpenCL rapidjson inference_engine_plugin_api) -+target_link_libraries(${TARGET_NAME} PUBLIC OpenCL::OpenCL inference_engine_plugin_api) - - set_target_properties(${TARGET_NAME} PROPERTIES INTERPROCEDURAL_OPTIMIZATION_RELEASE ${ENABLE_LTO}) - -@@ -90,8 +91,16 @@ add_custom_command( - TARGET ${TARGET_NAME} POST_BUILD - COMMAND "${CMAKE_COMMAND}" -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/cache/cache.json ${TUNING_CACHE_PATH}/cache.json) - -+if(BUILD_SHARED_LIBS) -+ set(CACHE_JSON_INSTALL_DIR ${OV_CPACK_PLUGINSDIR}) -+ set(CACHE_JSON_COMPONENT gpu) -+else() -+ set(CACHE_JSON_INSTALL_DIR ${OV_CPACK_ARCHIVEDIR}) -+ set(CACHE_JSON_COMPONENT ${OV_CPACK_COMP_CORE}) -+endif() -+ - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/cache/cache.json -- DESTINATION ${OV_CPACK_PLUGINSDIR} -- COMPONENT gpu) -+ DESTINATION ${CACHE_JSON_INSTALL_DIR} -+ COMPONENT ${CACHE_JSON_COMPONENT}) - --ov_install_static_lib(${TARGET_NAME} gpu) -+ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE}) -diff --git a/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.cpp b/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.cpp -index cfac486cdf..a5d0711f61 100644 ---- a/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.cpp -+++ b/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.cpp -@@ -3,18 +3,21 @@ - // - - #include "auto_tuner.h" -+ - #include - #include - #include - #include - #include --#include "istreamwrapper.h" --#include "stringbuffer.h" --#include "prettywriter.h" - #include - #include - #include - -+#include "rapidjson/istreamwrapper.h" -+#include "rapidjson/stringbuffer.h" -+#include "rapidjson/prettywriter.h" -+#include "rapidjson/document.h" -+ - #ifdef _WIN32 - #ifndef WIN32_LEAN_AND_MEAN - #define WIN32_LEAN_AND_MEAN -@@ -35,32 +38,37 @@ - - namespace kernel_selector { - -+class TuningCache::Impl { -+public: -+ rapidjson::Document cache; -+}; -+ - TuningCache::TuningCache(const std::string& cacheFilePath) -- : cache() { -+ : impl(new Impl()) { - // Read cache file - std::ifstream tuningFile(cacheFilePath); - - if (tuningFile && tuningFile.good()) { - std::stringstream buffer; - buffer << tuningFile.rdbuf(); -- cache.Parse(buffer.str().c_str()); -+ impl->cache.Parse(buffer.str().c_str()); - } else { - throw std::runtime_error("Tuning file: " + cacheFilePath + " could not be read! Must provide a valid cache file in USE_CACHE mode."); - } - -- if (cache.IsNull()) { -- cache.SetObject(); -- } else if (!cache.IsObject()) { -+ if (impl->cache.IsNull()) { -+ impl->cache.SetObject(); -+ } else if (!impl->cache.IsObject()) { - throw std::runtime_error("Tuning file: " + cacheFilePath + " has incorrect format."); - } - -- auto cacheObj = cache.GetObject(); -+ auto cacheObj = impl->cache.GetObject(); - - // Update to new format with version markers - if (!cacheObj.HasMember(version2Marker)) { -- auto newName = rapidjson::Value(version2Marker, cache.GetAllocator()); -+ auto newName = rapidjson::Value(version2Marker, impl->cache.GetAllocator()); - auto newObj = rapidjson::Value(rapidjson::Type::kObjectType); -- cacheObj.AddMember(newName, newObj, cache.GetAllocator()); -+ cacheObj.AddMember(newName, newObj, impl->cache.GetAllocator()); - } - - bool needsV1 = false; -@@ -73,9 +81,9 @@ TuningCache::TuningCache(const std::string& cacheFilePath) - - if (needsV1) { - if (!cacheObj.HasMember(version1Marker)) { -- auto newName = rapidjson::Value(version1Marker, cache.GetAllocator()); -+ auto newName = rapidjson::Value(version1Marker, impl->cache.GetAllocator()); - auto newObj = rapidjson::Value(rapidjson::Type::kObjectType); -- cacheObj.AddMember(newName, newObj, cache.GetAllocator()); -+ cacheObj.AddMember(newName, newObj, impl->cache.GetAllocator()); - } - - for (auto it = cacheObj.begin(); it != cacheObj.end();) { -@@ -86,7 +94,7 @@ TuningCache::TuningCache(const std::string& cacheFilePath) - auto newValue = rapidjson::Value(rapidjson::Type::kObjectType); - newName.Swap(member.name); - newValue.Swap(member.value); -- cache[version1Marker].AddMember(newName, newValue, cache.GetAllocator()); -+ impl->cache[version1Marker].AddMember(newName, newValue, impl->cache.GetAllocator()); - it = cacheObj.EraseMember(it); - } else { - it++; -@@ -96,11 +104,11 @@ TuningCache::TuningCache(const std::string& cacheFilePath) - } - - TuningCache::TuningCache() -- : cache() { -- cache.SetObject(); -- auto v2Name = rapidjson::Value(version2Marker, cache.GetAllocator()); -+ : impl(new Impl()) { -+ impl->cache.SetObject(); -+ auto v2Name = rapidjson::Value(version2Marker, impl->cache.GetAllocator()); - auto v2Obj = rapidjson::Value(rapidjson::Type::kObjectType); -- cache.AddMember(v2Name, v2Obj, cache.GetAllocator()); -+ impl->cache.AddMember(v2Name, v2Obj, impl->cache.GetAllocator()); - } - - TuningCache::Entry TuningCache::LoadKernel(const Params& params) { -@@ -129,8 +137,8 @@ TuningCache::Entry TuningCache::LoadKernel_v1(const Params& params, uint32_t com - auto hashStr = std::to_string(create_hash(params.to_string())); - auto computeUnitsStr = std::to_string(computeUnitsCount); - -- auto v1It = cache.FindMember(version1Marker); -- if (v1It == cache.MemberEnd()) -+ auto v1It = impl->cache.FindMember(version1Marker); -+ if (v1It == impl->cache.MemberEnd()) - return result; - - auto computeUnitsIt = v1It->value.FindMember(computeUnitsStr.c_str()); -@@ -152,8 +160,8 @@ TuningCache::Entry TuningCache::LoadKernel_v2(const Params& params, uint32_t com - auto paramStr = params.to_cache_string_v2(); - auto computeUnitsStr = std::to_string(computeUnitsCount); - -- auto v2It = cache.FindMember(version2Marker); -- if (v2It == cache.MemberEnd()) -+ auto v2It = impl->cache.FindMember(version2Marker); -+ if (v2It == impl->cache.MemberEnd()) - return result; - - auto computeUnitsIt = v2It->value.FindMember(computeUnitsStr.c_str()); -diff --git a/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.h b/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.h -index 1a875b7d4d..8a9da81354 100644 ---- a/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.h -+++ b/src/plugins/intel_gpu/src/kernel_selector/auto_tuner.h -@@ -8,12 +8,12 @@ - #include - #include - #include --#include "kernel_selector_common.h" --#include "kernel_selector_params.h" --#include "document.h" - #include - #include - -+#include "kernel_selector_common.h" -+#include "kernel_selector_params.h" -+ - namespace kernel_selector { - - class TuningCache { -@@ -42,7 +42,8 @@ private: - Entry LoadKernel_v1(const Params& params, uint32_t computeUnitsCount); - Entry LoadKernel_v2(const Params& params, uint32_t computeUnitsCount); - -- rapidjson::Document cache; -+ class Impl; -+ std::shared_ptr impl; - - static constexpr const char* version1Marker = "version_1"; - static constexpr const char* version2Marker = "version_2"; -diff --git a/src/plugins/intel_gpu/src/kernel_selector/jitter.cpp b/src/plugins/intel_gpu/src/kernel_selector/jitter.cpp -index fe6ffe8008..106560f5f1 100644 ---- a/src/plugins/intel_gpu/src/kernel_selector/jitter.cpp -+++ b/src/plugins/intel_gpu/src/kernel_selector/jitter.cpp -@@ -1540,11 +1540,11 @@ JitConstants MakeActivationJitConstants(std::vector(SCHAR_MIN))); -- nl_n = toCodeString(std::min(params[i].n, static_cast(SCHAR_MAX))); -+ nl_m = toCodeString(std::max(params[i].m, std::numeric_limits::min())); -+ nl_n = toCodeString(std::min(params[i].n, std::numeric_limits::max())); - } else if (out_dt == Datatype::UINT8) { - nl_m = toCodeString(std::max(params[i].m, 0.0f)); -- nl_n = toCodeString(std::min(params[i].n, static_cast(UCHAR_MAX))); -+ nl_n = toCodeString(std::min(params[i].n, std::numeric_limits::max())); - } - } - auto jitConstants = JitConstants{MakeJitConstant("NL_M" + activation_suffix, nl_m), -@@ -1949,11 +1949,11 @@ JitConstants FusedOpsCodeGenerator::MakeOpJitConstants(const FusedOpsConfigurati - - if (activation_p.function == ActivationFunction::CLAMP) { - if (out_type == Datatype::INT8) { -- nl_m = toCodeString(std::max(activation_p.m, static_cast(SCHAR_MIN))); -- nl_n = toCodeString(std::min(activation_p.n, static_cast(SCHAR_MAX))); -+ nl_m = toCodeString(std::max(activation_p.m, std::numeric_limits::min())); -+ nl_n = toCodeString(std::min(activation_p.n, std::numeric_limits::max())); - } else if (out_type == Datatype::UINT8) { - nl_m = toCodeString(std::max(activation_p.m, 0.0f)); -- nl_n = toCodeString(std::min(activation_p.n, static_cast(UCHAR_MAX))); -+ nl_n = toCodeString(std::min(activation_p.n, std::numeric_limits::max())); - } - } - -diff --git a/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_params.h b/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_params.h -index 5c71c907b7..76e84e558b 100644 ---- a/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_params.h -+++ b/src/plugins/intel_gpu/src/kernel_selector/kernel_selector_params.h -@@ -10,7 +10,6 @@ - #include - #include "common_types.h" - #include "tensor_type.h" --#include "document.h" - #include - #include - #include -diff --git a/src/plugins/intel_gpu/src/runtime/CMakeLists.txt b/src/plugins/intel_gpu/src/runtime/CMakeLists.txt -index c442f65575..321fc2f1b2 100644 ---- a/src/plugins/intel_gpu/src/runtime/CMakeLists.txt -+++ b/src/plugins/intel_gpu/src/runtime/CMakeLists.txt -@@ -64,4 +64,4 @@ elseif((NOT ANDROID) AND (UNIX)) - target_link_libraries(${TARGET_NAME} PRIVATE pthread) - endif() - --ov_install_static_lib(${TARGET_NAME} gpu) -+ov_install_static_lib(${TARGET_NAME} ${OV_CPACK_COMP_CORE}) -diff --git a/src/plugins/intel_gpu/thirdparty/CMakeLists.txt b/src/plugins/intel_gpu/thirdparty/CMakeLists.txt -index c7c616d0df..b7cc810a75 100644 ---- a/src/plugins/intel_gpu/thirdparty/CMakeLists.txt -+++ b/src/plugins/intel_gpu/thirdparty/CMakeLists.txt -@@ -2,14 +2,6 @@ - # SPDX-License-Identifier: Apache-2.0 - # - --add_library(rapidjson INTERFACE) -- --set_target_properties(rapidjson PROPERTIES -- INTERFACE_INCLUDE_DIRECTORIES $ --) -- --ov_install_static_lib(rapidjson gpu) -- - # - # oneDNN for GPU plugin - # -@@ -17,11 +9,12 @@ ov_install_static_lib(rapidjson gpu) - if(ENABLE_ONEDNN_FOR_GPU) - function(build_onednn_gpu) - include(ExternalProject) -- set(ONEDNN_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/onednn_gpu_build/") -- set(ONEDNN_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/onednn_gpu_install/") -+ set(ONEDNN_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/onednn_gpu_build") -+ set(ONEDNN_INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/onednn_gpu_install" CACHE PATH "Installation path for oneDNN GPU library") - set(ONEDNN_PREFIX_DIR "${CMAKE_CURRENT_BINARY_DIR}/onednn_gpu_root") - set(ONEDNN_ENABLED_PRIMITIVES "CONCAT;CONVOLUTION;DECONVOLUTION;INNER_PRODUCT;MATMUL;REORDER;POOLING;REDUCTION") - set(ONEDNN_ENABLED_ISA "XEHP;XEHPG;XEHPC") -+ set(DNNL_GPU_LIBRARY_NAME "openvino_onednn_gpu" CACHE STRING "Name of oneDNN library for Intel GPU Plugin") - - if(X86_64) - set(ONEDNN_TARGET_ARCH "X64" CACHE STRING "" FORCE) -@@ -87,18 +80,16 @@ if(ENABLE_ONEDNN_FOR_GPU) - list(APPEND cmake_extra_args "-DOpenCL_INCLUDE_DIR=${OpenCL_INCLUDE_DIR}") - endif() - -+ set(onednn_gpu_lib "${CMAKE_STATIC_LIBRARY_PREFIX}${DNNL_GPU_LIBRARY_NAME}${CMAKE_STATIC_LIBRARY_SUFFIX}") -+ set(ONEDNN_GPU_LIB_PATH ${ONEDNN_INSTALL_DIR}/lib/${onednn_gpu_lib} CACHE FILEPATH "Path to oneDNN GPU library") -+ - ExternalProject_Add(onednn_gpu_build -+ # Directory Options: -+ PREFIX "${ONEDNN_PREFIX_DIR}" - SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/onednn_gpu" - BINARY_DIR "${ONEDNN_BUILD_DIR}" - INSTALL_DIR "${ONEDNN_INSTALL_DIR}" -- PREFIX "${ONEDNN_PREFIX_DIR}" -- EXCLUDE_FROM_ALL ON -- CMAKE_CACHE_ARGS -- # The arguments below requires list to be passed as argument -- # which doesn't work properly when passed to CMAKE_ARGS. -- # Thus we pass it via CMAKE_CACHE_ARGS -- "-DDNNL_ENABLE_PRIMITIVE:STRING=${ONEDNN_ENABLED_PRIMITIVES}" -- "-DDNNL_ENABLE_PRIMITIVE_GPU_ISA:STRING=${ONEDNN_ENABLED_ISA}" -+ # Configure Step Options: - CMAKE_ARGS - ${cmake_extra_args} - "-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}" -@@ -112,9 +103,8 @@ if(ENABLE_ONEDNN_FOR_GPU) - "-DDNNL_TARGET_ARCH=${ONEDNN_TARGET_ARCH}" - "-DDNNL_CPU_RUNTIME=NONE" - "-DDNNL_GPU_RUNTIME=OCL" -- "-DDNNL_LIBRARY_NAME=openvino_onednn_gpu" -+ "-DDNNL_LIBRARY_NAME=${DNNL_GPU_LIBRARY_NAME}" - "-DCMAKE_INSTALL_PREFIX=${ONEDNN_INSTALL_DIR}" -- "-DCMAKE_INSTALL_LIBDIR=lib/$" - "-DDNNL_ENABLE_CONCURRENT_EXEC=ON" - "-DDNNL_ENABLE_PRIMITIVE_CACHE=OFF" - "-DDNNL_ENABLE_WORKLOAD=INFERENCE" -@@ -129,16 +119,38 @@ if(ENABLE_ONEDNN_FOR_GPU) - # specifically for Conan, because it overrides CMAKE_PREFIX_PATH and oneDNN's FindOpenCL.cmake is ignored - # Conan's FindOpenCL.cmake module does not set OpenCL_INCLUDE_DIRS, so we need to set it manually - "-DOpenCL_INCLUDE_DIRS=$" -+ # Conan calls cmake with default value for CMP0091, so we have to bypass it to oneDNN build -+ # because we bypass conan_toolchain.cmake via CMAKE_TOOLCHAIN_FILE -+ "-DCMAKE_POLICY_DEFAULT_CMP0091=NEW" -+ CMAKE_CACHE_ARGS -+ # The arguments below requires list to be passed as argument -+ # which doesn't work properly when passed to CMAKE_ARGS. -+ # Thus we pass it via CMAKE_CACHE_ARGS -+ "-DDNNL_ENABLE_PRIMITIVE:STRING=${ONEDNN_ENABLED_PRIMITIVES}" -+ "-DDNNL_ENABLE_PRIMITIVE_GPU_ISA:STRING=${ONEDNN_ENABLED_ISA}" -+ # Build Step Options: -+ BUILD_BYPRODUCTS ${ONEDNN_GPU_LIB_PATH} -+ # Target Options: -+ EXCLUDE_FROM_ALL ON - ) -+ - add_library(onednn_gpu_tgt INTERFACE) - set_target_properties(onednn_gpu_tgt PROPERTIES -- INTERFACE_LINK_DIRECTORIES "${ONEDNN_INSTALL_DIR}/lib/$" -- INTERFACE_LINK_LIBRARIES "openvino_onednn_gpu" -- INTERFACE_INCLUDE_DIRECTORIES "${ONEDNN_INSTALL_DIR}/include" -+ INTERFACE_LINK_LIBRARIES $ -+ INTERFACE_INCLUDE_DIRECTORIES $ - INTERFACE_COMPILE_DEFINITIONS ENABLE_ONEDNN_FOR_GPU - ) - add_dependencies(onednn_gpu_tgt onednn_gpu_build) -- # TODO: install onednn_gpu in static builds -+ -+ if(NOT BUILD_SHARED_LIBS) -+ ov_install_static_lib(onednn_gpu_tgt ${OV_CPACK_COMP_CORE}) -+ -+ # we need to install library explicitly and set_target_properties in OpenVINOConfig.cmake for 'onednn_gpu_tgt' -+ # to point to installation location of this file -+ install(FILES "${ONEDNN_GPU_LIB_PATH}" -+ DESTINATION ${OV_CPACK_ARCHIVEDIR} -+ COMPONENT ${OV_CPACK_COMP_CORE}) -+ endif() - endfunction() - build_onednn_gpu() - endif() -diff --git a/src/plugins/intel_gpu/thirdparty/cmake/rapidjson.cmake b/src/plugins/intel_gpu/thirdparty/cmake/rapidjson.cmake -new file mode 100644 -index 0000000000..655224dbc1 ---- /dev/null -+++ b/src/plugins/intel_gpu/thirdparty/cmake/rapidjson.cmake -@@ -0,0 +1,22 @@ -+# Copyright (C) 2018-2023 Intel Corporation -+# SPDX-License-Identifier: Apache-2.0 -+# -+ -+find_package(RapidJSON QUIET) -+ -+if(NOT TARGET rapidjson) -+ # sometimes RapidJSONConfig.cmake defines only RAPIDJSON_INCLUDE_DIRS -+ add_library(rapidjson INTERFACE) -+ -+ if(RapidJSON_FOUND) -+ if(TARGET RapidJSON) -+ target_link_libraries(rapidjson INTERFACE RapidJSON) -+ elseif(DEFINED RAPIDJSON_INCLUDE_DIRS) -+ target_include_directories(rapidjson INTERFACE $) -+ else() -+ message(FATAL_ERROR "RapidJSON does not define RAPIDJSON_INCLUDE_DIRS nor RapidJSON / rapidjson targets") -+ endif() -+ else() -+ target_include_directories(rapidjson INTERFACE $) -+ endif() -+endif() -diff --git a/src/plugins/template/backend/CMakeLists.txt b/src/plugins/template/backend/CMakeLists.txt -index 7530dd1688..a451fea900 100644 ---- a/src/plugins/template/backend/CMakeLists.txt -+++ b/src/plugins/template/backend/CMakeLists.txt -@@ -52,4 +52,4 @@ openvino_developer_export_targets(COMPONENT core TARGETS interpreter_backend) - - # install - --ov_install_static_lib(interpreter_backend template) -+ov_install_static_lib(interpreter_backend ${OV_CPACK_COMP_CORE}) -diff --git a/src/plugins/template/src/CMakeLists.txt b/src/plugins/template/src/CMakeLists.txt -index 2409bb10e0..f382f90d11 100644 ---- a/src/plugins/template/src/CMakeLists.txt -+++ b/src/plugins/template/src/CMakeLists.txt -@@ -28,7 +28,7 @@ target_include_directories(${TARGET_NAME} PRIVATE - "${CMAKE_CURRENT_SOURCE_DIR}" - "${TEMPLATE_PLUGIN_SOURCE_DIR}/include") - --# link common Inference Engine libraries -+# link common OpenVINO Runtime libraries - target_link_libraries(${TARGET_NAME} PRIVATE - openvino::interpreter_backend - openvino::reference) -@@ -42,4 +42,4 @@ endif() - # [cmake:plugin] - - install(TARGETS ${TARGET_NAME} -- LIBRARY DESTINATION tests COMPONENT tests EXCLUDE_FROM_ALL) -+ LIBRARY DESTINATION tests COMPONENT tests EXCLUDE_FROM_ALL) -diff --git a/thirdparty/ocl/CMakeLists.txt b/thirdparty/ocl/CMakeLists.txt -index f31519467f..0ebe3fd6d1 100644 ---- a/thirdparty/ocl/CMakeLists.txt -+++ b/thirdparty/ocl/CMakeLists.txt -@@ -58,4 +58,4 @@ set(opencl_root_hints "${OpenCL_INCLUDE_DIR}" PARENT_SCOPE) - - # installation - --ov_install_static_lib(OpenCL gpu) -+ov_install_static_lib(OpenCL ${OV_CPACK_COMP_CORE}) diff --git a/recipes/openvino/all/patches/2023.1.0/0004-fixed-gpu-plugin-with-clang.patch b/recipes/openvino/all/patches/2023.1.0/0004-fixed-gpu-plugin-with-clang.patch deleted file mode 100644 index 7659f10e22501b..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0004-fixed-gpu-plugin-with-clang.patch +++ /dev/null @@ -1,2836 +0,0 @@ -diff --git a/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/binary_buffer.hpp b/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/binary_buffer.hpp -index 9386e52400..05972d7a97 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/binary_buffer.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/binary_buffer.hpp -@@ -104,12 +104,10 @@ public: - - #define ASSIGN_TYPE_NAME(cls_name) \ - namespace cldnn { \ -- const std::string cls_name::type_for_serialization = #cls_name; \ - } - - #define BIND_BINARY_BUFFER_WITH_TYPE(cls_name) \ - namespace cldnn { \ -- const std::string cls_name::type_for_serialization = #cls_name; \ - BIND_TO_BUFFER(BinaryOutputBuffer, cls_name) \ - BIND_TO_BUFFER(BinaryInputBuffer, cls_name) \ - } -diff --git a/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/bind.hpp b/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/bind.hpp -index 85ed3fa803..e2a673f0ba 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/bind.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/bind.hpp -@@ -11,9 +11,12 @@ - #include "buffer.hpp" - #include "static_instance.hpp" - --#define DECLARE_OBJECT_TYPE_SERIALIZATION \ -- static const std::string type_for_serialization; \ -- std::string get_type() const override { return type_for_serialization; } -+#define DECLARE_OBJECT_TYPE_SERIALIZATION(cls_name) \ -+ static const std::string& get_type_info_s() { \ -+ static const std::string type_name = #cls_name; \ -+ return type_name; \ -+ } \ -+ const std::string& get_type_info() const override { return get_type_info_s(); } - - #define BIND_TO_BUFFER(buffer, type) \ - template <> \ -@@ -101,7 +104,7 @@ public: - - private: - buffer_binder() { -- saver_storage::instance().set_save_function({T::type_for_serialization, save}); -+ saver_storage::instance().set_save_function({T::get_type_info_s(), save}); - } - - buffer_binder(const buffer_binder&) = delete; -@@ -130,7 +133,7 @@ public: - private: - buffer_binder() { - def::instance().set_load_function( -- {T::type_for_serialization, [](BufferType& buffer, std::unique_ptr>& result_ptr) { -+ {T::get_type_info_s(), [](BufferType& buffer, std::unique_ptr>& result_ptr) { - std::unique_ptr derived_ptr = std::unique_ptr(new T()); - derived_ptr->load(buffer); - result_ptr.reset(derived_ptr.release()); -@@ -153,7 +156,7 @@ public: - private: - buffer_binder() { - dif::instance().set_load_function( -- {T::type_for_serialization, [](BufferType& buffer, std::unique_ptr>& result_ptr, engine& engine) { -+ {T::get_type_info_s(), [](BufferType& buffer, std::unique_ptr>& result_ptr, engine& engine) { - std::unique_ptr derived_ptr = std::unique_ptr(new T(engine)); - derived_ptr->load(buffer); - result_ptr.reset(derived_ptr.release()); -diff --git a/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/polymorphic_serializer.hpp b/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/polymorphic_serializer.hpp -index 023045b9bd..1792f5489c 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/polymorphic_serializer.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/graph/serialization/polymorphic_serializer.hpp -@@ -18,7 +18,7 @@ template - class Serializer, typename std::enable_if, BufferType>::value>::type> { - public: - static void save(BufferType& buffer, const std::unique_ptr& ptr) { -- const auto& type = ptr->get_type(); -+ const auto& type = ptr->get_type_info(); - buffer << type; - const auto save_func = saver_storage::instance().get_save_function(type); - save_func(buffer, ptr.get()); -@@ -51,7 +51,7 @@ template - class Serializer, typename std::enable_if, BufferType>::value>::type> { - public: - static void save(BufferType& buffer, const std::shared_ptr& ptr) { -- const std::string& type = ptr->get_type(); -+ const std::string& type = ptr->get_type_info(); - buffer << type; - if (type.compare("NONE") != 0) { - const auto save_func = saver_storage::instance().get_save_function(type); -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/activation.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/activation.hpp -index 09a3f96a98..771f1b9191 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/activation.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/activation.hpp -@@ -82,8 +82,6 @@ struct activation : public primitive_base { - activation_function(activation_func::none), - additional_params({0.f, 0.f}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs Relu primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/adaptive_pooling.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/adaptive_pooling.hpp -index e54b055312..f80d7b3c62 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/adaptive_pooling.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/adaptive_pooling.hpp -@@ -20,8 +20,6 @@ struct adaptive_pooling : public primitive_base { - mode{adaptive_pooling_mode::average}, - output_size{} {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs AdaptiveAvgPooling primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/arg_max_min.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/arg_max_min.hpp -index 16ca38e746..418f8df90d 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/arg_max_min.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/arg_max_min.hpp -@@ -27,8 +27,6 @@ struct arg_max_min : public primitive_base { - values_first(false), - stable(false) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs arg_max_min primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/assign.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/assign.hpp -index 1c4021a77d..4134614504 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/assign.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/assign.hpp -@@ -17,8 +17,6 @@ struct assign : public primitive_base { - - assign() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs Assign primitive. - /// @param id This primitive id - /// @param inputs Input parameters ids -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/batch_to_space.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/batch_to_space.hpp -index fab49940fb..246853a5f3 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/batch_to_space.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/batch_to_space.hpp -@@ -42,8 +42,6 @@ struct batch_to_space : public primitive_base { - - batch_to_space() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs batch_to_space primitive. - /// @param id This primitive id. - /// @param input Input data primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/binary_convolution.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/binary_convolution.hpp -index 268f78e73a..5ba028bda7 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/binary_convolution.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/binary_convolution.hpp -@@ -16,8 +16,6 @@ struct binary_convolution : public primitive_base { - - binary_convolution() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs binary_convolution primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/border.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/border.hpp -index def9b956ff..81ad97a196 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/border.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/border.hpp -@@ -26,8 +26,6 @@ struct border : public primitive_base { - - border() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief whether the input is const or not - enum PAD_NON_CONST_INPUT { - BEGIN = 0x1, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/broadcast.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/broadcast.hpp -index 3b210c7b94..d3b17919a4 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/broadcast.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/broadcast.hpp -@@ -56,8 +56,6 @@ struct broadcast : public primitive_base { - - broadcast() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs broadcast primitive / layer. - /// - /// @param id An identifier of new primitive. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/bucketize.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/bucketize.hpp -index 11e7f8752e..dd5b8f3d93 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/bucketize.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/bucketize.hpp -@@ -13,8 +13,6 @@ struct bucketize : primitive_base { - - bucketize() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs bucketize primitive. - /// @param id This primitive id. - /// @param inputs Input primitives ids. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/concatenation.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/concatenation.hpp -index 184dbf9ceb..5f187c7422 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/concatenation.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/concatenation.hpp -@@ -35,8 +35,6 @@ struct concatenation : public primitive_base { - - concatenation() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @li Constructs concatenation primitive. - /// @param id This primitive id. - /// @param input Vector of input primitives ids. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/convert_color.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/convert_color.hpp -index f1cd6e1934..f71e73310a 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/convert_color.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/convert_color.hpp -@@ -14,8 +14,6 @@ struct convert_color : public primitive_base { - - convert_color() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - enum color_format : uint32_t { - RGB, ///< RGB color format - BGR, ///< BGR color format, default in OpenVINO -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/convolution.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/convolution.hpp -index 01291816b1..0a15e6a146 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/convolution.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/convolution.hpp -@@ -15,8 +15,6 @@ struct convolution : public primitive_base { - - convolution() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs convolution primitive - /// @param id This primitive id. - /// @param input Input primitive id. -@@ -313,8 +311,6 @@ struct deformable_interp : public primitive_base { - - deformable_interp() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - deformable_interp(const primitive_id& id, - const std::vector& inputs, - uint32_t groups, -@@ -430,8 +426,6 @@ struct deformable_conv : public primitive_base { - - deformable_conv() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - deformable_conv(const primitive_id& id, - const input_info& input, - const std::vector& weights, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/crop.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/crop.hpp -index 5c944b75d1..b8935695b2 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/crop.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/crop.hpp -@@ -46,8 +46,6 @@ struct crop : public primitive_base { - - crop() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs crop primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_greedy_decoder.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_greedy_decoder.hpp -index 9c911243d5..2cf19ca58c 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_greedy_decoder.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_greedy_decoder.hpp -@@ -13,8 +13,6 @@ struct ctc_greedy_decoder : public primitive_base { - - ctc_greedy_decoder() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs ctc_greedy_decoder primitive. - /// @param id This primitive id. - /// @param input Input primitive id (input, sequence_indicators, second_output(optional)). -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_loss.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_loss.hpp -index 0d63027cf7..55cc934195 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_loss.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/ctc_loss.hpp -@@ -15,8 +15,6 @@ struct ctc_loss : primitive_base { - - ctc_loss() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs ctc_loss primitive. - /// @param id This primitive id. - /// @param inputs Input primitives ids. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/cum_sum.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/cum_sum.hpp -index 4a038714d7..11bd653d4c 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/cum_sum.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/cum_sum.hpp -@@ -6,15 +6,11 @@ - #include "primitive.hpp" - - namespace cldnn { -- -- - struct cum_sum : public primitive_base { - CLDNN_DECLARE_PRIMITIVE(cum_sum) - - cum_sum() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs cum_sum primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/custom_gpu_primitive.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/custom_gpu_primitive.hpp -index a938e2c0ff..62dafc4ce4 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/custom_gpu_primitive.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/custom_gpu_primitive.hpp -@@ -18,8 +18,6 @@ struct custom_gpu_primitive : public primitive_base { - - custom_gpu_primitive() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Custom primitive kernel argument type - enum arg_type { - arg_input, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/data.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/data.hpp -index 8a89005102..177fbf99b7 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/data.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/data.hpp -@@ -17,8 +17,6 @@ struct data : public primitive_base { - - data() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs data primitive. - /// @param id This primitive id. - /// @param mem @ref memory object which contains data. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/deconvolution.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/deconvolution.hpp -index b149539bb6..5c507a2360 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/deconvolution.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/deconvolution.hpp -@@ -20,8 +20,6 @@ struct deconvolution : public primitive_base { - - deconvolution() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs deconvolution primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/depth_to_space.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/depth_to_space.hpp -index 6d1c430d91..577be63765 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/depth_to_space.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/depth_to_space.hpp -@@ -22,8 +22,6 @@ struct depth_to_space : public primitive_base { - - depth_to_space() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs depth_to_space primitive. - /// @param id This primitive id. - /// @param input Input dictionary primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/detection_output.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/detection_output.hpp -index 7437106428..3c39a83963 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/detection_output.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/detection_output.hpp -@@ -42,8 +42,6 @@ struct detection_output : public primitive_base { - clip_after_nms(false), - objectness_score(0.0f) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs detection output primitive. - /// @param id This primitive id. - /// @param inputs Inputs for primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/dft.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/dft.hpp -index 45042ad94b..329794e088 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/dft.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/dft.hpp -@@ -29,8 +29,6 @@ struct dft : public primitive_base { - - dft() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs DFT primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/eltwise.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/eltwise.hpp -index de1e4138c3..b4b9e8932d 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/eltwise.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/eltwise.hpp -@@ -71,8 +71,6 @@ struct eltwise : public primitive_base { - - eltwise() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs eltwise primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/embedding_bag.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/embedding_bag.hpp -index c749c3b5e2..29b3259b50 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/embedding_bag.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/embedding_bag.hpp -@@ -14,8 +14,6 @@ struct embedding_bag : public primitive_base { - - embedding_bag() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Select type of embedding_bag operation - enum embedding_bag_type { - packed_sum, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_detection_output.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_detection_output.hpp -index cb47ec86f5..f87b161e48 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_detection_output.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_detection_output.hpp -@@ -16,8 +16,6 @@ struct experimental_detectron_detection_output : public primitive_base { -@@ -17,8 +15,6 @@ struct experimental_detectron_prior_grid_generator - - experimental_detectron_prior_grid_generator() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - experimental_detectron_prior_grid_generator(const primitive_id& id, - const std::vector& inputs, - bool flatten, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_roi_feature_extractor.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_roi_feature_extractor.hpp -index a9b27fd16f..3a1e229171 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_roi_feature_extractor.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/experimental_detectron_roi_feature_extractor.hpp -@@ -14,8 +14,6 @@ struct experimental_detectron_roi_feature_extractor : public primitive_base { -@@ -19,8 +17,6 @@ struct experimental_detectron_topk_rois : public primitive_base { - - extract_image_patches() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs select primitive. - /// @param id This primitive id. - /// @param input Input primitive id containing input 4-D tensor. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/eye.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/eye.hpp -index 4137aaa2ec..9cc2c9e083 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/eye.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/eye.hpp -@@ -14,8 +14,6 @@ struct eye : public primitive_base { - - eye() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs eye primitive. - /// @param id This primitive id. - /// @param inputs List of primitive ids. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/fully_connected.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/fully_connected.hpp -index d71afd76f1..ba05829539 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/fully_connected.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/fully_connected.hpp -@@ -35,8 +35,6 @@ struct fully_connected : public primitive_base { - - fully_connected() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs fully connected layer. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather.hpp -index f754d47667..2a7dad7fe4 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather.hpp -@@ -16,8 +16,6 @@ struct gather : public primitive_base { - - gather() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs gather primitive. - /// @param id This primitive id. - /// @param dict Input dictionary primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_elements.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_elements.hpp -index 0287a76877..455a40a9ea 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_elements.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_elements.hpp -@@ -14,8 +14,6 @@ struct gather_elements : public primitive_base { - - gather_elements() : primitive_base("", {}), output_format({}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs gather_elements primitive. - /// @param id This primitive id. - /// @param data Input data primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_nd.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_nd.hpp -index 932fe0b167..a2c26b0545 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_nd.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_nd.hpp -@@ -14,8 +14,6 @@ struct gather_nd : public primitive_base { - - gather_nd() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs gather_nd primitive. - /// - /// @param id This primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_tree.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_tree.hpp -index 5ec3339801..082b4113ab 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_tree.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/gather_tree.hpp -@@ -15,8 +15,6 @@ struct gather_tree : public primitive_base { - - gather_tree() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs gather tree primitive / layer. - /// - /// @param id An identifier of new primitive. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/gemm.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/gemm.hpp -index 104b92571c..cef11bbb0b 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/gemm.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/gemm.hpp -@@ -27,8 +27,6 @@ struct gemm : public primitive_base { - - gemm() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs gemm layer. - /// @brief Primitive id containing first matrix - /// @brief Primitive id containing second matrix -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/generate_proposals.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/generate_proposals.hpp -index ab57e07d0d..3524c104fd 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/generate_proposals.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/generate_proposals.hpp -@@ -15,8 +15,6 @@ struct generate_proposals - - generate_proposals() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs generate_proposals primitive - /// @param id This primitive id - /// @param input_im_info image size info -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/grid_sample.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/grid_sample.hpp -index 700140c9d2..20e308e4aa 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/grid_sample.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/grid_sample.hpp -@@ -10,8 +10,6 @@ - #include "primitive.hpp" - - namespace cldnn { -- -- - using GridSampleOp = ov::op::v9::GridSample; - - /// @brief GridSample-9 primitive. -@@ -20,8 +18,6 @@ struct grid_sample : primitive_base { - - grid_sample() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs grid_sample primitive. - /// @param id This primitive id. - /// @param inputs Input primitives ids. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/grn.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/grn.hpp -index cda1ebe160..3b629bad91 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/grn.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/grn.hpp -@@ -13,8 +13,6 @@ struct grn : public primitive_base { - - grn() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs grn primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/input_layout.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/input_layout.hpp -index c13e89a3a5..5cbba06ca4 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/input_layout.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/input_layout.hpp -@@ -20,8 +20,6 @@ struct input_layout : public primitive_base { - - input_layout() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs input layout primitive. - /// @param id This primitive id. - /// @param layout Defines layout for the data will be passed to network. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/loop.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/loop.hpp -index 49af132862..c27a88e197 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/loop.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/loop.hpp -@@ -55,8 +55,6 @@ struct loop : public primitive_base { - loop() : primitive_base("", {}), - max_iteration(0) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - struct io_primitive_map { - /// @brief Constructs a mapping from external input/output primitive to input/output primitive in body topology - /// -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/lrn.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/lrn.hpp -index 28bcf69147..f8cc1672e7 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/lrn.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/lrn.hpp -@@ -6,8 +6,6 @@ - #include "primitive.hpp" - - namespace cldnn { -- -- - typedef enum { /*:int32_t*/ - lrn_norm_region_across_channel, - lrn_norm_region_within_channel -@@ -29,8 +27,6 @@ struct lrn : public primitive_base { - - lrn() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs LRN primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm.hpp -index 7c601158d8..71922acd21 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm.hpp -@@ -53,8 +53,6 @@ struct lstm : public primitive_base { - - lstm() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs lstm layer. - /// @param id This primitive id. - /// @param input Vector of primitive id. -@@ -230,8 +228,6 @@ struct lstm_gemm : public primitive_base { - lstm_gemm() : primitive_base("", {}), - direction(0) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs lstm layer. - /// @param id This primitive id. - /// @param input input primitive id. -@@ -319,8 +315,6 @@ struct lstm_elt : public primitive_base { - - lstm_elt() : primitive_base("", {}), clip(0), input_forget(0), offset_order(lstm_weights_order::iofz), direction(0) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - using vec_activation = std::vector; - using vec_activation_param = std::vector; - -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic.hpp -index fd7e7c4a26..d459754ebc 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic.hpp -@@ -22,8 +22,6 @@ struct lstm_dynamic : public primitive_base { - - lstm_dynamic() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs lstm_dynamic layer. - /// @param id This primitive id. - /// @param input Primitive id of input layer. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_input.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_input.hpp -index bf0ddb2d43..6a8e90d9a4 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_input.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_input.hpp -@@ -22,8 +22,6 @@ struct lstm_dynamic_input : public primitive_base { - - lstm_dynamic_input() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs lstm_dynamic layer. - /// @param id This primitive id. - /// @param input Primitive id of input layer. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_timeloop.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_timeloop.hpp -index e5b5ea7661..ef184707f9 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_timeloop.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/lstm_dynamic_timeloop.hpp -@@ -23,8 +23,6 @@ struct lstm_dynamic_timeloop - - lstm_dynamic_timeloop() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs lstm_dynamic layer. - /// @param id This primitive id. - /// @param input Primitive id of input layer. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/matrix_nms.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/matrix_nms.hpp -index 72c95cae70..d4efea1d59 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/matrix_nms.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/matrix_nms.hpp -@@ -16,8 +16,6 @@ struct matrix_nms : public primitive_base { - - matrix_nms() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - enum decay_function { gaussian, linear }; - - enum sort_result_type { -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/multiclass_nms.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/multiclass_nms.hpp -index 5218488f1b..92ea0d371b 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/multiclass_nms.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/multiclass_nms.hpp -@@ -18,8 +18,6 @@ struct multiclass_nms : public primitive_base { - - multiclass_nms() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - enum class sort_result_type : int32_t { - classid, // sort selected boxes by class id (ascending) in each batch element - score, // sort selected boxes by score (descending) in each batch element -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/mutable_data.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/mutable_data.hpp -index 54c46bf785..105711b58d 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/mutable_data.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/mutable_data.hpp -@@ -18,8 +18,6 @@ struct mutable_data : public primitive_base { - - mutable_data() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Enum type to specify function for data filling. - enum filler_type { no_fill, zero, one, xavier }; - -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/mvn.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/mvn.hpp -index 72daa005b6..72e5cd67d9 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/mvn.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/mvn.hpp -@@ -14,8 +14,6 @@ struct mvn : public primitive_base { - - mvn() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs mvn primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/non_max_suppression.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/non_max_suppression.hpp -index b7aafffb55..b9614cd472 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/non_max_suppression.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/non_max_suppression.hpp -@@ -22,8 +22,6 @@ struct non_max_suppression : public primitive_base { - center_point_box(false), - sort_result_descending(false) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Creates non max suppression primitive. - /// @param id This primitive id. - /// @param boxes_positions Id of primitive with bounding boxes. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/non_zero.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/non_zero.hpp -index d243058bad..0fa4b35ff7 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/non_zero.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/non_zero.hpp -@@ -13,8 +13,6 @@ struct count_nonzero : public primitive_base { - - count_nonzero() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs count_nonzero primitive. - /// @param id This primitive id. - /// @param data Input data primitive id. -@@ -33,8 +31,6 @@ struct gather_nonzero : public primitive_base { - - gather_nonzero() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs gather_nonzero primitive. - /// @param id This primitive id. - /// @param data Input data primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/normalize.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/normalize.hpp -index b17c659d76..0f25272bce 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/normalize.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/normalize.hpp -@@ -29,8 +29,6 @@ struct normalize : public primitive_base { - - normalize() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs normalize primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/one_hot.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/one_hot.hpp -index 3a2958a0fb..b94e069fc2 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/one_hot.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/one_hot.hpp -@@ -35,8 +35,6 @@ struct one_hot : public primitive_base { - - one_hot() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs one-hot primitive layer. - /// @param id An identifier of new primitive. - /// @param input An identifier of primitive which is an input for newly created one-hot primitive. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/permute.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/permute.hpp -index 587427e6a8..91bc12df87 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/permute.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/permute.hpp -@@ -21,8 +21,6 @@ struct permute : public primitive_base { - - permute() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs permute primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/pooling.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/pooling.hpp -index 0db15d2278..df49ba46a9 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/pooling.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/pooling.hpp -@@ -34,8 +34,6 @@ struct pooling : public primitive_base { - - pooling() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs pooling primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/primitive.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/primitive.hpp -index f68aa5f6c3..0bbf589b0d 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/primitive.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/primitive.hpp -@@ -203,7 +203,7 @@ public: - - size_t num_outputs; - -- virtual std::string get_type() const { return "NONE"; } -+ virtual const std::string& get_type_info() const = 0; - virtual void save(BinaryOutputBuffer& ob) const { - ob << type_string(); - ob << id; -@@ -313,6 +313,7 @@ struct primitive_info { - } - - #define CLDNN_DECLARE_PRIMITIVE(PType) \ -+ DECLARE_OBJECT_TYPE_SERIALIZATION(PType) \ - CLDNN_DEFINE_TYPE_ID(PType) \ - CLDNN_DEFINE_TYPE_STRING(PType) - -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/prior_box.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/prior_box.hpp -index 959e6b14f0..3f78605f49 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/prior_box.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/prior_box.hpp -@@ -23,8 +23,6 @@ struct prior_box : public primitive_base { - - prior_box() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - using PriorBoxV0Op = ov::op::v0::PriorBox; - using PriorBoxV8Op = ov::op::v8::PriorBox; - using PriorBoxClusteredOp = ov::op::v0::PriorBoxClustered; -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/proposal.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/proposal.hpp -index 1278d4ff6f..a1e6768276 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/proposal.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/proposal.hpp -@@ -10,8 +10,6 @@ - #include "intel_gpu/graph/serialization/vector_serializer.hpp" - - namespace cldnn { -- -- - #define CLDNN_ROI_VECTOR_SIZE 5 - - struct proposal : public primitive_base { -@@ -37,8 +35,6 @@ struct proposal : public primitive_base { - shift_anchors(false), - normalize(false) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - proposal(const primitive_id& id, - const input_info& cls_scores, - const input_info& bbox_pred, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/pyramid_roi_align.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/pyramid_roi_align.hpp -index 6d9842227a..123faf83f2 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/pyramid_roi_align.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/pyramid_roi_align.hpp -@@ -26,8 +26,6 @@ struct pyramid_roi_align : public primitive_base { - - pyramid_roi_align() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @param id This primitive id. - /// @param rois Input RoI boxes as tuple [x1, y1, x2, y2] describing two opposite corners of the region. - /// @param P2 First level of the image pyramid. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/quantize.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/quantize.hpp -index bb5de80742..a2bb5ae3cf 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/quantize.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/quantize.hpp -@@ -38,8 +38,6 @@ struct quantize : public primitive_base { - - quantize() : primitive_base("", {}), levels(0) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief levels The number of quantization levels. - int levels; - -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/random_uniform.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/random_uniform.hpp -index 02c86cb80d..598d8171b5 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/random_uniform.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/random_uniform.hpp -@@ -10,8 +10,6 @@ - - namespace cldnn { - -- -- - /// @brief RandomUniform-8 primitive - /// @details - struct random_uniform : public primitive_base { -@@ -22,8 +20,6 @@ struct random_uniform : public primitive_base { - op_seed(0), - output_shape{} {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /** - * Construct Random Uniform privitive. - * @param id primitive id -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/range.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/range.hpp -index 005d74a6c8..3d68fd2815 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/range.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/range.hpp -@@ -12,8 +12,6 @@ struct range: public primitive_base { - - range() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs range primitive. - /// @param id This primitive id. - /// @param inputs Input primitive id vector. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/read_value.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/read_value.hpp -index 9523b416cd..095c845d07 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/read_value.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/read_value.hpp -@@ -17,8 +17,6 @@ struct read_value : public primitive_base { - - read_value() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs ReadValue primitive. - /// @param id This primitive id - /// @param inputs Input parameters ids -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/reduce.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/reduce.hpp -index 7af0ad1dd9..c1f687e48a 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/reduce.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/reduce.hpp -@@ -44,8 +44,6 @@ struct reduce : public primitive_base { - - reduce() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs reduce primitive - /// @param id This primitive id - /// @param input Input primitive id -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/region_yolo.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/region_yolo.hpp -index 7efddc3fb4..d9040d1dc2 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/region_yolo.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/region_yolo.hpp -@@ -16,8 +16,6 @@ struct region_yolo : public primitive_base { - - region_yolo() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs region_yolo primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/reorder.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/reorder.hpp -index 1c59eebe65..7b2ada5d77 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/reorder.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/reorder.hpp -@@ -69,8 +69,6 @@ struct reorder : public primitive_base { - output_format(format::any), - mean_mode(reorder_mean_mode::subtract) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief reorder memory types - enum class memory_type { - buffer, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/reorg_yolo.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/reorg_yolo.hpp -index b5d76e9353..96eff0012e 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/reorg_yolo.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/reorg_yolo.hpp -@@ -16,8 +16,6 @@ struct reorg_yolo : public primitive_base { - - reorg_yolo() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs region_yolo primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/resample.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/resample.hpp -index b95ce3c5e0..59f58c986b 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/resample.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/resample.hpp -@@ -17,8 +17,6 @@ struct resample : public primitive_base { - - resample() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - using InterpolateOp = ov::op::util::InterpolateBase; - - /// @brief Constructs Resample primitive. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/reshape.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/reshape.hpp -index 0f9869a2f7..00e8d9a093 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/reshape.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/reshape.hpp -@@ -17,8 +17,6 @@ struct reshape : public primitive_base { - - reshape() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - enum reshape_mode : uint32_t { - base, - squeeze, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse.hpp -index 0ecb598550..70864a9f1e 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse.hpp -@@ -15,8 +15,6 @@ struct reverse : public primitive_base { - - reverse() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs reverse primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse_sequence.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse_sequence.hpp -index 8058bd3a45..714e0f4a49 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse_sequence.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/reverse_sequence.hpp -@@ -15,8 +15,6 @@ struct reverse_sequence : public primitive_base { - - reverse_sequence() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs reverse_sequence primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_align.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_align.hpp -index 14b031d87f..0813c960f0 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_align.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_align.hpp -@@ -15,8 +15,6 @@ struct roi_align : public primitive_base { - - roi_align() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Pooling mode for the @ref roi_align - enum PoolingMode { max, avg }; - -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_pooling.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_pooling.hpp -index ef7fc25664..2dd22e52d3 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_pooling.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/roi_pooling.hpp -@@ -8,8 +8,6 @@ - #include - - namespace cldnn { -- -- - struct roi_pooling : public primitive_base { - CLDNN_DECLARE_PRIMITIVE(roi_pooling) - -@@ -27,8 +25,6 @@ struct roi_pooling : public primitive_base { - spatial_bins_x(1), - spatial_bins_y(1) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - roi_pooling(const primitive_id& id, - const input_info& input_data, - const input_info& input_rois, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/roll.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/roll.hpp -index 3ae8fc634e..3db154bf47 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/roll.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/roll.hpp -@@ -15,8 +15,6 @@ struct roll : primitive_base { - - roll() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs roll primitive. - /// @param id This primitive id. - /// @param input Input primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_elements_update.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_elements_update.hpp -index fa2cd6e07b..4b823a165c 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_elements_update.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_elements_update.hpp -@@ -14,8 +14,6 @@ struct scatter_elements_update : public primitive_base - - scatter_elements_update() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs scatter_elements_update primitive. - /// @param id This primitive id. - /// @param dict Input data primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_nd_update.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_nd_update.hpp -index f21691c3c7..1cc8746e9e 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_nd_update.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_nd_update.hpp -@@ -14,8 +14,6 @@ struct scatter_nd_update : public primitive_base { - - scatter_nd_update() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - /// @brief Constructs scatter_nd_update primitive. - /// @param id This primitive id. - /// @param dict Input data primitive id. -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_update.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_update.hpp -index 9563fe079e..17c09a8d8e 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_update.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/scatter_update.hpp -@@ -14,8 +14,6 @@ struct scatter_update : public primitive_base { - - scatter_update() : primitive_base("", {}) {} - -- DECLARE_OBJECT_TYPE_SERIALIZATION -- - enum scatter_update_axis { - along_b, - along_f, -diff --git a/src/plugins/intel_gpu/include/intel_gpu/primitives/select.hpp b/src/plugins/intel_gpu/include/intel_gpu/primitives/select.hpp -index 310c5ff2cb..0959fa2709 100644 ---- a/src/plugins/intel_gpu/include/intel_gpu/primitives/select.hpp -+++ b/src/plugins/intel_gpu/include/intel_gpu/primitives/select.hpp -@@ -22,8 +22,6 @@ struct select : public primitive_base { - using kernel_selector_t = kernel_selector::select_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::select_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/shape_of.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/shape_of.cpp -index 02efeee00f..b2efd25f67 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/shape_of.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/shape_of.cpp -@@ -17,7 +17,7 @@ struct shape_of_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::shape_of_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::shape_of_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/shuffle_channels.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/shuffle_channels.cpp -index 57ac2437f4..e40b1b99b8 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/shuffle_channels.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/shuffle_channels.cpp -@@ -17,7 +17,7 @@ struct shuffle_channels_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::shuffle_channels_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::shuffle_channels_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/slice.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/slice.cpp -index 07ea912d06..d7f7f9ba74 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/slice.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/slice.cpp -@@ -72,7 +72,7 @@ struct slice_impl : typed_primitive_impl_ocl { - kInputsNum - }; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::slice_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/softmax.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/softmax.cpp -index b4029ac3b3..6ad4e1d087 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/softmax.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/softmax.cpp -@@ -39,7 +39,7 @@ struct softmax_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::softmax_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::softmax_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_batch.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_batch.cpp -index 141116e04b..c9db851175 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_batch.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_batch.cpp -@@ -16,7 +16,7 @@ struct space_to_batch_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::space_to_batch_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::space_to_batch_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_depth.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_depth.cpp -index ec87100f89..5b72a5572c 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_depth.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/space_to_depth.cpp -@@ -16,7 +16,7 @@ struct space_to_depth_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::space_to_depth_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::space_to_depth_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/strided_slice.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/strided_slice.cpp -index f06ae1b72d..e64498f73f 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/strided_slice.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/strided_slice.cpp -@@ -46,7 +46,7 @@ struct strided_slice_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::strided_slice_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::strided_slice_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/tile.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/tile.cpp -index 16d2dd91cb..bc95a18f54 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/tile.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/tile.cpp -@@ -17,7 +17,7 @@ struct tile_impl : typed_primitive_impl_ocl { - using kernel_selector_t = kernel_selector::tile_kernel_selector; - using kernel_params_t = std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::tile_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/ocl/unique.cpp b/src/plugins/intel_gpu/src/graph/impls/ocl/unique.cpp -index 7018ae66a2..604619c30b 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/ocl/unique.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/ocl/unique.cpp -@@ -17,7 +17,7 @@ struct unique_count_impl : typed_primitive_impl_ocl { - using kernel_params_t = - std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::unique_count_impl) - - std::unique_ptr clone() const override { - return make_unique(*this); -@@ -88,7 +88,7 @@ struct unique_gather_impl : typed_primitive_impl_ocl { - using kernel_params_t = - std::pair; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::ocl::unique_gather) - - std::unique_ptr clone() const override { - return make_unique(*this); -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/concatenation_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/concatenation_onednn.cpp -index ed5565504f..325afd5f3c 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/concatenation_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/concatenation_onednn.cpp -@@ -21,7 +21,7 @@ struct concatenation_onednn : typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::concatenation_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/convolution_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/convolution_onednn.cpp -index 1a27f3ae29..f1d1ab0a6c 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/convolution_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/convolution_onednn.cpp -@@ -26,7 +26,7 @@ struct convolution_onednn : typed_primitive_onednn_impl { - using parent = typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::convolution_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/deconvolution_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/deconvolution_onednn.cpp -index 439b74feff..1702738598 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/deconvolution_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/deconvolution_onednn.cpp -@@ -22,7 +22,7 @@ struct deconvolution_onednn : typed_primitive_onednn_impl { - using parent = typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::deconvolution_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/fully_connected_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/fully_connected_onednn.cpp -index 4aacb2ebd5..8ee6979dec 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/fully_connected_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/fully_connected_onednn.cpp -@@ -19,7 +19,7 @@ struct fully_connected_onednn : typed_primitive_onednn_impl { - using parent = typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::fully_connected_onednn) - - private: - static std::vector reshape_to_2d(const ov::PartialShape& shape, int64_t feature) { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/gemm_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/gemm_onednn.cpp -index 7410f79961..87e7decb34 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/gemm_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/gemm_onednn.cpp -@@ -19,7 +19,7 @@ struct gemm_onednn : typed_primitive_onednn_impl { - using parent = typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::gemm_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/pooling_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/pooling_onednn.cpp -index 52f0edc797..1dc686331b 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/pooling_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/pooling_onednn.cpp -@@ -19,7 +19,7 @@ struct pooling_onednn : typed_primitive_onednn_impl { - using parent = typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::pooling_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/reduction_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/reduction_onednn.cpp -index 581c37c015..635d465fc5 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/reduction_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/reduction_onednn.cpp -@@ -41,7 +41,7 @@ struct reduction_onednn : typed_primitive_onednn_impl { - using parent = typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::reduction_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/impls/onednn/reorder_onednn.cpp b/src/plugins/intel_gpu/src/graph/impls/onednn/reorder_onednn.cpp -index 284dd8b166..433e043067 100644 ---- a/src/plugins/intel_gpu/src/graph/impls/onednn/reorder_onednn.cpp -+++ b/src/plugins/intel_gpu/src/graph/impls/onednn/reorder_onednn.cpp -@@ -19,7 +19,7 @@ struct reorder_onednn : typed_primitive_onednn_impl; - using parent::parent; - -- DECLARE_OBJECT_TYPE_SERIALIZATION -+ DECLARE_OBJECT_TYPE_SERIALIZATION(cldnn::onednn::reorder_onednn) - - protected: - std::unique_ptr clone() const override { -diff --git a/src/plugins/intel_gpu/src/graph/include/primitive_inst.h b/src/plugins/intel_gpu/src/graph/include/primitive_inst.h -index 3244ad20b4..454c92ac97 100644 ---- a/src/plugins/intel_gpu/src/graph/include/primitive_inst.h -+++ b/src/plugins/intel_gpu/src/graph/include/primitive_inst.h -@@ -54,7 +54,7 @@ struct primitive_impl { - - virtual std::vector get_internal_buffer_layouts() const = 0; - virtual void set_node_params(const program_node&) {} -- virtual std::string get_type() const = 0; -+ virtual const std::string& get_type_info() const = 0; - virtual void set_arguments(primitive_inst& instance) = 0; - virtual void set_arguments(primitive_inst& instance, kernel_arguments_data& args) = 0; - virtual kernel_arguments_data get_arguments(const primitive_inst& instance) const = 0; diff --git a/recipes/openvino/all/patches/2023.1.0/0005-dynamic-protobuf.patch b/recipes/openvino/all/patches/2023.1.0/0005-dynamic-protobuf.patch deleted file mode 100644 index 50b087b4268b4a..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0005-dynamic-protobuf.patch +++ /dev/null @@ -1,218 +0,0 @@ -diff --git a/cmake/developer_package/frontends/frontends.cmake b/cmake/developer_package/frontends/frontends.cmake -index df3586474b..8e50b25ea3 100644 ---- a/cmake/developer_package/frontends/frontends.cmake -+++ b/cmake/developer_package/frontends/frontends.cmake -@@ -130,6 +130,10 @@ macro(ov_add_frontend) - foreach(INFILE IN LISTS proto_files) - get_filename_component(FILE_DIR ${INFILE} DIRECTORY) - get_filename_component(FILE_WE ${INFILE} NAME_WE) -+ if(FILE_WE MATCHES "^(any|wrappers)$") -+ # we need to skip standard protobuf files -+ continue() -+ endif() - set(OUTPUT_PB_SRC ${CMAKE_CURRENT_BINARY_DIR}/${FILE_WE}.pb.cc) - set(OUTPUT_PB_HEADER ${CMAKE_CURRENT_BINARY_DIR}/${FILE_WE}.pb.h) - set(GENERATED_PROTO ${INFILE}) -diff --git a/src/frontends/common/src/manager.cpp b/src/frontends/common/src/manager.cpp -index 2fa59398b1..6194fca758 100644 ---- a/src/frontends/common/src/manager.cpp -+++ b/src/frontends/common/src/manager.cpp -@@ -20,11 +20,6 @@ class FrontEndManager::Impl { - std::mutex m_loading_mutex; - std::vector m_plugins; - -- /// \brief map of shared object per frontend -- static std::unordered_map> m_shared_objects_map; -- /// \brief Mutex to guard access the shared object map -- static std::mutex m_shared_objects_map_mutex; -- - public: - Impl() { - search_all_plugins(); -@@ -36,10 +31,6 @@ public: - auto fe_obj = std::make_shared(); - fe_obj->m_shared_object = std::make_shared(plugin.get_so_pointer()); - fe_obj->m_actual = plugin.get_creator().m_creator(); -- -- std::lock_guard guard(m_shared_objects_map_mutex); -- m_shared_objects_map.emplace(plugin.get_creator().m_name, fe_obj->m_shared_object); -- - return fe_obj; - } - -@@ -49,6 +40,7 @@ public: - {"ir", "ir"}, - {"onnx", "onnx"}, - {"tf", "tensorflow"}, -+ {"tflite", "tensorflow_lite"}, - {"paddle", "paddle"}, - {"pytorch", "pytorch"}, - }; -@@ -127,8 +119,8 @@ public: - } - - static void shutdown() { -- std::lock_guard guard(m_shared_objects_map_mutex); -- m_shared_objects_map.clear(); -+ std::lock_guard guard(get_shared_objects_mutex()); -+ get_shared_objects_map().clear(); - } - - private: -@@ -153,6 +145,7 @@ private: - {".xml", {"ir", "ir"}}, - {".onnx", {"onnx", "onnx"}}, - {".pb", {"tf", "tensorflow"}}, -+ {".pbtxt", {"tf", "tensorflow"}}, - {".tflite", {"tflite", "tensorflow_lite"}}, - {".pdmodel", {"paddle", "paddle"}}, - // {".ts", {"pytorch", "pytorch"}}, -@@ -223,9 +216,6 @@ private: - } - }; - --std::unordered_map> FrontEndManager::Impl::m_shared_objects_map{}; --std::mutex FrontEndManager::Impl::m_shared_objects_map_mutex{}; -- - FrontEndManager::FrontEndManager() : m_impl(new Impl()) {} - - FrontEndManager::FrontEndManager(FrontEndManager&&) noexcept = default; -diff --git a/src/frontends/common/src/plugin_loader.cpp b/src/frontends/common/src/plugin_loader.cpp -index a044152d8d..a98eff766b 100644 ---- a/src/frontends/common/src/plugin_loader.cpp -+++ b/src/frontends/common/src/plugin_loader.cpp -@@ -16,17 +16,32 @@ - - #include - --#include - #include - #include - - #include "openvino/util/file_util.hpp" -+#include "openvino/util/log.hpp" - #include "openvino/util/shared_object.hpp" - #include "plugin_loader.hpp" - - using namespace ov; - using namespace ov::frontend; - -+// Note, static methods below are required to create an order of initialization of static variables -+// e.g. if users (not encouraged) created ov::Model globally, we need to ensure proper order of initialization -+ -+/// \return map of shared object per frontend -+std::unordered_map>& ov::frontend::get_shared_objects_map() { -+ static std::unordered_map> shared_objects_map; -+ return shared_objects_map; -+} -+ -+/// \return Mutex to guard access the shared object map -+std::mutex& ov::frontend::get_shared_objects_mutex() { -+ static std::mutex shared_objects_map_mutex; -+ return shared_objects_map_mutex; -+} -+ - #ifdef OPENVINO_STATIC_LIBRARY - - # include "ov_frontends.hpp" -@@ -131,6 +146,10 @@ bool PluginInfo::load() { - m_load_failed = true; - return false; - } -+ -+ std::lock_guard guard(get_shared_objects_mutex()); -+ get_shared_objects_map().emplace(get_creator().m_name, get_so_pointer()); -+ - return true; - } - -diff --git a/src/frontends/common/src/plugin_loader.hpp b/src/frontends/common/src/plugin_loader.hpp -index 93e6a5cc2e..dccf8ddf7a 100644 ---- a/src/frontends/common/src/plugin_loader.hpp -+++ b/src/frontends/common/src/plugin_loader.hpp -@@ -4,7 +4,12 @@ - - #pragma once - --#include -+#include -+#include -+#include -+#include -+ -+#include "openvino/frontend/manager.hpp" - - #ifdef _WIN32 - static const char PathSeparator[] = ";"; -@@ -15,6 +20,9 @@ static const char PathSeparator[] = ":"; - namespace ov { - namespace frontend { - -+std::unordered_map>& get_shared_objects_map(); -+std::mutex& get_shared_objects_mutex(); -+ - /// \brief Internal data structure holding by each frontend. Includes library handle and extensions. - class FrontEndSharedData { - friend inline void add_extension_to_shared_data(std::shared_ptr& obj, -diff --git a/src/frontends/tensorflow/src/proto/meta_graph.proto b/src/frontends/tensorflow/src/proto/meta_graph.proto -index b6918fa853..c59c0680af 100644 ---- a/src/frontends/tensorflow/src/proto/meta_graph.proto -+++ b/src/frontends/tensorflow/src/proto/meta_graph.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "any.proto"; -+import "google/protobuf/any.proto"; - import "graph.proto"; - import "op_def.proto"; - import "tensor_shape.proto"; -diff --git a/src/frontends/tensorflow/src/proto/saved_object_graph.proto b/src/frontends/tensorflow/src/proto/saved_object_graph.proto -index 671441075c..3918a4a8d1 100644 ---- a/src/frontends/tensorflow/src/proto/saved_object_graph.proto -+++ b/src/frontends/tensorflow/src/proto/saved_object_graph.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "any.proto"; -+import "google/protobuf/any.proto"; - import "tensor_shape.proto"; - import "types.proto"; - import "variable.proto"; -diff --git a/src/frontends/tensorflow/src/proto/trackable_object_graph.proto b/src/frontends/tensorflow/src/proto/trackable_object_graph.proto -index f4a8e4da34..f0a9617432 100644 ---- a/src/frontends/tensorflow/src/proto/trackable_object_graph.proto -+++ b/src/frontends/tensorflow/src/proto/trackable_object_graph.proto -@@ -14,7 +14,7 @@ syntax = "proto3"; - - package tensorflow; - --import "wrappers.proto"; -+import "google/protobuf/wrappers.proto"; - - option cc_enable_arenas = true; - option go_package = "github.com/tensorflow/tensorflow/tensorflow/go/core/protobuf/for_core_protos_go_proto"; -diff --git a/thirdparty/dependencies.cmake b/thirdparty/dependencies.cmake -index 43e0ed671a..10042641e4 100644 ---- a/thirdparty/dependencies.cmake -+++ b/thirdparty/dependencies.cmake -@@ -415,14 +415,14 @@ if(ENABLE_OV_PADDLE_FRONTEND OR ENABLE_OV_ONNX_FRONTEND OR ENABLE_OV_TF_FRONTEND - if(CMAKE_VERBOSE_MAKEFILE) - set(Protobuf_DEBUG ON) - endif() -- if(OV_VCPKG_BUILD) -- set(protobuf_config CONFIG) -- endif() - # try to find newer version first (major is changed) - # see https://protobuf.dev/support/version-support/ and - # https://github.com/protocolbuffers/protobuf/commit/d61f75ff6db36b4f9c0765f131f8edc2f86310fa -- find_package(Protobuf 4.22.0 QUIET ${protobuf_config}) -+ find_package(Protobuf 4.22.0 QUIET CONFIG) - if(NOT Protobuf_FOUND) -+ if(OV_VCPKG_BUILD) -+ set(protobuf_config CONFIG) -+ endif() - # otherwise, fallback to existing default - find_package(Protobuf 3.20.3 REQUIRED ${protobuf_config}) - endif() diff --git a/recipes/openvino/all/patches/2023.1.0/0006-macos-14.patch b/recipes/openvino/all/patches/2023.1.0/0006-macos-14.patch deleted file mode 100644 index 4184c1832cef38..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0006-macos-14.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/plugins/intel_cpu/src/nodes/mha.cpp b/src/plugins/intel_cpu/src/nodes/mha.cpp -index d4405be5d4..19cf63ac72 100644 ---- a/src/plugins/intel_cpu/src/nodes/mha.cpp -+++ b/src/plugins/intel_cpu/src/nodes/mha.cpp -@@ -16,6 +16,7 @@ - #include "common/cpu_convert.h" - #include "transformations/cpu_opset/x64/op/mha.hpp" - #include "dnnl_extension_utils.h" -+#include "utils/bfloat16.hpp" - #include - - using namespace InferenceEngine; diff --git a/recipes/openvino/all/patches/2023.1.0/0007-compilation-c++23.patch b/recipes/openvino/all/patches/2023.1.0/0007-compilation-c++23.patch deleted file mode 100644 index 552078a68bae76..00000000000000 --- a/recipes/openvino/all/patches/2023.1.0/0007-compilation-c++23.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff --git a/src/core/src/type.cpp b/src/core/src/type.cpp -index 7d6aef2c46..c75d9a7476 100644 ---- a/src/core/src/type.cpp -+++ b/src/core/src/type.cpp -@@ -37,7 +37,7 @@ std::string DiscreteTypeInfo::get_version() const { - if (version_id) { - return std::string(version_id); - } -- return nullptr; -+ return {}; - } - - DiscreteTypeInfo::operator std::string() const { -diff --git a/src/frontends/onnx/frontend/src/ops_bridge.hpp b/src/frontends/onnx/frontend/src/ops_bridge.hpp -index bbd6bfd129..4e2d2edb2b 100644 ---- a/src/frontends/onnx/frontend/src/ops_bridge.hpp -+++ b/src/frontends/onnx/frontend/src/ops_bridge.hpp -@@ -5,6 +5,7 @@ - #pragma once - - #include -+#include - #include - #include - #include -diff --git a/src/inference/src/dev/make_tensor.cpp b/src/inference/src/dev/make_tensor.cpp -index 2e319c04c5..5e3fa241ea 100644 ---- a/src/inference/src/dev/make_tensor.cpp -+++ b/src/inference/src/dev/make_tensor.cpp -@@ -520,7 +520,7 @@ public: - } - - void allocate() noexcept override { -- if (ie::TBlob::buffer() != tensor->data()) { -+ if ((void*)ie::TBlob::buffer() != tensor->data()) { - ie::TBlob::_allocator = - ie::details::make_pre_allocator(static_cast(tensor->data()), tensor->get_byte_size()); - ie::TBlob::allocate(); diff --git a/recipes/openvino/all/patches/2024.1.0/0001-fix-cxxflags.patch b/recipes/openvino/all/patches/2024.1.0/0001-fix-cxxflags.patch new file mode 100644 index 00000000000000..ceabd157b9ce91 --- /dev/null +++ b/recipes/openvino/all/patches/2024.1.0/0001-fix-cxxflags.patch @@ -0,0 +1,25 @@ +diff --git a/cmake/developer_package/target_flags.cmake b/cmake/developer_package/target_flags.cmake +index d047a1aebd..7779b2fcf5 100644 +--- a/cmake/developer_package/target_flags.cmake ++++ b/cmake/developer_package/target_flags.cmake +@@ -118,8 +118,19 @@ function(ov_get_compiler_definition definition var) + message(FATAL_ERROR "Internal error: 'ov_get_definition' must be used only on Linux") + endif() + ++ get_directory_property(_user_defines COMPILE_DEFINITIONS) ++ foreach(_user_define IN LISTS _user_defines) ++ # older cmake versions keep -D at the beginning, trim it ++ string(REPLACE "-D" "" _user_define "${_user_define}") ++ list(APPEND _ov_user_flags "-D${_user_define}") ++ endforeach() ++ string(REPLACE " " ";" _user_cxx_flags "${CMAKE_CXX_FLAGS}") ++ foreach(_user_flag IN LISTS _user_cxx_flags) ++ list(APPEND _ov_user_flags ${_user_flag}) ++ endforeach() ++ + execute_process(COMMAND echo "#include " +- COMMAND "${CMAKE_CXX_COMPILER}" -x c++ - -E -dM ++ COMMAND "${CMAKE_CXX_COMPILER}" ${_ov_user_flags} -x c++ - -E -dM + COMMAND grep -E "^#define ${definition} " + OUTPUT_VARIABLE output_value + ERROR_VARIABLE error_message diff --git a/recipes/openvino/config.yml b/recipes/openvino/config.yml index c055e48da509b4..511bd030e9af67 100644 --- a/recipes/openvino/config.yml +++ b/recipes/openvino/config.yml @@ -1,9 +1,9 @@ versions: + "2024.1.0": + folder: "all" "2024.0.0": folder: "all" "2023.3.0": folder: "all" "2023.2.0": folder: "all" - "2023.1.0": - folder: "all" diff --git a/recipes/paho-mqtt-cpp/all/conandata.yml b/recipes/paho-mqtt-cpp/all/conandata.yml index ea7973a9092f9b..b3a853f5872bf5 100644 --- a/recipes/paho-mqtt-cpp/all/conandata.yml +++ b/recipes/paho-mqtt-cpp/all/conandata.yml @@ -1,8 +1,15 @@ sources: + "1.3.2": + sha256: c271d521287f417102b447b3d1e8d17be0e0f6a3b0b653334ebcd2ccd20d1e46 + url: https://github.com/eclipse/paho.mqtt.cpp/archive/v1.3.2.tar.gz "1.2.0": sha256: 435e97e4d5b1da13daa26cadd3e83fe9d154930abaa78b8ff1b8c854b5345d8b url: https://github.com/eclipse/paho.mqtt.cpp/archive/v1.2.0.tar.gz patches: + "1.3.2": + - patch_file: "patches/1.3.2-0001-fix-cmake.patch" + patch_description: "CMake: Honor fPIC option and properly link paho-mqtt-c to object target" + patch_type: "conan" "1.2.0": - patch_file: "patches/1.2.0-0001-fix-cmake.patch" patch_description: "CMake: Honor fPIC option and properly link paho-mqtt-c to object target" diff --git a/recipes/paho-mqtt-cpp/all/patches/1.3.2-0001-fix-cmake.patch b/recipes/paho-mqtt-cpp/all/patches/1.3.2-0001-fix-cmake.patch new file mode 100644 index 00000000000000..f2fe425491b502 --- /dev/null +++ b/recipes/paho-mqtt-cpp/all/patches/1.3.2-0001-fix-cmake.patch @@ -0,0 +1,26 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -58,7 +58,6 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) + set(CMAKE_CXX_EXTENSIONS OFF) + + # Generate position-independent code (-fPIC on UNIX) +-set(CMAKE_POSITION_INDEPENDENT_CODE ON) + + # --- System Libraries --- + +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -82,9 +82,12 @@ target_include_directories(paho-cpp-objs + $ + $ + PRIVATE +- ${PAHO_MQTT_C_INCLUDE_DIRS} + src + ) ++target_link_libraries(paho-cpp-objs PUBLIC PahoMqttC::PahoMqttC) ++if(PAHO_BUILD_SHARED) ++ set_target_properties(paho-cpp-objs PROPERTIES POSITION_INDEPENDENT_CODE ON) ++endif() + + target_compile_definitions(paho-cpp-objs PRIVATE PAHO_MQTTPP_EXPORTS) + diff --git a/recipes/paho-mqtt-cpp/config.yml b/recipes/paho-mqtt-cpp/config.yml index b8ea8afb5a3535..01476444007d24 100644 --- a/recipes/paho-mqtt-cpp/config.yml +++ b/recipes/paho-mqtt-cpp/config.yml @@ -1,3 +1,5 @@ versions: + "1.3.2": + folder: "all" "1.2.0": folder: "all" diff --git a/recipes/pixman/all/conanfile.py b/recipes/pixman/all/conanfile.py index c0b64456bcee2a..793b62a21beb50 100644 --- a/recipes/pixman/all/conanfile.py +++ b/recipes/pixman/all/conanfile.py @@ -20,7 +20,7 @@ class PixmanConan(ConanFile): topics = ("graphics", "compositing", "rasterization") url = "https://github.com/conan-io/conan-center-index" homepage = "https://gitlab.freedesktop.org/pixman/pixman" - license = ("LGPL-2.1-only", "MPL-1.1") + license = ("MIT") package_type = "library" settings = "os", "arch", "compiler", "build_type" options = { diff --git a/recipes/qt/5.x.x/conandata.yml b/recipes/qt/5.x.x/conandata.yml index a8c2e2c8e2a719..cd9975047fd935 100644 --- a/recipes/qt/5.x.x/conandata.yml +++ b/recipes/qt/5.x.x/conandata.yml @@ -1,4 +1,27 @@ sources: + "5.15.14": + url: + - "https://download.qt.io/official_releases/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://download.qt.io/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://qt-mirror.dannhauer.de/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirror.netcologne.de/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://ftp.fau.de/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://ftp.nluug.nl/languages/qt/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirrors.dotsrc.org/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirrors.20i.com/pub/qt.io/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirrors.ukfast.co.uk/sites/qt.io/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://ftp.icm.edu.pl/packages/qt/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://ftp.acc.umu.se/mirror/qt.io/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://www.nic.funet.fi/pub/mirrors/download.qt-project.org/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://qt.mirror.constant.com/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirrors.sau.edu.cn/qt/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirrors.cloud.tencent.com/qt/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirror.bjtu.edu.cn/qt/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirrors.sjtug.sjtu.edu.cn/qt/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://ftp.jaist.ac.jp/pub/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://ftp.yz.yamagata-u.ac.jp/pub/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + - "https://mirror.aarnet.edu.au/pub/qtproject/archive/qt/5.15/5.15.14/single/qt-everywhere-opensource-src-5.15.14.tar.xz" + sha256: "fdd3a4f197d2c800ee0085c721f4bef60951cbda9e9c46e525d1412f74264ed7" "5.15.13": url: - "https://download.qt.io/official_releases/qt/5.15/5.15.13/single/qt-everywhere-opensource-src-5.15.13.tar.xz" @@ -94,6 +117,28 @@ sources: - "https://ftp.yz.yamagata-u.ac.jp/pub/qtproject/archive/qt/5.15/5.15.9/single/qt-everywhere-opensource-src-5.15.9.tar.xz" sha256: "26d5f36134db03abe4a6db794c7570d729c92a3fc1b0bf9b1c8f86d0573cd02f" patches: + "5.15.14": + - "base_path": "qt5/qtbase" + "patch_file": "patches/aa2a39dea5.diff" + - "base_path": "qt5/qtwebengine" + "patch_file": "patches/c72097e.diff" + - "base_path": "qt5/qttools" + "patch_file": "patches/fix-macdeployqt.diff" + - "base_path": "qt5/qtwebengine/src/3rdparty" + "patch_file": "patches/0001-Find-fontconfig-using-pkg-config.patch" + - "base_path": "qt5/qtbase" + "patch_file": "patches/android-openssl.diff" + - "base_path": "qt5/qtbase" + "patch_description": "Fix qmake build with apple-clang>=15" + "patch_file": "patches/5.15.8-fix-qmake-default-libdirs-apple-clang-15.patch" + "patch_source": "https://codereview.qt-project.org/c/qt/qtbase/+/503916" + "patch_type": "portability" + - "base_path": "qt5/qtbase" + "patch_description": "Fix usage of memory_resource with apple-clang>=15 and deployment\ + \ target of macOS < 14" + "patch_file": "patches/5.15.12-fix-macos-cpp-lib-memory-resource.patch" + "patch_source": "https://codereview.qt-project.org/c/qt/qtbase/+/482392" + "patch_type": "portability" "5.15.13": - "base_path": "qt5/qtbase" "patch_file": "patches/aa2a39dea5.diff" diff --git a/recipes/qt/5.x.x/qtmodules5.15.14.conf b/recipes/qt/5.x.x/qtmodules5.15.14.conf new file mode 100644 index 00000000000000..452233655f279d --- /dev/null +++ b/recipes/qt/5.x.x/qtmodules5.15.14.conf @@ -0,0 +1,326 @@ +[submodule "qtbase"] + path = qtbase + url = ../qtbase.git + branch = 5.15 + status = essential +[submodule "qtsvg"] + depends = qtbase + path = qtsvg + url = ../qtsvg.git + branch = 5.15 + status = addon +[submodule "qtdeclarative"] + depends = qtbase + recommends = qtsvg + path = qtdeclarative + url = ../qtdeclarative.git + branch = 5.15 + status = essential +[submodule "qtactiveqt"] + depends = qtbase + path = qtactiveqt + url = ../qtactiveqt.git + branch = 5.15 + status = addon +[submodule "qtscript"] + depends = qtbase + recommends = qttools + path = qtscript + url = ../qtscript.git + branch = 5.15 + status = deprecated +[submodule "qtmultimedia"] + depends = qtbase + recommends = qtdeclarative + path = qtmultimedia + url = ../qtmultimedia.git + branch = 5.15 + status = essential +[submodule "qttools"] + depends = qtbase + recommends = qtdeclarative qtactiveqt + path = qttools + url = ../qttools.git + branch = 5.15 + status = essential +[submodule "qtxmlpatterns"] + depends = qtbase + recommends = qtdeclarative + path = qtxmlpatterns + url = ../qtxmlpatterns.git + branch = 5.15 + status = deprecated +[submodule "qttranslations"] + depends = qttools + path = qttranslations + url = ../qttranslations.git + branch = 5.15 + status = essential + priority = 30 +[submodule "qtdoc"] + depends = qtdeclarative qttools + recommends = qtmultimedia qtquickcontrols qtquickcontrols2 + path = qtdoc + url = ../qtdoc.git + branch = 5.15 + status = essential + priority = 40 +[submodule "qtrepotools"] + path = qtrepotools + url = ../qtrepotools.git + branch = master + status = essential + project = - +[submodule "qtqa"] + depends = qtbase + path = qtqa + url = ../qtqa.git + branch = master + status = essential + priority = 50 +[submodule "qtlocation"] + depends = qtbase + recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport + path = qtlocation + url = ../qtlocation.git + branch = 5.15 + status = addon +[submodule "qtsensors"] + depends = qtbase + recommends = qtdeclarative + path = qtsensors + url = ../qtsensors.git + branch = 5.15 + status = addon +[submodule "qtsystems"] + depends = qtbase + recommends = qtdeclarative + path = qtsystems + url = ../qtsystems.git + branch = dev + status = ignore +[submodule "qtfeedback"] + depends = qtdeclarative + recommends = qtmultimedia + path = qtfeedback + url = ../qtfeedback.git + branch = master + status = ignore +[submodule "qtdocgallery"] + depends = qtdeclarative + path = qtdocgallery + url = ../qtdocgallery.git + branch = master + status = ignore +[submodule "qtpim"] + depends = qtdeclarative + path = qtpim + url = ../qtpim.git + branch = dev + status = ignore +[submodule "qtconnectivity"] + depends = qtbase + recommends = qtdeclarative qtandroidextras + path = qtconnectivity + url = ../qtconnectivity.git + branch = 5.15 + status = addon +[submodule "qtwayland"] + depends = qtbase + recommends = qtdeclarative + path = qtwayland + url = ../qtwayland.git + branch = 5.15 + status = addon +[submodule "qt3d"] + depends = qtbase + recommends = qtdeclarative qtimageformats qtgamepad + path = qt3d + url = ../qt3d.git + branch = 5.15 + status = addon +[submodule "qtimageformats"] + depends = qtbase + path = qtimageformats + url = ../qtimageformats.git + branch = 5.15 + status = addon +[submodule "qtgraphicaleffects"] + depends = qtdeclarative + path = qtgraphicaleffects + url = ../qtgraphicaleffects.git + branch = 5.15 + status = essential +[submodule "qtquickcontrols"] + depends = qtdeclarative + recommends = qtgraphicaleffects + path = qtquickcontrols + url = ../qtquickcontrols.git + branch = 5.15 + status = addon +[submodule "qtserialbus"] + depends = qtbase + recommends = qtserialport + path = qtserialbus + url = ../qtserialbus.git + branch = 5.15 + status = addon +[submodule "qtserialport"] + depends = qtbase + path = qtserialport + url = ../qtserialport.git + branch = 5.15 + status = addon +[submodule "qtx11extras"] + depends = qtbase + path = qtx11extras + url = ../qtx11extras.git + branch = 5.15 + status = addon +[submodule "qtmacextras"] + depends = qtbase + path = qtmacextras + url = ../qtmacextras.git + branch = 5.15 + status = addon +[submodule "qtwinextras"] + depends = qtbase + recommends = qtdeclarative qtmultimedia + path = qtwinextras + url = ../qtwinextras.git + branch = 5.15 + status = addon +[submodule "qtandroidextras"] + depends = qtbase + path = qtandroidextras + url = ../qtandroidextras.git + branch = 5.15 + status = addon +[submodule "qtwebsockets"] + depends = qtbase + recommends = qtdeclarative + path = qtwebsockets + url = ../qtwebsockets.git + branch = 5.15 + status = addon +[submodule "qtwebchannel"] + depends = qtbase + recommends = qtdeclarative qtwebsockets + path = qtwebchannel + url = ../qtwebchannel.git + branch = 5.15 + status = addon +[submodule "qtwebengine"] + depends = qtdeclarative + recommends = qtquickcontrols qtquickcontrols2 qtlocation qtwebchannel qttools + path = qtwebengine + url = ../qtwebengine.git + branch = 5.15 + status = addon + priority = 10 +[submodule "qtcanvas3d"] + depends = qtdeclarative + path = qtcanvas3d + url = ../qtcanvas3d.git + branch = dev + status = ignore +[submodule "qtwebview"] + depends = qtdeclarative + recommends = qtwebengine + path = qtwebview + url = ../qtwebview.git + branch = 5.15 + status = addon +[submodule "qtquickcontrols2"] + depends = qtgraphicaleffects + recommends = qtimageformats + path = qtquickcontrols2 + url = ../qtquickcontrols2.git + branch = 5.15 + status = essential +[submodule "qtpurchasing"] + depends = qtbase + recommends = qtdeclarative qtandroidextras + path = qtpurchasing + url = ../qtpurchasing.git + branch = 5.15 + status = addon +[submodule "qtcharts"] + depends = qtbase + recommends = qtdeclarative qtmultimedia + path = qtcharts + url = ../qtcharts.git + branch = 5.15 + status = addon +[submodule "qtdatavis3d"] + depends = qtbase + recommends = qtdeclarative qtmultimedia + path = qtdatavis3d + url = ../qtdatavis3d.git + branch = 5.15 + status = addon +[submodule "qtvirtualkeyboard"] + depends = qtbase qtdeclarative qtsvg + recommends = qtmultimedia qtquickcontrols + path = qtvirtualkeyboard + url = ../qtvirtualkeyboard.git + branch = 5.15 + status = addon +[submodule "qtgamepad"] + depends = qtbase + recommends = qtdeclarative + path = qtgamepad + url = ../qtgamepad.git + branch = 5.15 + status = addon +[submodule "qtscxml"] + depends = qtbase qtdeclarative + path = qtscxml + url = ../qtscxml.git + branch = 5.15 + status = addon +[submodule "qtspeech"] + depends = qtbase + recommends = qtdeclarative qtmultimedia + path = qtspeech + url = ../qtspeech.git + branch = 5.15 + status = addon +[submodule "qtnetworkauth"] + depends = qtbase + path = qtnetworkauth + url = ../qtnetworkauth.git + branch = 5.15 + status = addon +[submodule "qtremoteobjects"] + depends = qtbase + recommends = qtdeclarative + path = qtremoteobjects + url = ../qtremoteobjects.git + branch = 5.15 + status = addon +[submodule "qtwebglplugin"] + depends = qtbase qtwebsockets + recommends = qtdeclarative + path = qtwebglplugin + url = ../qtwebglplugin.git + branch = 5.15 + status = addon +[submodule "qtlottie"] + depends = qtbase qtdeclarative + path = qtlottie + url = ../qtlottie.git + branch = 5.15 + status = addon +[submodule "qtquicktimeline"] + depends = qtbase qtdeclarative + path = qtquicktimeline + url = ../qtquicktimeline + branch = 5.15 + status = addon +[submodule "qtquick3d"] + depends = qtbase qtdeclarative + path = qtquick3d + url = ../qtquick3d.git + branch = 5.15 + status = addon diff --git a/recipes/qt/6.x.x/conandata.yml b/recipes/qt/6.x.x/conandata.yml index 4481994aa27cad..8467da32623a7c 100644 --- a/recipes/qt/6.x.x/conandata.yml +++ b/recipes/qt/6.x.x/conandata.yml @@ -1,4 +1,26 @@ sources: + "6.7.1": + url: + - "https://download.qt.io/official_releases/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://download.qt.io/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirrors.ukfast.co.uk/sites/qt.io/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirrors.20i.com/pub/qt.io/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://ftp.nluug.nl/languages/qt/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirror.netcologne.de/qtproject/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://qt-mirror.dannhauer.de/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://ftp.fau.de/qtproject/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirrors.dotsrc.org/qtproject/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://ftp.icm.edu.pl/packages/qt/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://ftp.acc.umu.se/mirror/qt.io/qtproject/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://www.nic.funet.fi/pub/mirrors/download.qt-project.org/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://qt.mirror.constant.com/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirrors.sau.edu.cn/qt/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirrors.cloud.tencent.com/qt/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirror.bjtu.edu.cn/qt/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://mirrors.sjtug.sjtu.edu.cn/qt/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://ftp.jaist.ac.jp/pub/qtproject/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + - "https://ftp.yz.yamagata-u.ac.jp/pub/qtproject/archive/qt/6.7/6.7.1/single/qt-everywhere-src-6.7.1.tar.xz" + sha256: "38dbf2768776e875ed5cdea8cccf1a240512a29769768084430914c4a33bedc4" "6.7.0": url: - "https://download.qt.io/official_releases/qt/6.7/6.7.0/single/qt-everywhere-src-6.7.0.tar.xz" @@ -123,6 +145,12 @@ sources: - "https://mirrors.ustc.edu.cn/qtproject/archive/qt/6.3/6.3.2/single/qt-everywhere-src-6.3.2.tar.xz" sha256: "b90524f686224a0e5a945c1d65307e16a375348dbe275c9ac11de171fe31374a" patches: + "6.7.1": + - "base_path": "qtwebengine" + "patch_description": "Workaround for too long .rps file name" + "patch_file": "patches/c72097e_6.6.0.diff" + "patch_source": "https://codereview.qt-project.org/c/yocto/meta-qt5/+/192172" + "patch_type": "bugfix" "6.7.0": - "base_path": "qtwebengine" "patch_description": "Workaround for too long .rps file name" diff --git a/recipes/qt/6.x.x/conanfile.py b/recipes/qt/6.x.x/conanfile.py index 4a2fb7512fa859..f1f5551a4201c4 100644 --- a/recipes/qt/6.x.x/conanfile.py +++ b/recipes/qt/6.x.x/conanfile.py @@ -477,6 +477,8 @@ def generate(self): tc = CMakeToolchain(self, generator="Ninja") + tc.absolute_paths = True + package_folder = self.package_folder.replace('\\', '/') tc.variables["INSTALL_MKSPECSDIR"] = f"{package_folder}/res/archdatadir/mkspecs" tc.variables["INSTALL_ARCHDATADIR"] = f"{package_folder}/res/archdatadir" diff --git a/recipes/qt/6.x.x/qtmodules6.7.1.conf b/recipes/qt/6.x.x/qtmodules6.7.1.conf new file mode 100644 index 00000000000000..9e00dc76387681 --- /dev/null +++ b/recipes/qt/6.x.x/qtmodules6.7.1.conf @@ -0,0 +1,338 @@ +[submodule "qtbase"] + path = qtbase + url = ../qtbase.git + branch = 6.7.1 + status = essential +[submodule "qtsvg"] + depends = qtbase + path = qtsvg + url = ../qtsvg.git + branch = 6.7.1 + status = addon +[submodule "qtdeclarative"] + depends = qtbase + recommends = qtimageformats qtshadertools qtsvg qtlanguageserver + path = qtdeclarative + url = ../qtdeclarative.git + branch = 6.7.1 + status = essential +[submodule "qtactiveqt"] + depends = qtbase + path = qtactiveqt + url = ../qtactiveqt.git + branch = 6.7.1 + status = addon +[submodule "qtmultimedia"] + depends = qtbase qtshadertools + recommends = qtdeclarative qtquick3d + path = qtmultimedia + url = ../qtmultimedia.git + branch = 6.7.1 + status = addon +[submodule "qttools"] + depends = qtbase + recommends = qtdeclarative qtactiveqt + path = qttools + url = ../qttools.git + branch = 6.7.1 + status = essential +[submodule "qtxmlpatterns"] + depends = qtbase + recommends = qtdeclarative + path = qtxmlpatterns + url = ../qtxmlpatterns.git + branch = dev + status = ignore +[submodule "qttranslations"] + depends = qttools + path = qttranslations + url = ../qttranslations.git + branch = 6.7.1 + status = essential + priority = 30 +[submodule "qtdoc"] + depends = qtdeclarative qttools + recommends = qtmultimedia qtshadertools qtwebengine + path = qtdoc + url = ../qtdoc.git + branch = 6.7.1 + status = essential + priority = 40 +[submodule "qtrepotools"] + path = qtrepotools + url = ../qtrepotools.git + branch = master + status = essential + project = - +[submodule "qtqa"] + depends = qtbase + path = qtqa + url = ../qtqa.git + branch = dev + status = essential + priority = 50 +[submodule "qtlocation"] + depends = qtbase qtpositioning + recommends = qtdeclarative + path = qtlocation + url = ../qtlocation.git + branch = 6.7.1 + status = preview +[submodule "qtpositioning"] + depends = qtbase + recommends = qtdeclarative qtserialport + path = qtpositioning + url = ../qtpositioning.git + branch = 6.7.1 + status = addon +[submodule "qtsensors"] + depends = qtbase + recommends = qtdeclarative + path = qtsensors + url = ../qtsensors.git + branch = 6.7.1 + status = addon +[submodule "qtsystems"] + depends = qtbase + recommends = qtdeclarative + path = qtsystems + url = ../qtsystems.git + branch = dev + status = ignore +[submodule "qtfeedback"] + depends = qtdeclarative + recommends = qtmultimedia + path = qtfeedback + url = ../qtfeedback.git + branch = master + status = ignore +[submodule "qtpim"] + depends = qtdeclarative + path = qtpim + url = ../qtpim.git + branch = dev + status = ignore +[submodule "qtconnectivity"] + depends = qtbase + recommends = qtdeclarative + path = qtconnectivity + url = ../qtconnectivity.git + branch = 6.7.1 + status = addon +[submodule "qtwayland"] + depends = qtbase + recommends = qtdeclarative + path = qtwayland + url = ../qtwayland.git + branch = 6.7.1 + status = addon +[submodule "qt3d"] + depends = qtbase + recommends = qtdeclarative qtshadertools qtmultimedia + path = qt3d + url = ../qt3d.git + branch = 6.7.1 + status = addon +[submodule "qtimageformats"] + depends = qtbase + path = qtimageformats + url = ../qtimageformats.git + branch = 6.7.1 + status = addon +[submodule "qtserialbus"] + depends = qtbase + recommends = qtserialport + path = qtserialbus + url = ../qtserialbus.git + branch = 6.7.1 + status = addon +[submodule "qtserialport"] + depends = qtbase + path = qtserialport + url = ../qtserialport.git + branch = 6.7.1 + status = addon +[submodule "qtwebsockets"] + depends = qtbase + recommends = qtdeclarative + path = qtwebsockets + url = ../qtwebsockets.git + branch = 6.7.1 + status = addon +[submodule "qtwebchannel"] + depends = qtbase + recommends = qtdeclarative qtwebsockets + path = qtwebchannel + url = ../qtwebchannel.git + branch = 6.7.1 + status = addon +[submodule "qtwebengine"] + depends = qtdeclarative + recommends = qtwebchannel qttools qtpositioning + path = qtwebengine + url = ../qtwebengine.git + branch = 6.7.1 + status = addon + priority = 10 +[submodule "qtcanvas3d"] + depends = qtdeclarative + path = qtcanvas3d + url = ../qtcanvas3d.git + branch = dev + status = ignore +[submodule "qtwebview"] + depends = qtdeclarative + recommends = qtwebengine + path = qtwebview + url = ../qtwebview.git + branch = 6.7.1 + status = addon +[submodule "qtcharts"] + depends = qtbase + recommends = qtdeclarative qtmultimedia + path = qtcharts + url = ../qtcharts.git + branch = 6.7.1 + status = addon +[submodule "qtdatavis3d"] + depends = qtbase + recommends = qtdeclarative qtmultimedia + path = qtdatavis3d + url = ../qtdatavis3d.git + branch = 6.7.1 + status = addon +[submodule "qtvirtualkeyboard"] + depends = qtbase qtdeclarative qtsvg + recommends = qtmultimedia + path = qtvirtualkeyboard + url = ../qtvirtualkeyboard.git + branch = 6.7.1 + status = addon +[submodule "qtgamepad"] + depends = qtbase + recommends = qtdeclarative + path = qtgamepad + url = ../qtgamepad.git + branch = dev + status = ignore +[submodule "qtscxml"] + depends = qtbase qtdeclarative + path = qtscxml + url = ../qtscxml.git + branch = 6.7.1 + status = addon +[submodule "qtspeech"] + depends = qtbase qtmultimedia + recommends = qtdeclarative + path = qtspeech + url = ../qtspeech.git + branch = 6.7.1 + status = addon +[submodule "qtnetworkauth"] + depends = qtbase + path = qtnetworkauth + url = ../qtnetworkauth.git + branch = 6.7.1 + status = addon +[submodule "qtremoteobjects"] + depends = qtbase + recommends = qtdeclarative + path = qtremoteobjects + url = ../qtremoteobjects.git + branch = 6.7.1 + status = addon +[submodule "qtwebglplugin"] + depends = qtbase qtwebsockets + recommends = qtdeclarative + path = qtwebglplugin + url = ../qtwebglplugin.git + branch = dev + status = ignore +[submodule "qtlottie"] + depends = qtbase qtdeclarative + path = qtlottie + url = ../qtlottie.git + branch = 6.7.1 + status = addon +[submodule "qtquicktimeline"] + depends = qtbase qtdeclarative + path = qtquicktimeline + url = ../qtquicktimeline + branch = 6.7.1 + status = addon +[submodule "qtquick3d"] + depends = qtbase qtdeclarative qtshadertools + recommends = qtquicktimeline + path = qtquick3d + url = ../qtquick3d.git + branch = 6.7.1 + status = addon +[submodule "qtshadertools"] + depends = qtbase + path = qtshadertools + url = ../qtshadertools.git + branch = 6.7.1 + status = addon +[submodule "qt5compat"] + depends = qtbase qtdeclarative + path = qt5compat + url = ../qt5compat.git + branch = 6.7.1 + status = deprecated +[submodule "qtcoap"] + depends = qtbase + path = qtcoap + url = ../qtcoap.git + branch = 6.7.1 + status = addon +[submodule "qtmqtt"] + depends = qtbase qtdeclarative + path = qtmqtt + url = ../qtmqtt.git + branch = 6.7.1 + status = addon +[submodule "qtopcua"] + depends = qtbase qtdeclarative + path = qtopcua + url = ../qtopcua.git + branch = 6.7.1 + status = addon +[submodule "qtlanguageserver"] + depends = qtbase + path = qtlanguageserver + url = ../qtlanguageserver.git + branch = 6.7.1 + status = preview +[submodule "qthttpserver"] + depends = qtbase + recommends = qtwebsockets + path = qthttpserver + url = ../qthttpserver.git + branch = 6.7.1 + status = preview +[submodule "qtquick3dphysics"] + depends = qtbase qtdeclarative qtquick3d qtshadertools + path = qtquick3dphysics + url = ../qtquick3dphysics.git + branch = 6.7.1 + status = addon +[submodule "qtgrpc"] + depends = qtbase + recommends = qtdeclarative + path = qtgrpc + url = ../qtgrpc.git + branch = 6.7.1 + status = preview +[submodule "qtquickeffectmaker"] + depends = qtbase qtdeclarative qtshadertools + recommends = qtquick3d + path = qtquickeffectmaker + url = ../qtquickeffectmaker.git + branch = 6.7.1 + status = addon +[submodule "qtgraphs"] + depends = qtbase qtdeclarative qtquick3d + path = qtgraphs + url = ../qtgraphs.git + branch = 6.7.1 + status = preview diff --git a/recipes/qt/config.yml b/recipes/qt/config.yml index 238dd7a439c7d4..ec175ded01c5c7 100644 --- a/recipes/qt/config.yml +++ b/recipes/qt/config.yml @@ -1,4 +1,6 @@ versions: + "6.7.1": + folder: 6.x.x "6.7.0": folder: 6.x.x "6.6.3": @@ -15,6 +17,8 @@ versions: folder: 6.x.x "6.3.2": folder: 6.x.x + "5.15.14": + folder: 5.x.x "5.15.13": folder: 5.x.x "5.15.12": diff --git a/recipes/raylib/all/conanfile.py b/recipes/raylib/all/conanfile.py index b00589d9af8ba2..a957d233f1a527 100644 --- a/recipes/raylib/all/conanfile.py +++ b/recipes/raylib/all/conanfile.py @@ -49,7 +49,7 @@ def layout(self): def requirements(self): if self.settings.os != "Android": - self.requires("glfw/3.3.8") + self.requires("glfw/3.4") self.requires("opengl/system") if self.settings.os == "Linux": self.requires("xorg/system") diff --git a/recipes/reflect-cpp/all/conandata.yml b/recipes/reflect-cpp/all/conandata.yml index e8f0dda4360884..99aed4ef3704c8 100644 --- a/recipes/reflect-cpp/all/conandata.yml +++ b/recipes/reflect-cpp/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.10.0": + url: "https://github.com/getml/reflect-cpp/archive/v0.10.0.tar.gz" + sha256: "d2c8876d993ddc8c57c5804e767786bdb46a2bdf1a6cd81f4b14f57b1552dfd7" "0.6.0": url: "https://github.com/getml/reflect-cpp/archive/v0.6.0.tar.gz" sha256: "D8231B91989397A67E841B56A0673FDCDF969DBE956D54BB629F14100B030664" diff --git a/recipes/reflect-cpp/all/conanfile.py b/recipes/reflect-cpp/all/conanfile.py index 4952fc02f03a6e..ddf0ede842e033 100644 --- a/recipes/reflect-cpp/all/conanfile.py +++ b/recipes/reflect-cpp/all/conanfile.py @@ -1,6 +1,6 @@ from conan import ConanFile from conan.errors import ConanInvalidConfiguration -from conan.tools.files import get, copy, export_conandata_patches, apply_conandata_patches +from conan.tools.files import get, copy from conan.tools.build import check_min_cppstd from conan.tools.scm import Version from conan.tools.layout import basic_layout @@ -14,7 +14,7 @@ class ReflectCppConan(ConanFile): license = "MIT" url = "https://github.com/conan-io/conan-center-index" homepage = "https://github.com/getml/reflect-cpp" - topics = ("reflection", "serialization", "memory", "json", "xml", "flatbuffers", "header-only") + topics = ("reflection", "serialization", "memory", "json", "xml", "flatbuffers", "yaml", "toml", "msgpack", "header-only") package_type = "header-library" settings = "os", "arch", "compiler", "build_type" options = { @@ -44,9 +44,6 @@ def _compilers_minimum_version(self): "apple-clang": "15", } - def export_sources(self): - export_conandata_patches(self) - def layout(self): basic_layout(self, src_folder="src") @@ -59,7 +56,7 @@ def requirements(self): self.requires("flatbuffers/23.5.26", transitive_headers=True) if self.options.with_yaml: self.requires("yaml-cpp/0.8.0", transitive_headers=True) - + def package_id(self): self.info.clear() @@ -75,9 +72,6 @@ def validate(self): def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) - def build(self): - apply_conandata_patches(self) - def package(self): copy(self, pattern="LICENSE*", dst=os.path.join(self.package_folder, "licenses"), src=self.source_folder) copy( diff --git a/recipes/reflect-cpp/all/test_package/CMakeLists.txt b/recipes/reflect-cpp/all/test_package/CMakeLists.txt index 66b58d7b20ff52..1a6253f9dc61a7 100644 --- a/recipes/reflect-cpp/all/test_package/CMakeLists.txt +++ b/recipes/reflect-cpp/all/test_package/CMakeLists.txt @@ -1,8 +1,12 @@ cmake_minimum_required(VERSION 3.12) project(test_package LANGUAGES CXX) +if (NOT CMAKE_CXX_STANDARD) + set(CMAKE_CXX_STANDARD 20) +endif() +set(CMAKE_CXX_STANDARD_REQUIRED ON) + find_package(reflect-cpp REQUIRED CONFIG) add_executable(${PROJECT_NAME} test_package.cpp) target_link_libraries(${PROJECT_NAME} PRIVATE reflect-cpp::reflect-cpp) -target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) diff --git a/recipes/reflect-cpp/config.yml b/recipes/reflect-cpp/config.yml index 7d9ba9dbc8ac92..20f0e943b9aeb9 100644 --- a/recipes/reflect-cpp/config.yml +++ b/recipes/reflect-cpp/config.yml @@ -1,3 +1,5 @@ versions: + "0.10.0": + folder: all "0.6.0": folder: all diff --git a/recipes/ring-span-lite/all/conandata.yml b/recipes/ring-span-lite/all/conandata.yml index ecb24a4b876e4d..4919bacb7f2d02 100644 --- a/recipes/ring-span-lite/all/conandata.yml +++ b/recipes/ring-span-lite/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.7.0": + url: "https://github.com/martinmoene/ring-span-lite/archive/v0.7.0.tar.gz" + sha256: "7650bb1bcf76cb0f7ac75240c5346203cbe7eb7027c0843c60253f6db08a93c1" "0.6.0": url: "https://github.com/martinmoene/ring-span-lite/archive/v0.6.0.tar.gz" sha256: "3248ee40a3147e6ba3cee051a838f727770654ade0c9852b1640f0f40d2e0573" diff --git a/recipes/ring-span-lite/all/conanfile.py b/recipes/ring-span-lite/all/conanfile.py index 91e2240703f2a4..fa9939f4bd005c 100644 --- a/recipes/ring-span-lite/all/conanfile.py +++ b/recipes/ring-span-lite/all/conanfile.py @@ -8,12 +8,13 @@ class RingSpanLiteConan(ConanFile): name = "ring-span-lite" - url = "https://github.com/conan-io/conan-center-index" - homepage = "https://github.com/martinmoene/ring-span-lite" description = ( "ring-span lite - A ring_span type for C++98, C++11 and later in a single-file header-only library ") - topics = ("cpp98", "cpp11", "cpp14", "cpp17", "ring-span") license = "BSL-1.0" + url = "https://github.com/conan-io/conan-center-index" + homepage = "https://github.com/martinmoene/ring-span-lite" + topics = ("cpp98", "cpp11", "cpp14", "cpp17", "ring-span", "header-only") + package_type = "header-library" settings = "os", "arch", "compiler", "build_type" no_copy_source = True @@ -24,11 +25,7 @@ def layout(self): basic_layout(self, src_folder="src") def source(self): - get(self, **self.conan_data["sources"][self.version], - destination=self.source_folder, strip_root=True) - - def build(self): - pass + get(self, **self.conan_data["sources"][self.version], strip_root=True) def package(self): copy(self, "*.hpp", src=os.path.join(self.source_folder, "include"), diff --git a/recipes/ring-span-lite/all/test_package/conanfile.py b/recipes/ring-span-lite/all/test_package/conanfile.py index d120a992c06a69..8a5bb47f50c4ce 100644 --- a/recipes/ring-span-lite/all/test_package/conanfile.py +++ b/recipes/ring-span-lite/all/test_package/conanfile.py @@ -7,6 +7,7 @@ class TestPackageConan(ConanFile): settings = "os", "arch", "compiler", "build_type" generators = "CMakeToolchain", "CMakeDeps", "VirtualRunEnv" + test_type = "explicit" def requirements(self): self.requires(self.tested_reference_str) diff --git a/recipes/ring-span-lite/config.yml b/recipes/ring-span-lite/config.yml index babcbfb79d964b..a0804c43130f12 100644 --- a/recipes/ring-span-lite/config.yml +++ b/recipes/ring-span-lite/config.yml @@ -1,4 +1,6 @@ versions: + "0.7.0": + folder: all "0.6.0": folder: all "0.5.0": diff --git a/recipes/sail/all/conandata.yml b/recipes/sail/all/conandata.yml index 912a033d71e011..0afb569405de94 100644 --- a/recipes/sail/all/conandata.yml +++ b/recipes/sail/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.9.5": + url: "https://github.com/HappySeaFox/sail/archive/v0.9.5.tar.gz" + sha256: "28c601c0399be1940710afc150b5836f8b3f5f6a35b98d7ac1467e62bc568e20" "0.9.4": url: "https://github.com/HappySeaFox/sail/archive/v0.9.4.tar.gz" sha256: "9a8b93c15c4a1afe07c760d2087895a18626034f55917f333aaabe9c9704438f" diff --git a/recipes/sail/all/conanfile.py b/recipes/sail/all/conanfile.py index 7651e9b295a4eb..13e75918fc7c20 100644 --- a/recipes/sail/all/conanfile.py +++ b/recipes/sail/all/conanfile.py @@ -56,7 +56,7 @@ def configure(self): def requirements(self): if self.options.with_highest_priority_codecs: - self.requires("giflib/5.2.1") + self.requires("giflib/5.2.2") self.requires("libjpeg/9e") self.requires("libpng/[>=1.6 <2]") self.requires("libtiff/4.6.0") @@ -64,12 +64,12 @@ def requirements(self): if Version(self.version) >= "0.9.1": self.requires("nanosvg/cci.20231025") if self.options.with_medium_priority_codecs: - self.requires("libavif/1.0.3") - self.requires("jasper/4.1.1") + self.requires("libavif/1.0.4") + self.requires("jasper/4.2.0") # TODO Re-enable JPEG XL after merging either of the following: # - https://github.com/conan-io/conan-center-index/pull/13898 # - https://github.com/conan-io/conan-center-index/pull/18812 - # self.requires("libjxl/0.6.1") + # self.requires("libjxl/0.10.2") self.requires("libwebp/1.3.2") def layout(self): diff --git a/recipes/sail/config.yml b/recipes/sail/config.yml index 2a8dad7a0ab375..5d13176650afec 100644 --- a/recipes/sail/config.yml +++ b/recipes/sail/config.yml @@ -1,4 +1,6 @@ versions: + "0.9.5": + folder: all "0.9.4": folder: all "0.9.1": diff --git a/recipes/samurai/all/conandata.yml b/recipes/samurai/all/conandata.yml index b4ff07102a6733..a3cf7b7eb4b885 100644 --- a/recipes/samurai/all/conandata.yml +++ b/recipes/samurai/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.13.0": + url: "https://github.com/hpc-maths/samurai/archive/v0.13.0.tar.gz" + sha256: "f38e379218b1206fc5c5e157ee5e80687721a896f70b892623d9f30280529448" "0.9.0": url: "https://github.com/hpc-maths/samurai/archive/v0.9.0.tar.gz" sha256: "49f94a7451b1b50cab335a62e294e612fea27cbf5b131827eb69a8e228ad8010" diff --git a/recipes/samurai/all/conanfile.py b/recipes/samurai/all/conanfile.py index 9bbf83edd69852..a025722b585471 100644 --- a/recipes/samurai/all/conanfile.py +++ b/recipes/samurai/all/conanfile.py @@ -43,8 +43,8 @@ def requirements(self): self.requires("fmt/10.1.1") self.requires("highfive/2.7.1") self.requires("pugixml/1.14") - self.requires("xsimd/11.1.0") - self.requires("xtensor/0.24.6") + self.requires("xsimd/12.0.0") + self.requires("xtensor/0.24.7") def package_id(self): self.info.clear() diff --git a/recipes/samurai/config.yml b/recipes/samurai/config.yml index b54c9224b6c190..e6692765cde8a1 100644 --- a/recipes/samurai/config.yml +++ b/recipes/samurai/config.yml @@ -1,4 +1,6 @@ versions: + "0.13.0": + folder: all "0.9.0": folder: all "0.8.0": diff --git a/recipes/scip/all/conandata.yml b/recipes/scip/all/conandata.yml index aacd6d1a319fe3..a8bf84f8787de0 100644 --- a/recipes/scip/all/conandata.yml +++ b/recipes/scip/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "9.0.1": + url: "https://github.com/scipopt/scip/archive/refs/tags/v901.tar.gz" + sha256: "08ad3e7ad6f84f457d95bb70ab21fa7fc648dd43103099359ef8a8f30fcce32e" "8.1.0": url: "https://github.com/scipopt/scip/archive/refs/tags/v810.tar.gz" sha256: "b6daf54c37d02564b12fb32ec3bb7a105710eb0026adeafc602af4435fa94685" diff --git a/recipes/scip/all/conanfile.py b/recipes/scip/all/conanfile.py index 30a113fa5330e1..0fea9f21ddc939 100644 --- a/recipes/scip/all/conanfile.py +++ b/recipes/scip/all/conanfile.py @@ -35,6 +35,7 @@ class SCIPConan(ConanFile): "with_sym": "bliss", } soplex_version_belonging_to_me = { + "9.0.1": "7.0.1", "8.1.0": "6.0.4", "8.0.4": "6.0.4", "8.0.3": "6.0.3" @@ -71,6 +72,9 @@ def validate(self): raise ConanInvalidConfiguration("Bliss does not support libc++.") if self.dependencies["soplex"].options.with_gmp and not self.options.with_gmp: raise ConanInvalidConfiguration("The options 'with_gmp' should be aligned with 'soplex:with_gmp' too.") + if Version(self.version) >= "9.0.1" and is_msvc(self) and self.settings.build_type == "Debug": + # lpi_spx2.cpp : error C1128: number of sections exceeded object file format limit: compile with /bigobj + raise ConanInvalidConfiguration(f"{self.ref} can not be build in Debug with MSVC.") def source(self): get(self, **self.conan_data["sources"][self.version], strip_root=True) @@ -120,6 +124,7 @@ def generate(self): tc.variables["PAPILO"] = False # LGPL tc.variables["ZIMPL"] = False # LPGL tc.variables["IPOPT"] = False # no such coin package on conan center yet + tc.variables["BUILD_TESTING"] = False # do not build documentation and examples tc.generate() deps = CMakeDeps(self) deps.set_property("sopex", "cmake_file_name", "SOPEX") diff --git a/recipes/scip/config.yml b/recipes/scip/config.yml index f70b85bc6cf446..06d899dbf8431c 100644 --- a/recipes/scip/config.yml +++ b/recipes/scip/config.yml @@ -1,4 +1,6 @@ versions: + "9.0.1": + folder: all "8.1.0": folder: all "8.0.4": diff --git a/recipes/sdf/all/test_package/CMakeLists.txt b/recipes/sdf/all/test_package/CMakeLists.txt index afcf11bbd87760..0e0a1b879f4366 100644 --- a/recipes/sdf/all/test_package/CMakeLists.txt +++ b/recipes/sdf/all/test_package/CMakeLists.txt @@ -2,7 +2,6 @@ cmake_minimum_required(VERSION 3.1) project(test_package LANGUAGES C) find_package(sdf REQUIRED CONFIG) -find_package(stb REQUIRED CONFIG) add_executable(${PROJECT_NAME} test_package.c) -target_link_libraries(${PROJECT_NAME} PRIVATE sdf::sdf stb::stb) +target_link_libraries(${PROJECT_NAME} PRIVATE sdf::sdf) diff --git a/recipes/sdf/all/test_package/conanfile.py b/recipes/sdf/all/test_package/conanfile.py index ad5b8f9465ed63..0a6bc68712d901 100644 --- a/recipes/sdf/all/test_package/conanfile.py +++ b/recipes/sdf/all/test_package/conanfile.py @@ -14,7 +14,6 @@ def layout(self): def requirements(self): self.requires(self.tested_reference_str) - self.requires("stb/cci.20210910") def build(self): cmake = CMake(self) @@ -24,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - img_path = os.path.join(self.source_folder, "test.png") - self.run(f"{bin_path} {img_path}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/sdf/all/test_package/test.png b/recipes/sdf/all/test_package/test.png deleted file mode 100644 index 568aa3449320a4..00000000000000 Binary files a/recipes/sdf/all/test_package/test.png and /dev/null differ diff --git a/recipes/sdf/all/test_package/test_package.c b/recipes/sdf/all/test_package/test_package.c index 808fd873709a9c..01f233e85fca3c 100644 --- a/recipes/sdf/all/test_package/test_package.c +++ b/recipes/sdf/all/test_package/test_package.c @@ -3,35 +3,14 @@ #define SDF_IMPLEMENTATION #include "sdf.h" -#define STB_IMAGE_IMPLEMENTATION -#include "stb_image.h" - int main(int argc, char **argv) { - if (argc < 2) { - fprintf(stderr, "Need at least one argument\n"); - return 1; - } - - int width, height, bpp; - unsigned char* img_data = stbi_load(argv[1], &width, &height, &bpp, 0); - if(img_data == NULL) - { - fprintf(stderr, "Could not load image: %s\n", stbi_failure_reason()); - return 1; - } - - unsigned char* dest_data = malloc(width * height * bpp); - if(dest_data == NULL) - { - stbi_image_free(img_data); - return 1; - } - - sdfBuildDistanceField(dest_data, width, 2.0f, img_data, width, height, width); + unsigned char* dest_data = malloc(0); + int result = sdfBuildDistanceField(dest_data, 0, 2.0f, NULL, 0, 0, 0); + printf("Result: %d\n", result); + printf("Test"); free(dest_data); - stbi_image_free(img_data); return 0; } diff --git a/recipes/sdf/all/test_v1_package/CMakeLists.txt b/recipes/sdf/all/test_v1_package/CMakeLists.txt index ee4e3e06a56c5f..a27e3332baf0d1 100644 --- a/recipes/sdf/all/test_v1_package/CMakeLists.txt +++ b/recipes/sdf/all/test_v1_package/CMakeLists.txt @@ -5,7 +5,6 @@ include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake) conan_basic_setup(TARGETS) find_package(sdf REQUIRED CONFIG) -find_package(stb REQUIRED CONFIG) add_executable(${PROJECT_NAME} ../test_package/test_package.c) -target_link_libraries(${PROJECT_NAME} PRIVATE sdf::sdf stb::stb) +target_link_libraries(${PROJECT_NAME} PRIVATE sdf::sdf) diff --git a/recipes/sdf/all/test_v1_package/conanfile.py b/recipes/sdf/all/test_v1_package/conanfile.py index 855f0ca3462a1f..38f4483872d47f 100644 --- a/recipes/sdf/all/test_v1_package/conanfile.py +++ b/recipes/sdf/all/test_v1_package/conanfile.py @@ -6,9 +6,6 @@ class TestPackageConan(ConanFile): settings = "os", "arch", "compiler", "build_type" generators = "cmake", "cmake_find_package_multi" - def requirements(self): - self.requires("stb/cci.20210910") - def build(self): cmake = CMake(self) cmake.configure() @@ -17,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - img_path = os.path.join(self.source_folder, os.pardir, "test_package", "test.png") - self.run(f"{bin_path} {img_path}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/sdl_ttf/all/test_package/OpenSans-Bold.ttf b/recipes/sdl_ttf/all/test_package/OpenSans-Bold.ttf deleted file mode 100644 index fd79d43bea0293..00000000000000 Binary files a/recipes/sdl_ttf/all/test_package/OpenSans-Bold.ttf and /dev/null differ diff --git a/recipes/sdl_ttf/all/test_package/conanfile.py b/recipes/sdl_ttf/all/test_package/conanfile.py index c4fdfb4dbdc982..0a6bc68712d901 100644 --- a/recipes/sdl_ttf/all/test_package/conanfile.py +++ b/recipes/sdl_ttf/all/test_package/conanfile.py @@ -23,5 +23,4 @@ def build(self): def test(self): if can_run(self): bin_path = os.path.join(self.cpp.build.bindirs[0], "test_package") - ttf_path = os.path.join(self.source_folder, "OpenSans-Bold.ttf") - self.run(f"{bin_path} {ttf_path}", env="conanrun") + self.run(bin_path, env="conanrun") diff --git a/recipes/sdl_ttf/all/test_package/test_package.c b/recipes/sdl_ttf/all/test_package/test_package.c index 2050bc43e42155..20d9fde4b5f07e 100644 --- a/recipes/sdl_ttf/all/test_package/test_package.c +++ b/recipes/sdl_ttf/all/test_package/test_package.c @@ -4,23 +4,11 @@ #include int main(int argc, char **argv) { - if (argc < 2) { - fprintf(stderr, "Need at least one argument\n"); - return 1; - } - if (TTF_Init() == -1) { fprintf(stderr, "Failed to initialize TTF: %s\n", SDL_GetError()); return 1; } - TTF_Font *font = TTF_OpenFont(argv[1], 16); - - if (font == NULL) { - fprintf(stderr, "Failed to load font: %s\n", SDL_GetError()); - return 1; - } - printf("SDL2_ttf is working!\n"); return 0; diff --git a/recipes/sdl_ttf/all/test_v1_package/conanfile.py b/recipes/sdl_ttf/all/test_v1_package/conanfile.py index 7b775db727c08e..38f4483872d47f 100644 --- a/recipes/sdl_ttf/all/test_v1_package/conanfile.py +++ b/recipes/sdl_ttf/all/test_v1_package/conanfile.py @@ -14,5 +14,4 @@ def build(self): def test(self): if not tools.cross_building(self): bin_path = os.path.join("bin", "test_package") - ttf_path = os.path.join(self.source_folder, os.pardir, "test_package", "OpenSans-Bold.ttf") - self.run(f"{bin_path} {ttf_path}", run_environment=True) + self.run(bin_path, run_environment=True) diff --git a/recipes/sioclient/all/conandata.yml b/recipes/sioclient/all/conandata.yml new file mode 100644 index 00000000000000..ae83b98849ee1f --- /dev/null +++ b/recipes/sioclient/all/conandata.yml @@ -0,0 +1,4 @@ +sources: + "cci.20240405": + url: "https://github.com/socketio/socket.io-client-cpp/archive/c6be96b226f0fe3853beaeaa99c06834342a78db.zip" + sha256: "7c68117185dbc49579bba09a3e877f2a716cc331c28b3d8b6d3f867c4346b639" diff --git a/recipes/sioclient/all/conanfile.py b/recipes/sioclient/all/conanfile.py new file mode 100644 index 00000000000000..4af93cba3d64c2 --- /dev/null +++ b/recipes/sioclient/all/conanfile.py @@ -0,0 +1,112 @@ +import os + +from conan import ConanFile +from conan.errors import ConanInvalidConfiguration +from conan.tools.build import check_min_cppstd +from conan.tools.cmake import CMake, CMakeDeps, CMakeToolchain, cmake_layout +from conan.tools.env import VirtualBuildEnv +from conan.tools.files import copy, get, replace_in_file, rm, rmdir, save + +required_conan_version = ">=1.53.0" + + +class SioclientConan(ConanFile): + name = "sioclient" + description = "C++11 implementation of Socket.IO client" + license = "MIT" + url = "https://github.com/conan-io/conan-center-index" + homepage = "https://github.com/socketio/socket.io-client-cpp" + topics = ("websocket", "client") + + package_type = "library" + settings = "os", "arch", "compiler", "build_type" + options = { + "shared": [True, False], + "fPIC": [True, False], + "with_openssl": [True, False], + } + default_options = { + "shared": False, + "fPIC": True, + "with_openssl": True, + } + + def config_options(self): + if self.settings.os == "Windows": + del self.options.fPIC + + def configure(self): + if self.options.shared: + self.options.rm_safe("fPIC") + + def layout(self): + cmake_layout(self, src_folder="src") + + def requirements(self): + self.requires("websocketpp/0.8.2") + self.requires("asio/1.30.2") + self.requires("rapidjson/cci.20230929") + if self.options.with_openssl: + self.requires("openssl/[>=1.1 <4]") + + def validate(self): + if self.settings.compiler.cppstd: + check_min_cppstd(self, 11) + if self.settings.os == "Windows": + raise ConanInvalidConfiguration("Shared builds on Windows are not supported") + + def source(self): + get(self, **self.conan_data["sources"][self.version], strip_root=True) + + def generate(self): + tc = CMakeToolchain(self) + tc.variables["USE_SUBMODULES"] = False + tc.generate() + + deps = CMakeDeps(self) + deps.generate() + + VirtualBuildEnv(self).generate() + + def _patch_sources(self): + replace_in_file(self, os.path.join(self.source_folder, "CMakeLists.txt"), + "asio asio::asio", "asio::asio") + save(self, os.path.join(self.source_folder, "test", "CMakeLists.txt"), "") + + def build(self): + self._patch_sources() + cmake = CMake(self) + cmake.configure() + cmake.build() + + def package(self): + copy(self, "LICENSE", self.source_folder, os.path.join(self.package_folder, "licenses")) + cmake = CMake(self) + cmake.install() + rmdir(self, os.path.join(self.package_folder, "lib", "cmake")) + rm(self, "*.pdb", self.package_folder, recursive=True) + + def package_info(self): + self.cpp_info.set_property("cmake_file_name", "sioclient") + + self.cpp_info.components["sioclient_"].set_property("cmake_target_name", "sioclient::sioclient") + self.cpp_info.components["sioclient_"].libs = ["sioclient"] + self.cpp_info.components["sioclient_"].requires = [ + "websocketpp::websocketpp", + "asio::asio", + "rapidjson::rapidjson", + ] + if self.settings.os in ["Linux", "FreeBSD"]: + self.cpp_info.components["sioclient_"].system_libs.extend(["m", "pthread"]) + + if self.options.with_openssl: + self.cpp_info.components["sioclient_tls"].set_property("cmake_target_name", "sioclient::sioclient_tls") + self.cpp_info.components["sioclient_tls"].libs = ["sioclient_tls"] + self.cpp_info.components["sioclient_tls"].requires = [ + "websocketpp::websocketpp", + "asio::asio", + "rapidjson::rapidjson", + "openssl::openssl", + ] + if self.settings.os in ["Linux", "FreeBSD"]: + self.cpp_info.components["sioclient_tls"].system_libs.extend(["m", "pthread"]) diff --git a/recipes/sioclient/all/test_package/CMakeLists.txt b/recipes/sioclient/all/test_package/CMakeLists.txt new file mode 100644 index 00000000000000..4985d53cb13caf --- /dev/null +++ b/recipes/sioclient/all/test_package/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION 3.15) +project(test_package LANGUAGES CXX) + +find_package(sioclient REQUIRED CONFIG) + +add_executable(${PROJECT_NAME} test_package.cpp) +target_link_libraries(${PROJECT_NAME} PRIVATE sioclient::sioclient) +target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_11) diff --git a/recipes/sioclient/all/test_package/conanfile.py b/recipes/sioclient/all/test_package/conanfile.py new file mode 100644 index 00000000000000..3a91c9439218e3 --- /dev/null +++ b/recipes/sioclient/all/test_package/conanfile.py @@ -0,0 +1,26 @@ +from conan import ConanFile +from conan.tools.build import can_run +from conan.tools.cmake import cmake_layout, CMake +import os + + +class TestPackageConan(ConanFile): + settings = "os", "arch", "compiler", "build_type" + generators = "CMakeDeps", "CMakeToolchain", "VirtualRunEnv" + test_type = "explicit" + + def layout(self): + cmake_layout(self) + + def requirements(self): + self.requires(self.tested_reference_str) + + def build(self): + cmake = CMake(self) + cmake.configure() + cmake.build() + + def test(self): + if can_run(self): + bin_path = os.path.join(self.cpp.build.bindir, "test_package") + self.run(bin_path, env="conanrun") diff --git a/recipes/sioclient/all/test_package/test_package.cpp b/recipes/sioclient/all/test_package/test_package.cpp new file mode 100644 index 00000000000000..646e232b2bda03 --- /dev/null +++ b/recipes/sioclient/all/test_package/test_package.cpp @@ -0,0 +1,6 @@ +#include + +int main() { + sio::client h; + h.socket(); +} diff --git a/recipes/sioclient/config.yml b/recipes/sioclient/config.yml new file mode 100644 index 00000000000000..f1cb71fea7cad5 --- /dev/null +++ b/recipes/sioclient/config.yml @@ -0,0 +1,3 @@ +versions: + "cci.20240405": + folder: all diff --git a/recipes/snappy/all/conandata.yml b/recipes/snappy/all/conandata.yml index 4e4827d4134536..501018a1c41744 100644 --- a/recipes/snappy/all/conandata.yml +++ b/recipes/snappy/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.2.1": + url: "https://github.com/google/snappy/archive/1.2.1.tar.gz" + sha256: "736aeb64d86566d2236ddffa2865ee5d7a82d26c9016b36218fcc27ea4f09f86" "1.2.0": url: "https://github.com/google/snappy/archive/1.2.0.tar.gz" sha256: "9b8f10fbb5e3bc112f2e5e64f813cb73faea42ec9c533a5023b5ae08aedef42e" @@ -15,6 +18,19 @@ sources: url: "https://github.com/google/snappy/archive/1.1.7.tar.gz" sha256: "3dfa02e873ff51a11ee02b9ca391807f0c8ea0529a4924afa645fbf97163f9d4" patches: + "1.2.1": + - patch_file: "patches/1.1.10-0001-fix-inlining-failure.patch" + patch_description: "disable inlining for compilation error" + patch_type: "portability" + - patch_file: "patches/1.1.9-0002-no-Werror.patch" + patch_description: "disable 'warning as error' options" + patch_type: "portability" + - patch_file: "patches/1.2.0-0003-fix-clobber-list-older-llvm.patch" + patch_description: "disable inline asm on apple-clang" + patch_type: "portability" + - patch_file: "patches/1.2.0-0004-rtti-by-default.patch" + patch_description: "remove 'disable rtti'" + patch_type: "conan" "1.2.0": - patch_file: "patches/1.1.10-0001-fix-inlining-failure.patch" patch_description: "disable inlining for compilation error" diff --git a/recipes/snappy/config.yml b/recipes/snappy/config.yml index 063d5899e0fa9c..4059143be6e19d 100644 --- a/recipes/snappy/config.yml +++ b/recipes/snappy/config.yml @@ -1,4 +1,6 @@ versions: + "1.2.1": + folder: all "1.2.0": folder: all "1.1.10": diff --git a/recipes/sonic-cpp/all/conandata.yml b/recipes/sonic-cpp/all/conandata.yml index d309d05a897b82..1b94133aa026e3 100644 --- a/recipes/sonic-cpp/all/conandata.yml +++ b/recipes/sonic-cpp/all/conandata.yml @@ -1,8 +1,15 @@ sources: + "1.0.1": + url: "https://github.com/bytedance/sonic-cpp/archive/refs/tags/v1.0.1.tar.gz" + sha256: "c78fb90c56ba235e8867888c0b1af0e96d7b0b86829381b3cca94f61f83d41e5" "1.0.0": url: "https://github.com/bytedance/sonic-cpp/archive/refs/tags/v1.0.0.tar.gz" sha256: "78af626fa070a2702fe9586d90617292b421d97d7ab1fe27a02cc20434467a80" patches: + "1.0.1": + - patch_file: "patches/1.0.0-0001-use-cci.patch" + patch_description: "use cci recipes" + patch_type: "conan" "1.0.0": - patch_file: "patches/1.0.0-0001-use-cci.patch" patch_description: "use cci recipes" diff --git a/recipes/sonic-cpp/all/conanfile.py b/recipes/sonic-cpp/all/conanfile.py index 8490a3d80c51bb..533e9e8146a77b 100644 --- a/recipes/sonic-cpp/all/conanfile.py +++ b/recipes/sonic-cpp/all/conanfile.py @@ -4,6 +4,7 @@ from conan.tools.files import apply_conandata_patches, export_conandata_patches, get, copy from conan.tools.layout import basic_layout from conan.tools.microsoft import is_msvc +from conan.tools.scm import Version import os required_conan_version = ">=1.53.0" @@ -50,8 +51,11 @@ def validate(self): if self.settings.compiler.cppstd: check_min_cppstd(self, self._min_cppstd) - if self.settings.arch not in ["x86", "x86_64"]: - raise ConanInvalidConfiguration(f"{self.ref} support x86, x86_64 only.") + supported_archs = ["x86", "x86_64"] + if Version(self.version) >= "1.0.1": + supported_archs.extend(["armv8", "armv8.3"]) + if self.settings.arch not in supported_archs: + raise ConanInvalidConfiguration(f"{self.ref} doesn't support {self.settings.arch}.") if is_msvc(self): raise ConanInvalidConfiguration(f"{self.ref} doesn't support MSVC now.") diff --git a/recipes/sonic-cpp/config.yml b/recipes/sonic-cpp/config.yml index 40341aa3db6cd3..af3bb0714e65c0 100644 --- a/recipes/sonic-cpp/config.yml +++ b/recipes/sonic-cpp/config.yml @@ -1,3 +1,5 @@ versions: + "1.0.1": + folder: all "1.0.0": folder: all diff --git a/recipes/sqlcipher/all/conandata.yml b/recipes/sqlcipher/all/conandata.yml index e77eae3f0547e0..3d9822ef95d644 100644 --- a/recipes/sqlcipher/all/conandata.yml +++ b/recipes/sqlcipher/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "4.6.0": + url: "https://github.com/sqlcipher/sqlcipher/archive/v4.6.0.zip" + sha256: "2d41ba2bf09c74a488f546551f65f0fa8517413307a0509dd2c87d66df6bff95" "4.5.7": url: "https://github.com/sqlcipher/sqlcipher/archive/v4.5.7.zip" sha256: "4f7e00e4b485d162d638094daba354d04aabb0ca68b72cc1826f082b40c9fd7d" @@ -24,6 +27,10 @@ sources: url: "https://github.com/sqlcipher/sqlcipher/archive/v4.3.0.zip" sha256: "41e1408465488e9c478ca5b7c5f8410405a10caa73b82db60ac115a76c563c05" patches: + "4.6.0": + - patch_file: patches/Makefile.in-v4.5.7.patch + - patch_file: patches/Makefile.msc-v4.5.7.patch + - patch_file: patches/fix_configure-v4.5.7.patch "4.5.7": - patch_file: patches/Makefile.in-v4.5.7.patch - patch_file: patches/Makefile.msc-v4.5.7.patch diff --git a/recipes/sqlcipher/config.yml b/recipes/sqlcipher/config.yml index 06f44a175119e2..05e71e56405516 100644 --- a/recipes/sqlcipher/config.yml +++ b/recipes/sqlcipher/config.yml @@ -1,4 +1,6 @@ versions: + "4.6.0": + folder: all "4.5.7": folder: all "4.5.6": diff --git a/recipes/sqlite3/all/conandata.yml b/recipes/sqlite3/all/conandata.yml index 7897a31f612113..ac208fb3cac3ab 100644 --- a/recipes/sqlite3/all/conandata.yml +++ b/recipes/sqlite3/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "3.46.0": + url: "https://sqlite.org/2024/sqlite-amalgamation-3460000.zip" + sha256: "712a7d09d2a22652fb06a49af516e051979a3984adb067da86760e60ed51a7f5" "3.45.3": url: "https://sqlite.org/2024/sqlite-amalgamation-3450300.zip" sha256: "ea170e73e447703e8359308ca2e4366a3ae0c4304a8665896f068c736781c651" diff --git a/recipes/sqlite3/config.yml b/recipes/sqlite3/config.yml index a320cb91df08ab..8482b7cd3dae37 100644 --- a/recipes/sqlite3/config.yml +++ b/recipes/sqlite3/config.yml @@ -1,4 +1,6 @@ versions: + "3.46.0": + folder: all "3.45.3": folder: all "3.45.2": diff --git a/recipes/sqlite3mc/all/conandata.yml b/recipes/sqlite3mc/all/conandata.yml index 462228eb46b296..9592c1863bcbed 100644 --- a/recipes/sqlite3mc/all/conandata.yml +++ b/recipes/sqlite3mc/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.8.4": + url: "https://github.com/utelle/SQLite3MultipleCiphers/archive/refs/tags/v1.8.4.tar.gz" + sha256: "453e1938a02c91796a013169d56f746f153d7c7a77b59894bf8462b341a343ca" "1.8.0": url: "https://github.com/utelle/SQLite3MultipleCiphers/archive/refs/tags/v1.8.0.tar.gz" sha256: "13D9B939BEF7C7371D58A3874F83B18CF330EB2171205B3680ACDDB2215BE0E5" diff --git a/recipes/sqlite3mc/all/conanfile.py b/recipes/sqlite3mc/all/conanfile.py index eddb5a88de8903..f99b4eebdebe5c 100644 --- a/recipes/sqlite3mc/all/conanfile.py +++ b/recipes/sqlite3mc/all/conanfile.py @@ -2,6 +2,7 @@ from conan import ConanFile from conan.tools.cmake import cmake_layout, CMakeDeps, CMakeToolchain, CMake from conan.tools.files import get, copy +from conan.tools.scm import Version required_conan_version = ">=1.53.0" @@ -84,7 +85,7 @@ class sqlite3mc(ConanFile): "enable_rtree": True, "enable_uuid": True, "use_uri": True, - "user_authentication": True, + "user_authentication": False, "enable_preupdate_hook": False, "enable_session": False, "shell_is_utf8": True, @@ -114,6 +115,9 @@ def build_requirements(self): def config_options(self): if self.settings.os == "Windows": del self.options.fPIC + if Version(self.version) < "1.8.4": + # INFO: https://github.com/utelle/SQLite3MultipleCiphers/commit/3bb033956816b3301f026abb5e83087799de5bee + self.options.user_authentication = True def configure(self): if self.options.shared: diff --git a/recipes/sqlite3mc/config.yml b/recipes/sqlite3mc/config.yml index 4d72270a880489..b8d82dd8119c12 100644 --- a/recipes/sqlite3mc/config.yml +++ b/recipes/sqlite3mc/config.yml @@ -1,3 +1,5 @@ versions: + "1.8.4": + folder: all "1.8.0": folder: all diff --git a/recipes/stb/all/conandata.yml b/recipes/stb/all/conandata.yml index c0c0739831fe06..475c92e1a56fda 100644 --- a/recipes/stb/all/conandata.yml +++ b/recipes/stb/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "cci.20240213": + url: "https://github.com/nothings/stb/archive/ae721c50eaf761660b4f90cc590453cdb0c2acd0.zip" + sha256: "5d075769721e676746d0c25b698a0f00741f68252f9ab4b7ee245c513aeec3de" "cci.20230920": url: "https://github.com/nothings/stb/archive/5736b15f7ea0ffb08dd38af21067c314d6a3aae9.zip" sha256: "b6601f182fa4bc04dd0f135e38231e8a2c6c9e7901c66a942871f03285713b05" diff --git a/recipes/stb/config.yml b/recipes/stb/config.yml index a0248de0acece5..6df647ee3d6a75 100644 --- a/recipes/stb/config.yml +++ b/recipes/stb/config.yml @@ -1,4 +1,6 @@ versions: + "cci.20240213": + folder: all "cci.20230920": folder: all "cci.20220909": diff --git a/recipes/strawberryperl/all/conanfile.py b/recipes/strawberryperl/all/conanfile.py index e5d600869e82fa..f6b47f3dd18e04 100644 --- a/recipes/strawberryperl/all/conanfile.py +++ b/recipes/strawberryperl/all/conanfile.py @@ -14,6 +14,7 @@ class StrawberryPerlConan(ConanFile): homepage = "http://strawberryperl.com" url = "https://github.com/conan-io/conan-center-index" topics = ("perl", "interpreter", "windows") + package_type = "application" settings = "os", "arch", "compiler", "build_type" def layout(self): @@ -24,8 +25,10 @@ def package_id(self): del self.info.settings.build_type def validate(self): - if self.info.settings.os != "Windows": - raise ConanInvalidConfiguration("Strawberry Perl is only intended to be used on Windows.") + if self.settings.os != "Windows": + raise ConanInvalidConfiguration(f"{self.ref} is only intended to be used on Windows.") + if self.settings.arch not in ("x86", "x86_64"): + raise ConanInvalidConfiguration(f"{self.ref} is only available for x86 and x86_64 architectures.") def source(self): pass diff --git a/recipes/symengine/all/conandata.yml b/recipes/symengine/all/conandata.yml index c52591b6474750..f1d9cf2996b495 100644 --- a/recipes/symengine/all/conandata.yml +++ b/recipes/symengine/all/conandata.yml @@ -14,3 +14,6 @@ sources: "0.11.2": url: "https://github.com/symengine/symengine/releases/download/v0.11.2/symengine-0.11.2.tar.gz" sha256: "f6972acd6a65354f6414e69460d2e175729470632bdac05919bc2f7f32e48cbd" + "0.12.0": + url: "https://github.com/symengine/symengine/archive/refs/tags/v0.12.0.tar.gz" + sha256: "1b5c3b0bc6a9f187635f93585649f24a18e9c7f2167cebcd885edeaaf211d956" diff --git a/recipes/symengine/config.yml b/recipes/symengine/config.yml index b47e71fe86741a..7edc4135e663ca 100644 --- a/recipes/symengine/config.yml +++ b/recipes/symengine/config.yml @@ -9,3 +9,5 @@ versions: folder: all "0.11.2": folder: all + "0.12.0": + folder: all diff --git a/recipes/thorvg/all/conandata.yml b/recipes/thorvg/all/conandata.yml index 7b77209eae819c..68268a5d2d990f 100644 --- a/recipes/thorvg/all/conandata.yml +++ b/recipes/thorvg/all/conandata.yml @@ -1,4 +1,10 @@ sources: + "0.13.5": + url: "https://github.com/thorvg/thorvg/archive/refs/tags/v0.13.5.tar.gz" + sha256: "977ed74c3846c9a6acd5765aff776745d40e3c91507b22e51177d59c69afd198" + "0.13.4": + url: "https://github.com/thorvg/thorvg/archive/refs/tags/v0.13.4.tar.gz" + sha256: "2521adf99fb04ae543f5c14bb5fafd5ba7df0ea2e2a9e61351105c27059fc9e6" "0.13.2": url: "https://github.com/thorvg/thorvg/archive/refs/tags/v0.13.2.tar.gz" sha256: "03b5dbb4c73ff221a4bd7243cc0ad377aecff4c3077f5a57ee2902e4122d3218" diff --git a/recipes/thorvg/all/conanfile.py b/recipes/thorvg/all/conanfile.py index a16ce4127352ff..41c5d63ea4a2dd 100644 --- a/recipes/thorvg/all/conanfile.py +++ b/recipes/thorvg/all/conanfile.py @@ -35,7 +35,8 @@ class ThorvgConan(ConanFile): "with_threads": [True, False], "with_vector": [True, False], # removed in thorvg 0.13.1. Renamed to simd "with_simd": [True, False], # legacy with_vector - "with_examples": [True, False] + "with_examples": [True, False], + "with_extra": [False, 'lottie_expressions'], } default_options = { "shared": False, @@ -48,7 +49,8 @@ class ThorvgConan(ConanFile): "with_threads": True, "with_vector": False, "with_simd": False, - "with_examples": False + "with_examples": False, + "with_extra": 'lottie_expressions', } # See more here: https://github.com/thorvg/thorvg/blob/main/meson_options.txt options_description = { @@ -61,7 +63,9 @@ class ThorvgConan(ConanFile): "with_bindings": "Enable API bindings", "with_tools": "Enable building thorvg tools", "with_examples": "Enable building examples", + "with_extra": "Enable support for exceptionally advanced features", } + short_paths = True @property def _min_cppstd(self): @@ -85,6 +89,8 @@ def config_options(self): del self.options.with_vector else: del self.options.with_simd + if Version(self.version) < "0.13.3": + del self.options.with_extra def configure(self): if self.options.shared: @@ -102,6 +108,11 @@ def validate(self): f"{self.ref} requires C++{self._min_cppstd}, which your compiler does not support." ) + if is_msvc(self) and self.settings.build_type == "Debug": + raise ConanInvalidConfiguration( + f"{self.ref} doesn't support debug build on MSVC." + ) + def requirements(self): loaders_opt = str(self.options.with_loaders) if loaders_opt in ("all", "jpg"): @@ -131,7 +142,7 @@ def generate(self): "threads": bool(self.options.with_threads), "examples": bool(self.options.with_examples), "tests": False, - "log": is_debug + "log": is_debug, }) # Workaround to avoid: error D8016: '/O1' and '/RTC1' command-line options are incompatible if is_msvc(self) and is_debug: @@ -141,6 +152,8 @@ def generate(self): tc.project_options["simd"] = bool(self.options.with_simd) else: tc.project_options["vector"] = bool(self.options.with_vector) + if self.options.get_safe("with_extra") is not None: + tc.project_options["extra"] = str(self.options.with_extra) if self.options.with_extra else '' tc.generate() tc = PkgConfigDeps(self) tc.generate() diff --git a/recipes/thorvg/config.yml b/recipes/thorvg/config.yml index f404076e3daf53..ebe3fa467b911a 100644 --- a/recipes/thorvg/config.yml +++ b/recipes/thorvg/config.yml @@ -1,4 +1,8 @@ versions: + "0.13.5": + folder: all + "0.13.4": + folder: all "0.13.2": folder: all "0.13.0": diff --git a/recipes/uncrustify/all/conandata.yml b/recipes/uncrustify/all/conandata.yml index b95a9b875d7e40..e46325da0f3423 100644 --- a/recipes/uncrustify/all/conandata.yml +++ b/recipes/uncrustify/all/conandata.yml @@ -1,16 +1,10 @@ sources: + "0.79.0": + url: "https://github.com/uncrustify/uncrustify/archive/uncrustify-0.79.0.tar.gz" + sha256: "e7afaeabf636b7f0ce4e3e9747b95f7bd939613a8db49579755dddf44fedca5f" "0.78.1": url: "https://github.com/uncrustify/uncrustify/archive/uncrustify-0.78.1.tar.gz" sha256: "ecaf4c0adca14c36dfffa30bc28e69865115ecd602c90eb16a8cddccb41caad2" - "0.78.0": - url: "https://github.com/uncrustify/uncrustify/archive/refs/tags/uncrustify-0.78.0.tar.gz" - sha256: "377efec187c26c7ad77900d94032fa51b029831c69442d607a6e53ef2115928f" "0.77.1": url: "https://github.com/uncrustify/uncrustify/archive/refs/tags/uncrustify-0.77.1.tar.gz" sha256: "414bbc9f7860eb18a53074f9af14ed04638a633b2216a73f2629291300d37c1b" - "0.75.1": - url: "https://github.com/uncrustify/uncrustify/archive/refs/tags/uncrustify-0.75.1.tar.gz" - sha256: "fd14acc0a31ed88b33137bdc26d32964327488c835f885696473ef07caf2e182" - "0.74.0": - url: "https://github.com/uncrustify/uncrustify/archive/refs/tags/uncrustify-0.74.0.tar.gz" - sha256: "b7d24e256e7f919aa96289ac8167ac98340df7faa2d34b60d2242dc54700caaa" diff --git a/recipes/uncrustify/config.yml b/recipes/uncrustify/config.yml index d0d1205acdb6ee..2c75346920bc68 100644 --- a/recipes/uncrustify/config.yml +++ b/recipes/uncrustify/config.yml @@ -1,11 +1,7 @@ versions: - "0.78.1": + "0.79.0": folder: all - "0.78.0": + "0.78.1": folder: all "0.77.1": folder: all - "0.75.1": - folder: all - "0.74.0": - folder: all diff --git a/recipes/vincentlaucsb-csv-parser/all/conandata.yml b/recipes/vincentlaucsb-csv-parser/all/conandata.yml index a43372f1aedb37..281a7a85b53e02 100644 --- a/recipes/vincentlaucsb-csv-parser/all/conandata.yml +++ b/recipes/vincentlaucsb-csv-parser/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "2.2.3": + url: "https://github.com/vincentlaucsb/csv-parser/archive/refs/tags/2.2.3.tar.gz" + sha256: "e70ea75612fb45f9a9dd83145fb3fbf0b5929a32683de478ad429cdd85f10e4e" "2.2.2": url: "https://github.com/vincentlaucsb/csv-parser/archive/refs/tags/2.2.2.tar.gz" sha256: "8d7720021d19cf03880eb768d82d7f7e0a240b6d564bc6b495fceb4775b8f0c7" diff --git a/recipes/vincentlaucsb-csv-parser/config.yml b/recipes/vincentlaucsb-csv-parser/config.yml index dd347c3f0995e8..f199f8386c5f4b 100644 --- a/recipes/vincentlaucsb-csv-parser/config.yml +++ b/recipes/vincentlaucsb-csv-parser/config.yml @@ -1,4 +1,6 @@ versions: + "2.2.3": + folder: all "2.2.2": folder: all "2.2.0": diff --git a/recipes/wasmedge/all/conandata.yml b/recipes/wasmedge/all/conandata.yml index b7eef0f907d2e1..d88f2037f15aa6 100644 --- a/recipes/wasmedge/all/conandata.yml +++ b/recipes/wasmedge/all/conandata.yml @@ -1,4 +1,45 @@ sources: + "0.14.0": + Windows: + "x86_64": + Visual Studio: + - url: "https://github.com/WasmEdge/WasmEdge/releases/download/0.14.0/WasmEdge-0.14.0-windows.zip" + sha256: "cd0dd57df8f3e8cb7ef0e57d2d09f1740093c2179fad933b270979bafe8295a1" + - url: "https://raw.githubusercontent.com/WasmEdge/WasmEdge/0.14.0/LICENSE" + sha256: "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4" + Linux: + "x86_64": + "gcc": + - url: "https://github.com/WasmEdge/WasmEdge/releases/download/0.14.0/WasmEdge-0.14.0-manylinux2014_x86_64.tar.gz" + sha256: "73b3892f94c143dc09d53415c6848bb8e87206a1f614fd0edfc89957a0f1b027" + - url: "https://raw.githubusercontent.com/WasmEdge/WasmEdge/0.14.0/LICENSE" + sha256: "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4" + "armv8": + "gcc": + - url: "https://github.com/WasmEdge/WasmEdge/releases/download/0.14.0/WasmEdge-0.14.0-manylinux2014_aarch64.tar.gz" + sha256: "6136c42066cdd9a96170285af2613dc00f262f5758a03d7afb3ab12a36363c79" + - url: "https://raw.githubusercontent.com/WasmEdge/WasmEdge/0.11.1/LICENSE" + sha256: "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4" + Macos: + "x86_64": + "gcc": + - url: "https://github.com/WasmEdge/WasmEdge/releases/download/0.14.0/WasmEdge-0.14.0-darwin_x86_64.tar.gz" + sha256: "03c5d77be63ecad54ed33a1885f170bc854246ed8f9ae8e366b114bc8c0c2422" + - url: "https://raw.githubusercontent.com/WasmEdge/WasmEdge/0.14.0/LICENSE" + sha256: "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4" + "armv8": + "gcc": + - url: "https://github.com/WasmEdge/WasmEdge/releases/download/0.14.0/WasmEdge-0.14.0-darwin_arm64.tar.gz" + sha256: "4f2f34545a97768e28700099ac9cbb18e7b434779d237de860324de400922546" + - url: "https://raw.githubusercontent.com/WasmEdge/WasmEdge/0.14.0/LICENSE" + sha256: "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4" + Android: + "armv8": + "gcc": + - url: "https://github.com/WasmEdge/WasmEdge/releases/download/0.14.0/WasmEdge-0.14.0-android_aarch64.tar.gz" + sha256: "58b834db8814b27051494df60588dc56f3a5d740604e92c1eac9e5021b311c03" + - url: "https://raw.githubusercontent.com/WasmEdge/WasmEdge/0.14.0/LICENSE" + sha256: "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4" "0.13.5": Windows: "x86_64": diff --git a/recipes/wasmedge/config.yml b/recipes/wasmedge/config.yml index 13b6ff12faa84a..4d4208e046a5e5 100644 --- a/recipes/wasmedge/config.yml +++ b/recipes/wasmedge/config.yml @@ -1,4 +1,6 @@ versions: + "0.14.0": + folder: "all" "0.13.5": folder: "all" "0.11.2": diff --git a/recipes/wasmtime/all/conandata.yml b/recipes/wasmtime/all/conandata.yml index c815513be0c337..f552bb5d07af33 100644 --- a/recipes/wasmtime/all/conandata.yml +++ b/recipes/wasmtime/all/conandata.yml @@ -1,4 +1,34 @@ sources: + "21.0.0": + Windows: + "x86_64": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-x86_64-windows-c-api.zip" + sha256: "aee0fb2d792f93d16cc3ae2857a384c1f3b105374dfdecb6ab3f3b2823e6acaf" + MinGW: + "x86_64": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-x86_64-mingw-c-api.zip" + sha256: "d4253540cc201c12d356a0806786ea518577c486d66d83a0144b4227d559c507" + Linux: + "x86_64": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-x86_64-linux-c-api.tar.xz" + sha256: "e91b15f242454ab916dd895d326f6c2585a1f93f0df5aeb079e6f0511c90b37d" + "armv8": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-aarch64-linux-c-api.tar.xz" + sha256: "b3e77e3eab5c0c4c3085364701bdb5cdd05e5ac4e3308d40263b06ac67bae610" + "s390x": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-s390x-linux-c-api.tar.xz" + sha256: "dad2b4c43aaaa6734ac0d2825767759338b0273c46500b46ac071ddc7e853bec" + Macos: + "x86_64": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-x86_64-macos-c-api.tar.xz" + sha256: "f99c5682ce85f353645b2b642a90104d43f77eafe8a90faa2ecd9421c4d48d2f" + "armv8": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-aarch64-macos-c-api.tar.xz" + sha256: "0414332f1d6c90e6226102a27e8b8767eba845f34f4c8cabab575b094a0500f1" + Android: + "armv8": + url: "https://github.com/bytecodealliance/wasmtime/releases/download/v21.0.0/wasmtime-v21.0.0-aarch64-linux-c-api.tar.xz" + sha256: "b3e77e3eab5c0c4c3085364701bdb5cdd05e5ac4e3308d40263b06ac67bae610" "20.0.1": Windows: "x86_64": diff --git a/recipes/wasmtime/config.yml b/recipes/wasmtime/config.yml index 0ec0909d84a80b..5bcf55a2755caa 100644 --- a/recipes/wasmtime/config.yml +++ b/recipes/wasmtime/config.yml @@ -1,4 +1,6 @@ versions: + "21.0.0": + folder: all "20.0.1": folder: all "19.0.2": diff --git a/recipes/watcher/all/conandata.yml b/recipes/watcher/all/conandata.yml index 533a3689631b9d..b164bc68a1b900 100644 --- a/recipes/watcher/all/conandata.yml +++ b/recipes/watcher/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "0.10.1": + url: "https://github.com/e-dant/watcher/archive/release/0.10..tar.gz" + sha256: "3c2d3318f64d79437b1305a83382aa26e5054444ac4aed1821937cb97fedc03a" "0.10.0": url: "https://github.com/e-dant/watcher/archive/release/0.10.0.tar.gz" sha256: "c15f088ddc41b58100921ea0b630bcbde83c9960aefecf82221da997f4d4b4ec" diff --git a/recipes/watcher/config.yml b/recipes/watcher/config.yml index 83559e08c8922f..573bce3b91e258 100644 --- a/recipes/watcher/config.yml +++ b/recipes/watcher/config.yml @@ -1,4 +1,6 @@ versions: + "0.10.1": + folder: all "0.10.0": folder: all "0.9.5": diff --git a/recipes/whisper-cpp/all/conandata.yml b/recipes/whisper-cpp/all/conandata.yml index 1c610fb8c4e680..95751363604855 100644 --- a/recipes/whisper-cpp/all/conandata.yml +++ b/recipes/whisper-cpp/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.6.2": + url: "https://github.com/ggerganov/whisper.cpp/archive/refs/tags/v1.6.2.tar.gz" + sha256: "da7988072022acc3cfa61b370b3c51baad017f1900c3dc4e68cb276499f66894" "1.5.2": url: "https://github.com/ggerganov/whisper.cpp/archive/refs/tags/v1.5.2.tar.gz" sha256: "be9c4d5d4b5f28f02e36f28e602b7d2dcfd734dd1c834ddae91ae8db601e951f" @@ -9,6 +12,10 @@ sources: url: "https://github.com/ggerganov/whisper.cpp/archive/refs/tags/v1.2.1.tar.gz" sha256: "69d47fc2ba982c42bd5bade4b7c827d5b3ed74b9c59323991c45a9f0f24eb6ed" patches: + "1.6.2": + - patch_file: "patches/1.6.2-0001-remove_hardcoded_cxxstd.patch" + patch_description: "Remove hardcoded CMAKE_CXX_STANDARD" + patch_type: "conan" "1.2.1": - patch_file: "patches/1.2.1-0001-find_package_openblas.patch" patch_description: "Fix OpenBlas cmake target name" diff --git a/recipes/whisper-cpp/all/patches/1.6.2-0001-remove_hardcoded_cxxstd.patch b/recipes/whisper-cpp/all/patches/1.6.2-0001-remove_hardcoded_cxxstd.patch new file mode 100644 index 00000000000000..9e041fd99d19b0 --- /dev/null +++ b/recipes/whisper-cpp/all/patches/1.6.2-0001-remove_hardcoded_cxxstd.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 82913aa..f3a2d27 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -125,8 +125,6 @@ find_package(Threads REQUIRED) + #compile flag sycl + if (WHISPER_SYCL) + set(CMAKE_CXX_STANDARD 17) +-else() +- set(CMAKE_CXX_STANDARD 11) + endif() + + if (WHISPER_FFMPEG) diff --git a/recipes/whisper-cpp/config.yml b/recipes/whisper-cpp/config.yml index 8c62d29e8f324c..a159f6f70ca5cd 100644 --- a/recipes/whisper-cpp/config.yml +++ b/recipes/whisper-cpp/config.yml @@ -1,4 +1,6 @@ versions: + "1.6.2": + folder: "all" "1.5.2": folder: "all" "1.4.3": diff --git a/recipes/xege/all/conandata.yml b/recipes/xege/all/conandata.yml index 2f7535221dfb9d..fecd7fb3567660 100644 --- a/recipes/xege/all/conandata.yml +++ b/recipes/xege/all/conandata.yml @@ -1,4 +1,4 @@ sources: "20.08": - url: "https://github.com/wysaid/xege/archive/refs/tags/20.08.tar.gz" + url: "https://github.com/wysaid/xege/archive/refs/tags/v20.08.tar.gz" sha256: "33bc63366d093902b5bc68d3d613ebd90e449bc22800b40f2dd98e2b5c44b88a" diff --git a/recipes/xtr/all/conandata.yml b/recipes/xtr/all/conandata.yml index 1e78ef99a9e55a..2ce24b56ad5da1 100644 --- a/recipes/xtr/all/conandata.yml +++ b/recipes/xtr/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "2.1.1": + url: "https://github.com/choll/xtr/archive/refs/tags/2.1.1.tar.gz" + sha256: "dbd8d1fbb5308329fe21bbe704206e2e69a5d49696959d43a2504ea1bec00140" "2.1.0": url: "https://github.com/choll/xtr/archive/refs/tags/2.1.0.tar.gz" sha256: "5abe2e53d91a893d63998968450d9bbfc23c45f552c81e2b7d17694699ab17c4" diff --git a/recipes/xtr/config.yml b/recipes/xtr/config.yml index 4f7c23f02e7c58..06db99424bd4b8 100644 --- a/recipes/xtr/config.yml +++ b/recipes/xtr/config.yml @@ -1,4 +1,6 @@ versions: + "2.1.1": + folder: all "2.1.0": folder: all "2.0.1": diff --git a/recipes/yomm2/all/conandata.yml b/recipes/yomm2/all/conandata.yml index bb998ec99294fa..6a145498b3d66d 100644 --- a/recipes/yomm2/all/conandata.yml +++ b/recipes/yomm2/all/conandata.yml @@ -1,4 +1,7 @@ sources: + "1.5.2": + url: "https://github.com/jll63/yomm2/archive/refs/tags/v1.5.2.tar.gz" + sha256: "12f3f735b4870606199b889a242ebfed84cf0cd392b04a1c32db11291de684be" "1.5.1": url: "https://github.com/jll63/yomm2/archive/refs/tags/v1.5.1.tar.gz" sha256: "323abba27a356555cc3ead3e3e950746ab43f90d97ad21950f2ba3afaf565ecc" diff --git a/recipes/yomm2/all/conanfile.py b/recipes/yomm2/all/conanfile.py index 770cbf94dd1df4..f02471f2e1d506 100644 --- a/recipes/yomm2/all/conanfile.py +++ b/recipes/yomm2/all/conanfile.py @@ -38,7 +38,7 @@ def _compilers_minimum_version(self): return { "gcc": "8", "clang": "5", - "apple-clang": "12", + "apple-clang": "13", "msvc": "192" } @@ -54,6 +54,10 @@ def validate(self): raise ConanInvalidConfiguration( f"{self.ref} requires C++{self._min_cppstd}, which your compiler does not support." ) + if self.settings.compiler == "apple-clang" and not bool(self.options.header_only): + raise ConanInvalidConfiguration( + f"{self.ref} dynamic library builds are not supported on MacOS." + ) def build_requirements(self): self.tool_requires("cmake/[>=3.20 <4]") @@ -80,8 +84,9 @@ def generate(self): tc.generate() def _patch_sources(self): - cmakelists = os.path.join(self.source_folder, "CMakeLists.txt") - replace_in_file(self, cmakelists, "add_subdirectory(docs.in)", "") + if Version(self.version) <= "1.5.1": + cmakelists = os.path.join(self.source_folder, "CMakeLists.txt") + replace_in_file(self, cmakelists, "add_subdirectory(docs.in)", "") def build(self): self._patch_sources() diff --git a/recipes/yomm2/all/test_package/test_package.cpp b/recipes/yomm2/all/test_package/test_package.cpp index dd17d7408403d6..ea5d7313d5408a 100644 --- a/recipes/yomm2/all/test_package/test_package.cpp +++ b/recipes/yomm2/all/test_package/test_package.cpp @@ -1,25 +1,53 @@ -// Copyright (c) 2021 Jean-Louis Leroy +// Copyright (c) 2018-2024 Jean-Louis Leroy // Distributed under the Boost Software License, Version 1.0. // See accompanying file LICENSE_1_0.txt // or copy at http://www.boost.org/LICENSE_1_0.txt) +#include + #include -#include -#include -#include +class Animal { + public: + virtual ~Animal() { + } +}; + +class Dog : public Animal {}; +class Cat : public Animal {}; + +register_classes(Animal, Dog, Cat); -using std::cout; -using yorel::yomm2::virtual_; +declare_method( + void, meet, (virtual_, virtual_, std::ostream&)); + +define_method(void, meet, (Animal&, Animal&, std::ostream& os)) { + os << "ignore"; +} -// register_class(classes); +// Add definitions for specific pairs of animals. +define_method(void, meet, (Dog& dog1, Dog& dog2, std::ostream& os)) { + os << "wag tail"; +} -// declare_method(return, name, (params)); +define_method(void, meet, (Dog& dog, Cat& cat, std::ostream& os)) { + os << "chase"; +} -// define_method(return, name, (params)) { -// } +define_method(void, meet, (Cat& cat, Dog& dog, std::ostream& os)) { + os << "run"; +} int main() { + #ifndef NDEBUG + yorel::yomm2::default_policy::trace_enabled = true; + #endif + yorel::yomm2::update(); - return 0; + Animal&& snoopy = Dog(); + Animal&& felix = Cat(); + std::ostringstream os; + meet(snoopy, felix, os); // chase + + return os.str() == "chase" ? 0 : 1; } diff --git a/recipes/yomm2/config.yml b/recipes/yomm2/config.yml index f1c5e3d313178b..e13089a05a884c 100644 --- a/recipes/yomm2/config.yml +++ b/recipes/yomm2/config.yml @@ -1,3 +1,5 @@ versions: + "1.5.2": + folder: all "1.5.1": folder: all diff --git a/recipes/zserio/all/conandata.yml b/recipes/zserio/all/conandata.yml index 9a65ed8b0e67c6..252e1a38c700d4 100644 --- a/recipes/zserio/all/conandata.yml +++ b/recipes/zserio/all/conandata.yml @@ -1,4 +1,14 @@ sources: + "2.14.0": + runtime: + url: "https://github.com/ndsev/zserio/releases/download/v2.14.0/zserio-2.14.0-runtime-libs.zip" + sha256: "6002bfe179333435c84d3be2cfb612c008bd52837512aecea8a888e4a3139564" + compiler: + url: "https://github.com/ndsev/zserio/releases/download/v2.14.0/zserio-2.14.0-bin.zip" + sha256: "c1d4668371ad3543cb24f86b218640da7f720f31afe3f8af2d427114d7c7ae5c" + license: + url: "https://raw.githubusercontent.com/ndsev/zserio/v2.14.0/LICENSE" + sha256: "8fd7b040fc223bb07551dfed490df0d55d6af25e331e58bc7c7599163ed1bb5a" "2.13.0": runtime: url: "https://github.com/ndsev/zserio/releases/download/v2.13.0/zserio-2.13.0-runtime-libs.zip" diff --git a/recipes/zserio/all/conanfile.py b/recipes/zserio/all/conanfile.py index 2ab5a23336294e..6a69b2c8144016 100644 --- a/recipes/zserio/all/conanfile.py +++ b/recipes/zserio/all/conanfile.py @@ -5,6 +5,7 @@ from conan.tools.files import copy, download, get from conan.tools.build import check_min_cppstd from conan.tools.cmake import CMake, CMakeToolchain, cmake_layout +from conan.tools.scm import Version required_conan_version = ">=1.54.0" @@ -25,12 +26,24 @@ class ZserioConanFile(ConanFile): "fPIC": True } + @property + def _compilers_minimum_version(self): + # https://github.com/ndsev/zserio/tree/master/compiler/extensions/cpp#supported-compilers + return { + "apple-clang": "11", + "clang": "11", + "gcc": "5", + "msvc": "191", + "Visual Studio": "15", + } + @property def _min_cppstd(self): return 11 def export_sources(self): - copy(self, "zserio_compiler.cmake", self.recipe_folder, self.export_sources_folder) + if Version(self.version) < "2.14.0": + copy(self, "zserio_compiler.cmake", self.recipe_folder, self.export_sources_folder) def config_options(self): if self.settings.os == "Windows": @@ -50,6 +63,13 @@ def validate(self): if self.settings.compiler.cppstd: check_min_cppstd(self, self._min_cppstd) + minimum_compiler_version = self._compilers_minimum_version.get(str(self.settings.compiler), False) + if minimum_compiler_version and Version(self.settings.compiler.version) < minimum_compiler_version: + raise ConanInvalidConfiguration( + f"Compiler version '{self.settings.compiler.version}' not supported, " + f"minumum is '{minimum_compiler_version}'!" + ) + def source(self): sources = self.conan_data["sources"][self.version] get(self, **sources["runtime"], strip_root=True) @@ -57,6 +77,8 @@ def source(self): def generate(self): tc = CMakeToolchain(self) + if not self.settings.get_safe("compiler.cppstd"): + tc.variables["CMAKE_CXX_STANDARD"] = str(self._min_cppstd) tc.generate() def build(self): @@ -65,6 +87,8 @@ def build(self): cmake.build() sources = self.conan_data["sources"][self.version] get(self, **sources["compiler"], pattern="zserio.jar") + if Version(self.version) >= "2.14.0": + get(self, **sources["compiler"], pattern="cmake/zserio_compiler.cmake") @property def _cmake_module_path(self): @@ -80,8 +104,13 @@ def package(self): copy(self, "*.a", self.build_folder, lib_dir, keep_path=False) copy(self, "zserio.jar", self.build_folder, os.path.join(self.package_folder, "bin")) - copy(self, "zserio_compiler.cmake", self.export_sources_folder, - os.path.join(self.package_folder, self._cmake_module_path)) + if Version(self.version) >= "2.14.0": + # from 2.14.0 the cmake script is available directly in zserio repository + copy(self, "zserio_compiler.cmake", os.path.join(self.build_folder, "cmake"), + os.path.join(self.package_folder, self._cmake_module_path)) + else: + copy(self, "zserio_compiler.cmake", self.export_sources_folder, + os.path.join(self.package_folder, self._cmake_module_path)) def package_info(self): self.cpp_info.libs = ["ZserioCppRuntime"] diff --git a/recipes/zserio/config.yml b/recipes/zserio/config.yml index 319f45f887837f..24ddb8ef2b935f 100644 --- a/recipes/zserio/config.yml +++ b/recipes/zserio/config.yml @@ -1,3 +1,5 @@ versions: + "2.14.0": + folder: all "2.13.0": folder: all