diff --git a/conandata.yml b/conandata.yml index b801e08514..68f123e6af 100644 --- a/conandata.yml +++ b/conandata.yml @@ -14,6 +14,14 @@ requirements: requirements_internal: - "fdm_materials/(latest)@internal/testing" - "cura_private_data/(latest)@internal/testing" +shared_resources: + - "definitions" + - "extruders" + - "images" + - "intent" + - "meshes" + - "quality" + - "variants" urls: default: cloud_api_root: "https://api.ultimaker.com" @@ -51,30 +59,10 @@ pyinstaller: package: "native_cad_plugin" src: "res/bundled_packages" dst: "share/cura/resources/bundled_packages" - cura_resources_definitions: + cura_resources: package: "cura_resources" - src: "res/definitions" - dst: "share/cura/resources/definitions" - cura_resources_extruders: - package: "cura_resources" - src: "res/extruders" - dst: "share/cura/resources/extruders" - cura_resources_intent: - package: "cura_resources" - src: "res/intent" - dst: "share/cura/resources/intent" - cura_resources_meshes: - package: "cura_resources" - src: "res/meshes" - dst: "share/cura/resources/meshes" - cura_resources_quality: - package: "cura_resources" - src: "res/quality" - dst: "share/cura/resources/quality" - cura_resources_variants: - package: "cura_resources" - src: "res/variants" - dst: "share/cura/resources/variants" + src: "res" + dst: "share/cura/resources" cura_private_data: package: "cura_private_data" src: "res" diff --git a/resources/conanfile.py b/resources/conanfile.py index b9b9d49cbe..90f2a852a1 100644 --- a/resources/conanfile.py +++ b/resources/conanfile.py @@ -12,10 +12,9 @@ class CuraResource(ConanFile): name = "cura_resources" license = "" author = "UltiMaker" - url = "https://github.com/Ultimaker/cura-private-data" + url = "https://github.com/Ultimaker/cura" description = "Cura Resources" topics = ("conan", "cura") - exports = "LICENSE*" settings = "os", "compiler", "build_type", "arch" no_copy_source = True @@ -26,31 +25,22 @@ class CuraResource(ConanFile): def export(self): copy(self, pattern="conandata.yml", src=os.path.join(self.recipe_folder, ".."), dst=self.export_folder, keep_path=False) + copy(self, pattern="LICENSE*", src=os.path.join(self.recipe_folder, ".."), dst=self.export_folder, + keep_path=False) update_conandata(self, {"version": self.version}) def export_sources(self): - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "definitions"), - dst=os.path.join(self.export_sources_folder, "definitions")) - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "extruders"), - dst=os.path.join(self.export_sources_folder, "extruders")) - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "images"), - dst=os.path.join(self.export_sources_folder, "images")) - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "intent"), - dst=os.path.join(self.export_sources_folder, "intent")) - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "meshes"), - dst=os.path.join(self.export_sources_folder, "meshes")) - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "quality"), - dst=os.path.join(self.export_sources_folder, "quality")) - copy(self, pattern="*", src=os.path.join(self.recipe_folder, "variants"), - dst=os.path.join(self.export_sources_folder, "variants")) + for shared_resources in self.conan_data["shared_resources"]: + copy(self, pattern="*", src=os.path.join(self.recipe_folder, shared_resources), + dst=os.path.join(self.export_sources_folder, shared_resources)) def validate(self): if Version(self.version) <= Version("4"): raise ConanInvalidConfiguration("Only versions 5+ are support") def layout(self): - self.cpp.source.resdirs = ["definitions", "extruders", "images", "intent", "meshes", "quality", "variants"] - self.cpp.package.resdirs = ["res/definitions", "res/extruders", "res/images", "res/intent", "res/meshes", "res/quality", "res/variants"] + self.cpp.source.resdirs = self.conan_data["shared_resources"] + self.cpp.package.resdirs = [f"res/{res}" for res in self.conan_data["shared_resources"]] def package(self): copy(self, "*", os.path.join(self.export_sources_folder),