Crafter.Graphics/project.json

187 lines
6.6 KiB
JSON

{
"name": "crafter-graphics",
"configurations": [
{
"name": "base",
"implementations": [
"implementations/Crafter.Graphics-Font",
"implementations/Crafter.Graphics-Window",
"implementations/Crafter.Graphics-MouseElement",
"implementations/Crafter.Graphics-Transform2D",
"implementations/Crafter.Graphics-GridElement",
"implementations/Crafter.Graphics-Rendertarget",
"implementations/Crafter.Graphics-Device"
],
"interfaces": [
"interfaces/Crafter.Graphics-Window",
"interfaces/Crafter.Graphics",
"interfaces/Crafter.Graphics-Types",
"interfaces/Crafter.Graphics-Font",
"interfaces/Crafter.Graphics-Animation",
"interfaces/Crafter.Graphics-RenderingElement2D",
"interfaces/Crafter.Graphics-MouseElement",
"interfaces/Crafter.Graphics-Transform2D",
"interfaces/Crafter.Graphics-GridElement",
"interfaces/Crafter.Graphics-Device",
"interfaces/Crafter.Graphics-VulkanTransition",
"interfaces/Crafter.Graphics-Mesh",
"interfaces/Crafter.Graphics-VulkanBuffer",
"interfaces/Crafter.Graphics-RenderingElement3D",
"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",
"interfaces/Crafter.Graphics-Rendertarget"
],
"type": "library"
},
{
"name": "wayland",
"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_WINDOW_WAYLAND"
}
]
},
{
"name": "win32",
"libs": ["kernel32", "user32"],
"extends": ["base"],
"defines": [
{
"name": "CRAFTER_GRAPHICS_WINDOW_WIN32"
}
]
},
{
"name": "vulkan",
"implementations": ["implementations/Crafter.Graphics-Mesh", "implementations/Crafter.Graphics-RenderingElement3D"],
"defines": [
{
"name": "CRAFTER_GRAPHICS_RENDERER_VULKAN"
}
],
"dependencies": [
{
"path":"https://github.com/KhronosGroup/Vulkan-Headers.git",
"type":"include"
},
{
"path":"https://github.com/KhronosGroup/Vulkan-Utility-Libraries.git",
"type":"include"
}
]
},
{
"name": "software",
"defines": [
{
"name": "CRAFTER_GRAPHICS_RENDERER_SOFTWARE"
}
]
},
{
"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"
}
],
"defines": [{ "name": "CRAFTER_TIMING" }]
},
{
"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", "software", "deps"]
},
{
"name": "lib-wayland-timing",
"extends": ["wayland", "software", "deps-timing"]
},
{
"name": "lib-wayland-debug",
"extends": ["wayland", "software", "deps-debug"]
},
{
"name": "lib-wayland-vulkan",
"extends": ["wayland", "vulkan", "deps"],
"libs": ["vulkan"]
},
{
"name": "lib-wayland-vulkan-timing",
"extends": ["wayland", "vulkan", "deps-timing"],
"libs": ["vulkan"]
},
{
"name": "lib-wayland-vulkan-debug",
"extends": ["wayland", "vulkan", "deps-debug"],
"libs": ["vulkan"]
},
{
"name": "lib-win32",
"extends": ["win32", "software", "deps"]
},
{
"name": "lib-win32-timing",
"extends": ["win32", "software", "deps-timing"]
},
{
"name": "lib-win32-debug",
"extends": ["win32", "software", "deps-debug"]
},
{
"name": "lib-win32-vulkan",
"extends": ["win32", "vulkan", "deps"],
"libs": ["vulkan-1"]
},
{
"name": "lib-win32-vulkan-timing",
"extends": ["win32", "vulkan", "deps-timing"],
"libs": ["vulkan-1"]
},
{
"name": "lib-win32-vulkan-debug",
"extends": ["win32", "vulkan", "deps-debug"],
"libs": ["vulkan-1"]
}
]
}