Crafter.Graphics/project.json

130 lines
5.8 KiB
JSON

{
"name": "crafter-graphics",
"configurations": [
{
"name": "base",
"implementations": ["implementations/Crafter.Graphics-Font", "implementations/Crafter.Graphics-Window", "implementations/Crafter.Graphics-MouseElement", "implementations/Crafter.Graphics-Transform", "implementations/Crafter.Graphics-GridElement", "implementations/Crafter.Graphics-Image"],
"interfaces": ["interfaces/Crafter.Graphics-Window", "interfaces/Crafter.Graphics", "interfaces/Crafter.Graphics-Types", "interfaces/Crafter.Graphics-Font", "interfaces/Crafter.Graphics-Image", "interfaces/Crafter.Graphics-Shm", "interfaces/Crafter.Graphics-Animation", "interfaces/Crafter.Graphics-RenderingElement", "interfaces/Crafter.Graphics-MouseElement", "interfaces/Crafter.Graphics-Transform", "interfaces/Crafter.Graphics-GridElement", "interfaces/Crafter.Graphics-VulkanDevice", "interfaces/Crafter.Graphics-VulkanTransition", "interfaces/Crafter.Graphics-Mesh", "interfaces/Crafter.Graphics-VulkanBuffer", "interfaces/Crafter.Graphics-RenderingElement3DVulkan", "interfaces/Crafter.Graphics-DescriptorPoolVulkan", "interfaces/Crafter.Graphics-ShaderVulkan", "interfaces/Crafter.Graphics-PipelineRTVulkan", "interfaces/Crafter.Graphics-ShaderBindingTableVulkan", "interfaces/Crafter.Graphics-ImageVulkan", "interfaces/Crafter.Graphics-SamplerVulkan", "interfaces/Crafter.Graphics-DescriptorSetLayoutVulkan"],
"type": "library"
},
{
"name": "wayland",
"implementations": ["implementations/Crafter.Graphics-Window_wayland", "implementations/Crafter.Graphics-Shm"],
"interfaces": [],
"libs": ["wayland-client", "xkbcommon"],
"c_files": ["lib/xdg-shell-protocol", "lib/wayland-xdg-decoration-unstable-v1-client-protocol", "lib/fractional-scale-v1", "lib/viewporter"],
"extends": ["base"],
"defines": [
{
"name": "CRAFTER_GRAPHICS_WAYLAND"
}
]
},
{
"name": "vulkan",
"implementations": ["implementations/Crafter.Graphics-VulkanDevice", "implementations/Crafter.Graphics-Shm", "implementations/Crafter.Graphics-Window_vulkan", "implementations/Crafter.Graphics-Mesh_vulkan", "implementations/Crafter.Graphics-RenderingElement3DVulkan"],
"interfaces": [],
"libs": ["wayland-client", "xkbcommon", "vulkan"],
"c_files": ["lib/xdg-shell-protocol", "lib/wayland-xdg-decoration-unstable-v1-client-protocol", "lib/fractional-scale-v1", "lib/viewporter"],
"extends": ["base"],
"defines": [
{
"name": "CRAFTER_GRAPHICS_VULKAN"
}
]
},
{
"name": "vulkan-windows",
"implementations": ["implementations/Crafter.Graphics-VulkanDevice", "implementations/Crafter.Graphics-Window_vulkan_windows", "implementations/Crafter.Graphics-Mesh_vulkan", "implementations/Crafter.Graphics-RenderingElement3DVulkan"],
"interfaces": [],
"libs": ["vulkan-1"],
"extends": ["base"],
"defines": [
{
"name": "CRAFTER_GRAPHICS_VULKAN"
}
]
},
{
"name": "deps",
"dependencies": [
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Event.git",
"configuration":"lib"
},
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Math.git",
"configuration":"lib"
}
]
},
{
"name": "deps-timing",
"dependencies": [
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Event.git",
"configuration":"lib-timing"
},
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Math.git",
"configuration":"lib"
}
]
},
{
"name": "deps-debug",
"debug": true,
"dependencies": [
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Event.git",
"pathh":"/home/jorijn/repos/Crafter/Crafter.Event/project.json",
"configuration":"lib-debug"
},
{
"path":"https://forgejo.catcrafts.net/Catcrafts/Crafter.Math.git",
"pathh":"/home/jorijn/repos/Crafter/Crafter.Math/project.json",
"configuration":"lib-debug"
}
]
},
{
"name": "lib-wayland",
"extends": ["wayland", "deps"],
"type": "library"
},
{
"name": "lib-wayland-timing",
"extends": ["wayland", "deps-timing"],
"type": "library",
"defines": [{ "name": "CRAFTER_TIMING" }]
},
{
"name": "lib-wayland-debug",
"type": "library",
"extends": ["wayland", "deps-debug"]
},
{
"name": "lib-vulkan",
"extends": ["vulkan", "deps"],
"type": "library"
},
{
"name": "lib-vulkan-windows",
"extends": ["vulkan-windows", "deps"],
"type": "library",
"target": "x86_64-w64-mingw32",
"march": "x86-64"
},
{
"name": "lib-vulkan-timing",
"extends": ["vulkan", "deps-timing"],
"type": "library",
"defines": [{ "name": "CRAFTER_TIMING" }]
},
{
"name": "lib-vulkan-debug",
"type": "library",
"extends": ["vulkan", "deps-debug"]
}
]
}