mirror of
https://github.com/feather-wallet/feather.git
synced 2024-12-23 03:59:29 +00:00
133700160a
Co-Authored-By: tobtoht <thotbot@protonmail.com>
2015 lines
71 KiB
JSON
2015 lines
71 KiB
JSON
{
|
|
"module": "gui",
|
|
"depends": [
|
|
"core-private",
|
|
"network"
|
|
],
|
|
"testDir": "../../config.tests",
|
|
|
|
"commandline": {
|
|
"options": {
|
|
"accessibility": "boolean",
|
|
"angle": "boolean",
|
|
"combined-angle-lib": "boolean",
|
|
"direct2d": "boolean",
|
|
"directfb": "boolean",
|
|
"directwrite": "boolean",
|
|
"egl": "boolean",
|
|
"eglfs": "boolean",
|
|
"evdev": "boolean",
|
|
"fontconfig": "boolean",
|
|
"freetype": { "type": "enum", "values": [ "no", "qt", "system" ] },
|
|
"gbm": "boolean",
|
|
"gif": "boolean",
|
|
"harfbuzz": { "type": "enum", "values": [ "no", "qt", "system" ] },
|
|
"ico": "boolean",
|
|
"imf": { "type": "boolean", "name": "qqnx_imf" },
|
|
"kms": "boolean",
|
|
"lgmon": "boolean",
|
|
"libinput": "boolean",
|
|
"libjpeg": { "type": "enum", "values": [ "no", "qt", "system" ] },
|
|
"libmd4c": { "type": "enum", "values": [ "no", "qt", "system" ] },
|
|
"libpng": { "type": "enum", "values": [ "no", "qt", "system" ] },
|
|
"linuxfb": "boolean",
|
|
"mtdev": "boolean",
|
|
"opengl": { "type": "optionalString", "values": [ "no", "yes", "desktop", "es2", "dynamic" ] },
|
|
"opengl-es-2": { "type": "void", "name": "opengl", "value": "es2" },
|
|
"opengles3": "boolean",
|
|
"openvg": "boolean",
|
|
"qpa": { "type": "string", "name": "qpa_default_platform" },
|
|
"qpa-platform-guard": "boolean",
|
|
"sm": { "type": "boolean", "name": "sessionmanager" },
|
|
"tslib": "boolean",
|
|
"vulkan": "boolean",
|
|
"xcb": "boolean",
|
|
"bundled-xcb-xinput": "boolean",
|
|
"xcb-native-painting": "boolean",
|
|
"xcb-xlib": "boolean",
|
|
"xkbcommon": "boolean"
|
|
}
|
|
},
|
|
|
|
"libraries": {
|
|
"atspi": {
|
|
"label": "atspi",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "atspi-2" }
|
|
]
|
|
},
|
|
"bcm_host": {
|
|
"export": "",
|
|
"headers": ["bcm_host.h"],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "bcm_host" },
|
|
{ "type": "makeSpec", "spec": "BCM_HOST" }
|
|
]
|
|
},
|
|
"dxguid": {
|
|
"label": "DirectX GUID",
|
|
"sources": [
|
|
"-ldxguid"
|
|
]
|
|
},
|
|
"dxgi": {
|
|
"label": "DirectX GI",
|
|
"headers": "dxgi.h",
|
|
"sources": [
|
|
"-ldxgi"
|
|
]
|
|
},
|
|
"dxgi1_2": {
|
|
"label": "DirectX GI 1.2",
|
|
"test": {
|
|
"main": [
|
|
"// fails with mingw-w64 5.4.0 - declaration is missing from header",
|
|
"IDXGISurface1 *surface;",
|
|
"(void) surface;"
|
|
]
|
|
},
|
|
"headers": "dxgi1_2.h",
|
|
"sources": [
|
|
"-ldxgi"
|
|
]
|
|
},
|
|
"d3d9": {
|
|
"label": "Direct3D 9",
|
|
"headers": "d3d9.h",
|
|
"sources": [
|
|
"-ld3d9"
|
|
]
|
|
},
|
|
"d3d11": {
|
|
"label": "Direct3D 11",
|
|
"headers": "d3d11.h",
|
|
"sources": [
|
|
"-ld3d11"
|
|
]
|
|
},
|
|
"d3d11_1": {
|
|
"label": "Direct3D 11.1",
|
|
"headers": "d3d11_1.h",
|
|
"sources": [
|
|
"-ld3d11"
|
|
]
|
|
},
|
|
"d3dcompiler": {
|
|
"label": "Direct3D Shader Compiler Library",
|
|
"headers": "d3dcompiler.h",
|
|
"sources": [
|
|
"-ld3dcompiler"
|
|
]
|
|
},
|
|
"d2d1": {
|
|
"label": "Direct2D 1",
|
|
"headers": [ "d2d1.h", "d2d1helper.h" ],
|
|
"sources": [
|
|
"-ld2d1"
|
|
]
|
|
},
|
|
"d2d1_1": {
|
|
"label": "Direct2D 1.1",
|
|
"test": {
|
|
"main": [
|
|
"ID2D1Factory1 *d2dFactory;",
|
|
"D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, &d2dFactory);"
|
|
]
|
|
},
|
|
"headers": [ "d2d1_1.h", "d2d1_1helper.h" ],
|
|
"sources": [
|
|
"-ld2d1"
|
|
]
|
|
},
|
|
"directfb": {
|
|
"label": "DirectFB",
|
|
"test": {
|
|
"tail": [
|
|
"#ifdef __typeof__",
|
|
"# error DirectFB headers are unclean and cannot compile",
|
|
"#endif"
|
|
]
|
|
},
|
|
"headers": "directfb.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "directfb" }
|
|
]
|
|
},
|
|
"dwrite": {
|
|
"label": "DirectWrite",
|
|
"test": {
|
|
"main": [
|
|
"IDWriteFactory *factory = 0;",
|
|
"DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED, __uuidof(IDWriteFactory),",
|
|
" (IUnknown **)(&factory));"
|
|
]
|
|
},
|
|
"headers": "dwrite.h",
|
|
"sources": [
|
|
"-ldwrite"
|
|
]
|
|
},
|
|
"dwrite_1": {
|
|
"label": "DirectWrite 1",
|
|
"headers": "dwrite_1.h",
|
|
"sources": [
|
|
"-ldwrite"
|
|
]
|
|
},
|
|
"dwrite_2": {
|
|
"label": "DirectWrite 2",
|
|
"test": {
|
|
"main": [
|
|
"IUnknown *factory = 0;",
|
|
"(void)(size_t(DWRITE_E_NOCOLOR) + sizeof(IDWriteFontFace2));",
|
|
"DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED, __uuidof(IDWriteFactory2),",
|
|
" &factory);"
|
|
]
|
|
},
|
|
"headers": "dwrite_2.h",
|
|
"sources": [
|
|
"-ldwrite"
|
|
]
|
|
},
|
|
"drm": {
|
|
"label": "KMS",
|
|
"test": {
|
|
"head": [
|
|
"#include <stdlib.h>",
|
|
"#include <stdint.h>",
|
|
"extern \"C\" {"
|
|
],
|
|
"tail": [
|
|
"}"
|
|
],
|
|
"main": "(void) drmModeGetCrtc(0, 0);"
|
|
},
|
|
"headers": [ "xf86drmMode.h", "xf86drm.h" ],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "libdrm" },
|
|
{ "libs": "-ldrm", "condition": "!config.integrity" },
|
|
{ "libs": "-ldrm-nvdc -lposix -livfs -lnvll -lnvdc -lnvrm -lnvrm_graphics -lnvos -lnvtegrahv", "condition": "config.integrity" }
|
|
]
|
|
},
|
|
"egl": {
|
|
"label": "EGL",
|
|
"test": {
|
|
"main": [
|
|
"EGLint x = 0; EGLDisplay dpy = 0; EGLContext ctx = 0;",
|
|
"eglDestroyContext(dpy, ctx);"
|
|
]
|
|
},
|
|
"headers": "EGL/egl.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "egl" },
|
|
{ "type": "makeSpec", "spec": "EGL" }
|
|
]
|
|
},
|
|
"freetype": {
|
|
"label": "FreeType",
|
|
"test": {
|
|
"tail": [
|
|
"#include FT_FREETYPE_H",
|
|
"#if ((FREETYPE_MAJOR*10000 + FREETYPE_MINOR*100 + FREETYPE_PATCH) < 20200)",
|
|
"# error This version of freetype is too old.",
|
|
"#endif"
|
|
],
|
|
"main": [
|
|
"FT_Face face = 0;"
|
|
]
|
|
},
|
|
"headers": "ft2build.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "freetype2" },
|
|
{ "type": "freetype", "libs": "-lfreetype", "condition": "!config.wasm" },
|
|
{ "libs": "-s USE_FREETYPE=1", "condition": "config.wasm" },
|
|
{ "libs": "-lfreetype" }
|
|
],
|
|
"use": [
|
|
{ "lib": "zlib", "condition": "features.system-zlib" }
|
|
]
|
|
},
|
|
"fontconfig": {
|
|
"label": "Fontconfig",
|
|
"test": {
|
|
"tail": [
|
|
"#ifndef FC_RGBA_UNKNOWN",
|
|
"# error This version of fontconfig is too old, it is missing the FC_RGBA_UNKNOWN define",
|
|
"#endif"
|
|
],
|
|
"main": [
|
|
"FcPattern *pattern = 0;"
|
|
]
|
|
},
|
|
"headers": "fontconfig/fontconfig.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "fontconfig" },
|
|
{ "type": "freetype", "libs": "-lfontconfig" }
|
|
],
|
|
"use": "freetype"
|
|
},
|
|
"gbm": {
|
|
"label": "GBM",
|
|
"test": {
|
|
"head": [
|
|
"#include <stdlib.h>",
|
|
"#include <stdint.h>",
|
|
"extern \"C\" {"
|
|
],
|
|
"tail": [
|
|
"}"
|
|
],
|
|
"main": "gbm_surface *surface = 0;"
|
|
},
|
|
"headers": "gbm.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "gbm" }
|
|
]
|
|
},
|
|
"harfbuzz": {
|
|
"label": "HarfBuzz",
|
|
"test": {
|
|
"tail": [
|
|
"#if !HB_VERSION_ATLEAST(1, 6, 0)",
|
|
"# error This version of harfbuzz is too old.",
|
|
"#endif"
|
|
],
|
|
"main": [
|
|
"hb_buffer_t *buffer = hb_buffer_create();",
|
|
"const uint16_t string[] = { 'A', 'b', 'c' };",
|
|
"hb_buffer_add_utf16(buffer, string, 3, 0, 3);",
|
|
"hb_buffer_guess_segment_properties(buffer);",
|
|
"hb_buffer_set_flags(buffer, hb_buffer_flags_t(HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES));",
|
|
"hb_buffer_destroy(buffer);"
|
|
]
|
|
},
|
|
"headers": "harfbuzz/hb.h",
|
|
"sources": [
|
|
"-lharfbuzz"
|
|
]
|
|
},
|
|
"imf": {
|
|
"label": "IMF",
|
|
"export": "",
|
|
"test": {
|
|
"main": "imf_client_init();"
|
|
},
|
|
"headers": "imf/imf_client.h",
|
|
"sources": [
|
|
"-linput_client"
|
|
]
|
|
},
|
|
"lgmon": {
|
|
"label": "lgmon",
|
|
"test": {
|
|
"main": "lgmon_supported(getpid());"
|
|
},
|
|
"headers": "lgmon.h",
|
|
"sources": [
|
|
"-llgmon"
|
|
]
|
|
},
|
|
"libinput": {
|
|
"label": "libinput",
|
|
"test": {
|
|
"main": "libinput_udev_create_context(NULL, NULL, NULL);"
|
|
},
|
|
"headers": "libinput.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "libinput" }
|
|
]
|
|
},
|
|
"integrityhid": {
|
|
"label": "integrityhid",
|
|
"test": {
|
|
"head": [
|
|
"#include <stdlib.h>",
|
|
"#include <stdint.h>"
|
|
],
|
|
"main": [
|
|
"HIDDriver *driver;",
|
|
"uintptr_t devicecontext;",
|
|
"uint32_t device_id;",
|
|
"gh_hid_enum_devices(driver, &device_id, &devicecontext);"
|
|
]
|
|
},
|
|
"headers": "device/hiddriver.h",
|
|
"sources": [
|
|
{ "libs": "-lhiddev -lusbhid -lusb" }
|
|
]
|
|
},
|
|
"libjpeg": {
|
|
"label": "libjpeg",
|
|
"test": {
|
|
"head": [
|
|
"#include <sys/types.h>",
|
|
"#include <stdio.h>",
|
|
"extern \"C\" {"
|
|
],
|
|
"tail": [
|
|
"}",
|
|
"",
|
|
"j_compress_ptr cinfo;"
|
|
],
|
|
"main": "jpeg_create_compress(cinfo);"
|
|
},
|
|
"headers": "jpeglib.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "libjpeg" },
|
|
{ "libs": "-llibjpeg", "condition": "config.msvc" },
|
|
"-ljpeg"
|
|
]
|
|
},
|
|
"libmd4c": {
|
|
"label": "libmd4c",
|
|
"test": {
|
|
"main": "md_parse(\"hello\", 5, nullptr, nullptr);"
|
|
},
|
|
"headers": "md4c.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "md4c" },
|
|
{ "libs": "-lmd4c" }
|
|
]
|
|
},
|
|
"libpng": {
|
|
"label": "libpng",
|
|
"test": {
|
|
"main": "(void) png_create_read_struct(PNG_LIBPNG_VER_STRING,0,0,0);"
|
|
},
|
|
"headers": "png.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "libpng" },
|
|
{ "libs": "-llibpng16", "condition": "config.msvc" },
|
|
{ "libs": "-llibpng", "condition": "config.msvc" },
|
|
{ "libs": "-lpng16", "condition": "!config.msvc" },
|
|
{ "libs": "-lpng", "condition": "!config.msvc" },
|
|
{ "libs": "-s USE_LIBPNG=1", "condition": "config.wasm" }
|
|
],
|
|
"use": [
|
|
{ "lib": "zlib", "condition": "features.system-zlib" }
|
|
]
|
|
},
|
|
"mtdev": {
|
|
"label": "mtdev",
|
|
"test": {
|
|
"main": [
|
|
"mtdev m;",
|
|
"mtdev_open(&m, 0);"
|
|
]
|
|
},
|
|
"headers": "mtdev.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "mtdev" }
|
|
]
|
|
},
|
|
"opengl": {
|
|
"label": "Desktop OpenGL",
|
|
"test": {
|
|
"head": [
|
|
"#ifdef __APPLE__",
|
|
"# include <OpenGL/gl.h>",
|
|
"#else",
|
|
"# define GL_GLEXT_PROTOTYPES",
|
|
"#endif"
|
|
],
|
|
"main": [
|
|
"glBegin(GL_TRIANGLES);",
|
|
" glVertex2f(20.0f, 10.0f);",
|
|
" glVertex2f(10.0f, 30.0f);",
|
|
" glVertex2f(20.0f, 50.0f);",
|
|
"glEnd();"
|
|
]
|
|
},
|
|
"headers": [
|
|
{
|
|
"condition": "!config.darwin",
|
|
"headers": "GL/gl.h"
|
|
}
|
|
],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "gl", "condition": "!config.darwin" },
|
|
{ "type": "makeSpec", "spec": "OPENGL" }
|
|
]
|
|
},
|
|
"opengl_es2": {
|
|
"label": "OpenGL ES 2.0",
|
|
"test": {
|
|
"head": [
|
|
"#ifdef __APPLE__",
|
|
"# include <OpenGLES/ES2/gl.h>",
|
|
"#else",
|
|
"# define GL_GLEXT_PROTOTYPES",
|
|
"#endif"
|
|
],
|
|
"main": [
|
|
"glUniform1f(1, GLfloat(1.0));",
|
|
"glClear(GL_COLOR_BUFFER_BIT);"
|
|
]
|
|
},
|
|
"headers": [
|
|
{
|
|
"condition": "!config.darwin",
|
|
"headers": "GLES2/gl2.h"
|
|
}
|
|
],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "glesv2", "condition": "!config.darwin" },
|
|
{ "type": "makeSpec", "spec": "OPENGL_ES2" }
|
|
]
|
|
},
|
|
"openvg": {
|
|
"label": "OpenVG",
|
|
"test": {
|
|
"main": "VGint i = 2; vgFlush();"
|
|
},
|
|
"headers": "VG/openvg.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "vg" },
|
|
{ "type": "makeSpec", "spec": "OPENVG" }
|
|
]
|
|
},
|
|
"tslib": {
|
|
"label": "tslib",
|
|
"test": {
|
|
"main": "ts_setup(nullptr, 0);"
|
|
},
|
|
"headers": "tslib.h",
|
|
"sources": [
|
|
"-lts"
|
|
]
|
|
},
|
|
"v4l2": {
|
|
"label": "V4L2",
|
|
"test": {
|
|
"head": [
|
|
"#include <cstddef>",
|
|
"extern \"C\" {"
|
|
],
|
|
"tail": [
|
|
"}"
|
|
],
|
|
"main": [
|
|
"v4l2_format fmt;",
|
|
"media_pad *pad = nullptr;",
|
|
"media_device *device = media_device_new(\"/dev/media\");",
|
|
"v4l2_subdev_set_format(nullptr, nullptr, 0, V4L2_SUBDEV_FORMAT_ACTIVE);"
|
|
]
|
|
},
|
|
"headers": [ "mediactl/mediactl.h", "mediactl/v4l2subdev.h" ],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "libv4l2 libmediactl" },
|
|
"-lmediactl -lv4l2 -lv4l2subdev"
|
|
]
|
|
},
|
|
"vulkan": {
|
|
"label": "Vulkan",
|
|
"test": {
|
|
"comment": "Note: Qt does not rely on linking to a Vulkan library directly.",
|
|
"tail": [
|
|
"// The pData parameter has changed from uint32_t* to void* at some point.",
|
|
"// Ensure the headers have the updated one to prevent compile errors later on.",
|
|
"PFN_vkCmdUpdateBuffer cmdUpdBuf;",
|
|
"void testUpdateBuffer(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize dataSize, const void* pData)",
|
|
"{",
|
|
" cmdUpdBuf(commandBuffer, dstBuffer, dstOffset, dataSize, pData);",
|
|
"}"
|
|
],
|
|
"main": [
|
|
"VkInstanceCreateInfo info;",
|
|
"testUpdateBuffer(0, 0, 0, 0, 0);"
|
|
]
|
|
},
|
|
"headers": "vulkan/vulkan.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "vulkan" },
|
|
{ "type": "makeSpec", "spec": "VULKAN" }
|
|
]
|
|
},
|
|
"wayland_server": {
|
|
"label": "Wayland Server",
|
|
"test": {
|
|
"main": "wl_display_create();"
|
|
},
|
|
"headers": "wayland-server.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "wayland-server" }
|
|
]
|
|
},
|
|
"xlib": {
|
|
"label": "XLib",
|
|
"test": {
|
|
"main": [
|
|
"Display *d = XOpenDisplay(NULL);",
|
|
"XCloseDisplay(d);"
|
|
]
|
|
},
|
|
"headers": "X11/Xlib.h",
|
|
"sources": [
|
|
{ "type": "makeSpec", "spec": "X11" }
|
|
]
|
|
},
|
|
"x11sm": {
|
|
"label": "X11 session management",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "sm ice" }
|
|
]
|
|
},
|
|
"xcb": {
|
|
"label": "XCB >= 1.11",
|
|
"test": {
|
|
"main": [
|
|
"int primaryScreen = 0;",
|
|
"(void)xcb_connect(\"\", &primaryScreen);",
|
|
"/* XCB_PACKED define was added in libxcb 1.11 */",
|
|
"#ifdef XCB_PACKED",
|
|
" return 0;",
|
|
"#else",
|
|
" return -1;",
|
|
"#endif"
|
|
]
|
|
},
|
|
"headers": "xcb/xcb.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb >= 1.11" },
|
|
"-lxcb"
|
|
]
|
|
},
|
|
"xcb_icccm": {
|
|
"label": "XCB ICCCM >= 0.3.9",
|
|
"headers": "xcb/xcb_icccm.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-icccm >= 0.3.9" },
|
|
"-lxcb-icccm"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_util": {
|
|
"label": "XCB Util >= 0.3.9",
|
|
"headers": "xcb/xcb_util.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-util >= 0.3.9" },
|
|
"-lxcb-util"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_image": {
|
|
"label": "XCB Image >= 0.3.9",
|
|
"headers": "xcb/xcb_image.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-image >= 0.3.9" },
|
|
"-lxcb-image"
|
|
],
|
|
"use": "xcb_shm xcb_util xcb"
|
|
},
|
|
"xcb_keysyms": {
|
|
"label": "XCB Keysyms >= 0.3.9",
|
|
"headers": "xcb/xcb_keysyms.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-keysyms >= 0.3.9" },
|
|
"-lxcb-keysyms"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_renderutil": {
|
|
"label": "XCB Renderutil >= 0.3.9",
|
|
"headers": "xcb/xcb_renderutil.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-renderutil >= 0.3.9" },
|
|
"-lxcb-render-util"
|
|
],
|
|
"use": "xcb xcb_render"
|
|
},
|
|
"xcb_randr": {
|
|
"label": "XCB RandR",
|
|
"headers": "xcb/randr.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-randr" },
|
|
"-lxcb-randr"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_shape": {
|
|
"label": "XCB Shape",
|
|
"headers": "xcb/shape.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-shape" },
|
|
"-lxcb-shape"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_shm": {
|
|
"label": "XCB SHM",
|
|
"headers": "xcb/shm.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-shm" },
|
|
"-lxcb-shm"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_sync": {
|
|
"label": "XCB Sync",
|
|
"headers": "xcb/sync.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-sync" },
|
|
"-lxcb-sync"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_xfixes": {
|
|
"label": "XCB Xfixes",
|
|
"headers": "xcb/xfixes.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-xfixes" },
|
|
"-lxcb-xfixes"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_xinerama": {
|
|
"label": "XCB Xinerama",
|
|
"headers": "xcb/xinerama.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-xinerama" },
|
|
"-lxcb-xinerama"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_xlib": {
|
|
"label": "XCB Xlib",
|
|
"test": {
|
|
"main": "(void) XGetXCBConnection((Display *)0);"
|
|
},
|
|
"headers": "X11/Xlib-xcb.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "x11-xcb" },
|
|
"-lX11-xcb"
|
|
],
|
|
"use": "xcb xlib"
|
|
},
|
|
"xcb_xkb": {
|
|
"label": "XCB XKB",
|
|
"headers": "xcb/xkb.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-xkb" },
|
|
"-lxcb-xkb"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_render": {
|
|
"label": "XCB XRender",
|
|
"headers": "xcb/render.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-render" },
|
|
"-lxcb-render"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_glx": {
|
|
"label": "XCB GLX",
|
|
"test": {
|
|
"main": [
|
|
"xcb_connection_t *connection = 0;",
|
|
"xcb_generic_error_t *error = 0;",
|
|
"xcb_glx_query_version_cookie_t xglx_query_cookie = xcb_glx_query_version(",
|
|
" connection, XCB_GLX_MAJOR_VERSION, XCB_GLX_MINOR_VERSION);",
|
|
"xcb_glx_query_version_reply(connection, xglx_query_cookie, &error);"
|
|
]
|
|
},
|
|
"headers": "xcb/glx.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-glx" },
|
|
"-lxcb-glx"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xcb_xinput": {
|
|
"label": "XCB XInput",
|
|
"test": {
|
|
"main": [
|
|
"xcb_connection_t *connection = 0;",
|
|
"xcb_generic_error_t *error = 0;",
|
|
"xcb_input_xi_query_version_cookie_t xinput_query_cookie = xcb_input_xi_query_version(",
|
|
" connection, XCB_INPUT_MAJOR_VERSION, XCB_INPUT_MINOR_VERSION);",
|
|
"xcb_input_xi_query_version_reply(connection, xinput_query_cookie, &error);"
|
|
]
|
|
},
|
|
"headers": "xcb/xinput.h",
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xcb-xinput >= 1.12" },
|
|
"-lxcb-xinput"
|
|
],
|
|
"use": "xcb"
|
|
},
|
|
"xkbcommon": {
|
|
"label": "xkbcommon >= 0.5.0",
|
|
"test": {
|
|
"main": "xkb_context_new(XKB_CONTEXT_NO_FLAGS);"
|
|
},
|
|
"headers": [ "xkbcommon/xkbcommon.h" ],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xkbcommon >= 0.5.0" },
|
|
"-lxkbcommon"
|
|
]
|
|
},
|
|
"xkbcommon_x11": {
|
|
"label": "xkbcommon-x11",
|
|
"test": {
|
|
"main": "xkb_x11_setup_xkb_extension_flags flag = XKB_X11_SETUP_XKB_EXTENSION_NO_FLAGS;"
|
|
},
|
|
"headers": [ "xkbcommon/xkbcommon-x11.h" ],
|
|
"sources": [
|
|
{ "type": "pkgConfig", "args": "xkbcommon-x11" },
|
|
"-lxkbcommon -lxkbcommon-x11"
|
|
]
|
|
},
|
|
"xrender": {
|
|
"label": "XRender for native painting",
|
|
"test": {
|
|
"tail": [
|
|
"#if RENDER_MAJOR == 0 && RENDER_MINOR < 5",
|
|
"# error Required Xrender version 0.6 not found.",
|
|
"#endif"
|
|
],
|
|
"main": "XRenderPictFormat *format = 0;"
|
|
},
|
|
"headers": "X11/extensions/Xrender.h",
|
|
"sources": [
|
|
"-lXrender"
|
|
],
|
|
"use": "xlib"
|
|
}
|
|
},
|
|
|
|
"tests": {
|
|
"angle_d3d11_qdtd": {
|
|
"label": "D3D11_QUERY_DATA_TIMESTAMP_DISJOINT",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": "d3d11.h",
|
|
"main": [
|
|
"D3D11_QUERY_DATA_TIMESTAMP_DISJOINT qdtd;",
|
|
"(void) qdtd;"
|
|
]
|
|
}
|
|
},
|
|
"fxc": {
|
|
"label": "Direct3D Shader Compiler",
|
|
"type": "fxc",
|
|
"log": "value"
|
|
},
|
|
"drm_atomic": {
|
|
"label": "DRM Atomic API",
|
|
"type": "compile",
|
|
"test": {
|
|
"head": [
|
|
"#include <stdlib.h>",
|
|
"#include <stdint.h>",
|
|
"extern \"C\" {"
|
|
],
|
|
"include": [
|
|
"xf86drmMode.h",
|
|
"xf86drm.h"
|
|
],
|
|
"tail": [
|
|
"}"
|
|
],
|
|
"main": "drmModeAtomicReq *request;"
|
|
},
|
|
"use": "drm"
|
|
},
|
|
"egl-x11": {
|
|
"label": "EGL on X11",
|
|
"type": "compile",
|
|
"test": {
|
|
"head": [
|
|
"// Check if EGL is compatible with X. Some EGL implementations, typically on",
|
|
"// embedded devices, are not intended to be used together with X. EGL support",
|
|
"// has to be disabled in plugins like xcb in this case since the native display,",
|
|
"// window and pixmap types will be different than what an X-based platform",
|
|
"// plugin would expect."
|
|
],
|
|
"include": [ "EGL/egl.h", "X11/Xlib.h" ],
|
|
"main": [
|
|
"Display *dpy = EGL_DEFAULT_DISPLAY;",
|
|
"EGLNativeDisplayType egldpy = XOpenDisplay(\"\");",
|
|
"dpy = egldpy;",
|
|
"EGLNativeWindowType w = XCreateWindow(dpy, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);",
|
|
"XDestroyWindow(dpy, w);",
|
|
"XCloseDisplay(dpy);"
|
|
]
|
|
},
|
|
"use": "egl xlib"
|
|
},
|
|
"egl-brcm": {
|
|
"label": "Broadcom EGL (Raspberry Pi)",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "EGL/egl.h", "bcm_host.h" ],
|
|
"main": "vc_dispmanx_display_open(0);"
|
|
},
|
|
"use": "egl bcm_host"
|
|
},
|
|
"egl-egldevice": {
|
|
"label": "EGLDevice",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "EGL/egl.h", "EGL/eglext.h" ],
|
|
"main": [
|
|
"EGLDeviceEXT device = 0;",
|
|
"EGLStreamKHR stream = 0;",
|
|
"EGLOutputLayerEXT layer = 0;",
|
|
"(void) EGL_DRM_CRTC_EXT;"
|
|
]
|
|
},
|
|
"use": "egl"
|
|
},
|
|
"egl-mali": {
|
|
"label": "Mali EGL",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "EGL/fbdev_window.h", "EGL/egl.h", "GLES2/gl2.h" ],
|
|
"main": "fbdev_window *w = 0;"
|
|
},
|
|
"use": "egl"
|
|
},
|
|
"egl-mali-2": {
|
|
"label": "Mali 2 EGL",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "EGL/egl.h", "GLES2/gl2.h" ],
|
|
"main": "mali_native_window *w = 0;"
|
|
},
|
|
"use": "egl"
|
|
},
|
|
"egl-viv": {
|
|
"label": "i.Mx6 EGL",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "EGL/egl.h", "EGL/eglvivante.h" ],
|
|
"main": [
|
|
"#ifdef __INTEGRITY",
|
|
"fbGetDisplay();",
|
|
"#else",
|
|
"// Do not rely on fbGetDisplay(), since the signature has changed over time.",
|
|
"// Stick to fbGetDisplayByIndex().",
|
|
"fbGetDisplayByIndex(0);",
|
|
"#endif"
|
|
],
|
|
"qmake": [
|
|
"DEFINES += EGL_API_FB=1",
|
|
"!integrity: DEFINES += LINUX=1"
|
|
]
|
|
},
|
|
"use": "egl"
|
|
},
|
|
"egl-openwfd": {
|
|
"label": "OpenWFD EGL",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "wfd.h" ],
|
|
"main": [
|
|
"wfdEnumerateDevices(nullptr, 0, nullptr);"
|
|
]
|
|
},
|
|
"use": "egl"
|
|
},
|
|
"egl-rcar": {
|
|
"label": "RCAR EGL",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "EGL/egl.h" ],
|
|
"tail": [
|
|
"extern \"C\" {",
|
|
"extern unsigned long PVRGrfxServerInit(void);",
|
|
"}"
|
|
],
|
|
"main": [
|
|
"PVRGrfxServerInit();"
|
|
]
|
|
},
|
|
"use": "egl opengl_es2"
|
|
},
|
|
"evdev": {
|
|
"label": "evdev",
|
|
"type": "compile",
|
|
"test": {
|
|
"head": [
|
|
"#if defined(__FreeBSD__)",
|
|
"# include <dev/evdev/input.h>",
|
|
"#else",
|
|
"# include <linux/input.h>",
|
|
"# include <linux/kd.h>",
|
|
"#endif",
|
|
"enum {",
|
|
" e1 = ABS_PRESSURE,",
|
|
" e2 = ABS_X,",
|
|
" e3 = REL_X,",
|
|
" e4 = SYN_REPORT,",
|
|
"};"
|
|
],
|
|
"main": [
|
|
"input_event buf[32];",
|
|
"(void) buf;"
|
|
]
|
|
}
|
|
},
|
|
"integrityfb": {
|
|
"label": "INTEGRITY framebuffer",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": "device/fbdriver.h",
|
|
"main": "FBDriver *driver = 0;"
|
|
}
|
|
},
|
|
"libinput_axis_api": {
|
|
"label": "axis API in libinput",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": "libinput.h",
|
|
"main": "libinput_event_pointer_has_axis(nullptr, LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL);"
|
|
},
|
|
"use": "libinput"
|
|
},
|
|
"linuxfb": {
|
|
"label": "LinuxFB",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": [ "linux/fb.h", "sys/kd.h", "sys/ioctl.h" ],
|
|
"main": [
|
|
"fb_fix_screeninfo finfo;",
|
|
"fb_var_screeninfo vinfo;",
|
|
"int fd = 3;",
|
|
"ioctl(fd, FBIOGET_FSCREENINFO, &finfo);",
|
|
"ioctl(fd, FBIOGET_VSCREENINFO, &vinfo);"
|
|
]
|
|
}
|
|
},
|
|
"opengles3": {
|
|
"label": "OpenGL ES 3.0",
|
|
"type": "compile",
|
|
"test": {
|
|
"head": [
|
|
"#ifdef __APPLE__",
|
|
"# include <OpenGLES/ES3/gl.h>",
|
|
"#else",
|
|
"# define GL_GLEXT_PROTOTYPES",
|
|
"# include <GLES3/gl3.h>",
|
|
"#endif"
|
|
],
|
|
"main": [
|
|
"static GLfloat f[6];",
|
|
"glGetStringi(GL_EXTENSIONS, 0);",
|
|
"glReadBuffer(GL_COLOR_ATTACHMENT1);",
|
|
"glUniformMatrix2x3fv(0, 0, GL_FALSE, f);",
|
|
"glMapBufferRange(GL_ARRAY_BUFFER, 0, 0, GL_MAP_READ_BIT);"
|
|
]
|
|
},
|
|
"comment": [
|
|
"The library is expected to be the same as in ES 2.0 (libGLESv2).",
|
|
"The difference is the header and the presence of the functions in",
|
|
"the library."
|
|
],
|
|
"use": "opengl_es2"
|
|
},
|
|
"opengles31": {
|
|
"label": "OpenGL ES 3.1",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": "GLES3/gl31.h",
|
|
"main": [
|
|
"glDispatchCompute(1, 1, 1);",
|
|
"glProgramUniform1i(0, 0, 0);"
|
|
]
|
|
},
|
|
"use": "opengl_es2"
|
|
},
|
|
"opengles32": {
|
|
"label": "OpenGL ES 3.2",
|
|
"type": "compile",
|
|
"test": {
|
|
"include": "GLES3/gl32.h",
|
|
"main": "glFramebufferTexture(GL_TEXTURE_2D, GL_DEPTH_STENCIL_ATTACHMENT, 1, 0);"
|
|
},
|
|
"use": "opengl_es2"
|
|
},
|
|
"qpa_default_platform": {
|
|
"label": "default QPA platform",
|
|
"type": "qpaDefaultPlatform",
|
|
"log": "value"
|
|
},
|
|
"xcb_syslibs": {
|
|
"label": "XCB (extensions)",
|
|
"type": "compile",
|
|
"test": {
|
|
"head": [
|
|
"// xkb.h is using a variable called 'explicit', which is a reserved keyword in C++",
|
|
"#define explicit dont_use_cxx_explicit"
|
|
],
|
|
"tail": "#undef explicit",
|
|
"include": [
|
|
"xcb/xcb.h",
|
|
"xcb/xcb_util.h",
|
|
"xcb/xcb_image.h",
|
|
"xcb/xcb_keysyms.h",
|
|
"xcb/randr.h",
|
|
"xcb/render.h",
|
|
"xcb/shape.h",
|
|
"xcb/shm.h",
|
|
"xcb/sync.h",
|
|
"xcb/xfixes.h",
|
|
"xcb/xinerama.h",
|
|
"xcb/xcb_icccm.h",
|
|
"xcb/xcb_renderutil.h",
|
|
"xcb/xkb.h"
|
|
],
|
|
"main": [
|
|
"int primaryScreen = 0;",
|
|
"xcb_connection_t *c = xcb_connect(\"\", &primaryScreen);",
|
|
|
|
"/* RENDER */",
|
|
"xcb_generic_error_t *error = nullptr;",
|
|
"xcb_render_query_pict_formats_cookie_t formatsCookie =",
|
|
" xcb_render_query_pict_formats(c);",
|
|
"xcb_render_query_pict_formats_reply_t *formatsReply =",
|
|
" xcb_render_query_pict_formats_reply(c, formatsCookie, &error);",
|
|
|
|
"/* RENDERUTIL: xcb_renderutil.h include won't compile unless version >= 0.3.9 */",
|
|
"xcb_render_util_find_standard_format(nullptr, XCB_PICT_STANDARD_ARGB_32);",
|
|
|
|
"/* XKB: This takes more arguments in xcb-xkb < 1.11 */",
|
|
"xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof(nullptr, 0, 0, 0, 0, 0, 0, 0, 0);"
|
|
]
|
|
},
|
|
"use": "xcb_icccm xcb_util xcb_image xcb_keysyms xcb_randr xcb_render xcb_renderutil xcb_shape xcb_shm xcb_sync xcb_xfixes xcb_xinerama xcb_xkb xcb"
|
|
},
|
|
"x11prefix": {
|
|
"label": "X11 prefix",
|
|
"type": "getPkgConfigVariable",
|
|
"pkg-config-args": "x11",
|
|
"pkg-config-variable": "prefix",
|
|
"value": "/usr",
|
|
"log": "value"
|
|
}
|
|
},
|
|
|
|
"features": {
|
|
"accessibility-atspi-bridge": {
|
|
"label": "ATSPI Bridge",
|
|
"condition": "features.accessibility && features.xcb && features.dbus && libs.atspi",
|
|
"output": [ "privateFeature", "feature" ]
|
|
},
|
|
"angle": {
|
|
"label": "ANGLE",
|
|
"autoDetect": "features.opengles2 || features.opengl-dynamic",
|
|
"condition": "!features.opengl-desktop && features.dxguid && tests.fxc && (features.direct3d9 || (config.winrt && features.direct3d11 && libs.d3dcompiler))",
|
|
"output": [
|
|
"publicFeature",
|
|
{ "type": "define", "name": "QT_OPENGL_ES_2_ANGLE" },
|
|
{ "type": "varAssign", "name": "QMAKE_FXC_LOCATION", "value": "tests.fxc.value" }
|
|
]
|
|
},
|
|
"angle_d3d11_qdtd": {
|
|
"label": "D3D11_QUERY_DATA_TIMESTAMP_DISJOINT",
|
|
"condition": "features.angle && tests.angle_d3d11_qdtd",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"combined-angle-lib": {
|
|
"label": "Combined ANGLE Library",
|
|
"autoDetect": false,
|
|
"condition": "features.angle",
|
|
"output": [ "publicFeature" ]
|
|
},
|
|
"directfb": {
|
|
"label": "DirectFB",
|
|
"section": "Platform plugins",
|
|
"autoDetect": false,
|
|
"condition": "libs.directfb",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"directwrite": {
|
|
"label": "DirectWrite",
|
|
"emitIf": "config.win32",
|
|
"condition": "libs.dwrite",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"directwrite1": {
|
|
"label": "DirectWrite 1",
|
|
"emitIf": "config.win32",
|
|
"condition": "libs.dwrite_1",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"directwrite2": {
|
|
"label": "DirectWrite 2",
|
|
"emitIf": "config.win32",
|
|
"condition": "features.directwrite1 && libs.dwrite_2",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"dxguid": {
|
|
"label": "DirectX GUID",
|
|
"condition": "config.win32 && libs.dxguid",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"direct3d9": {
|
|
"label": "Direct 3D 9",
|
|
"condition": "config.win32 && !config.winrt && libs.d3d9",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"dxgi": {
|
|
"label": "DirectX GI",
|
|
"condition": "config.win32 && libs.dxgi",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"dxgi1_2": {
|
|
"label": "DirectX GI 1.2",
|
|
"condition": "features.dxgi && libs.dxgi1_2",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"direct3d11": {
|
|
"label": "Direct 3D 11",
|
|
"condition": "features.dxgi && libs.d3d11",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"direct3d11_1": {
|
|
"label": "Direct 3D 11.1",
|
|
"condition": "features.direct3d11 && features.dxgi1_2 && libs.d3d11_1",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"direct2d": {
|
|
"label": "Direct 2D",
|
|
"condition": "config.win32 && !config.winrt && features.direct3d11 && libs.d2d1",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"direct2d1_1": {
|
|
"label": "Direct 2D 1.1",
|
|
"condition": "features.direct2d && libs.d2d1_1",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"evdev": {
|
|
"label": "evdev",
|
|
"condition": "features.thread && tests.evdev",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"freetype": {
|
|
"label": "FreeType",
|
|
"purpose": "Supports the FreeType 2 font engine (and its supported font formats).",
|
|
"section": "Fonts",
|
|
"output": [ "privateFeature", "feature" ]
|
|
},
|
|
"system-freetype": {
|
|
"label": " Using system FreeType",
|
|
"enable": "input.freetype == 'system'",
|
|
"disable": "input.freetype == 'qt'",
|
|
"autoDetect": "!config.msvc",
|
|
"condition": "features.freetype && libs.freetype",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"fontconfig": {
|
|
"label": "Fontconfig",
|
|
"autoDetect": "!config.darwin",
|
|
"condition": "!config.msvc && features.system-freetype && libs.fontconfig",
|
|
"output": [ "privateFeature", "feature" ]
|
|
},
|
|
"gbm": {
|
|
"label": "GBM",
|
|
"condition": "libs.gbm",
|
|
"output": [ "publicQtConfig" ]
|
|
},
|
|
"harfbuzz": {
|
|
"label": "HarfBuzz",
|
|
"output": [ "privateFeature", "feature" ]
|
|
},
|
|
"system-harfbuzz": {
|
|
"label": " Using system HarfBuzz",
|
|
"enable": "input.harfbuzz == 'system'",
|
|
"disable": "input.harfbuzz == 'qt'",
|
|
"autoDetect": "!config.darwin && !config.win32",
|
|
"condition": "features.harfbuzz && libs.harfbuzz",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"qqnx_imf": {
|
|
"label": "IMF",
|
|
"emitIf": "config.qnx",
|
|
"condition": "libs.imf",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"integrityfb": {
|
|
"label": "INTEGRITY framebuffer",
|
|
"section": "Platform plugins",
|
|
"condition": "config.integrity && tests.integrityfb",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"kms": {
|
|
"label": "KMS",
|
|
"condition": "libs.drm",
|
|
"output": [ "publicQtConfig", "privateFeature" ]
|
|
},
|
|
"drm_atomic": {
|
|
"label": "DRM Atomic API",
|
|
"condition": "libs.drm && tests.drm_atomic",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"libinput": {
|
|
"label": "libinput",
|
|
"condition": "features.libudev && libs.libinput",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"integrityhid": {
|
|
"label": "INTEGRITY HID",
|
|
"condition": "config.integrity && libs.integrityhid",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"libinput-axis-api": {
|
|
"label": "axis API in libinput",
|
|
"condition": "features.libinput && tests.libinput_axis_api",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"lgmon": {
|
|
"label": "lgmon",
|
|
"emitIf": "config.qnx",
|
|
"condition": "libs.lgmon",
|
|
"output": [ "privateConfig" ]
|
|
},
|
|
"linuxfb": {
|
|
"label": "LinuxFB",
|
|
"section": "Platform plugins",
|
|
"condition": "tests.linuxfb && features.regularexpression",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"vsp2": {
|
|
"label": "VSP2",
|
|
"condition": "libs.v4l2",
|
|
"autoDetect": false,
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"vnc": {
|
|
"label": "VNC",
|
|
"section": "Platform plugins",
|
|
"condition": [
|
|
"config.unix && !config.android && !config.darwin && !config.wasm",
|
|
"features.regularexpression && features.network"
|
|
],
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"mtdev": {
|
|
"label": "mtdev",
|
|
"condition": "libs.mtdev",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"opengles2": {
|
|
"label": "OpenGL ES 2.0",
|
|
"enable": "input.opengl == 'es2' || input.angle == 'yes'",
|
|
"disable": "input.opengl == 'desktop' || input.opengl == 'dynamic' || input.opengl == 'no'",
|
|
"condition": "(config.win32 && !features.opengl-dynamic) || (!config.watchos && !features.opengl-desktop && libs.opengl_es2)",
|
|
"output": [
|
|
"publicFeature",
|
|
"publicQtConfig",
|
|
{ "type": "define", "name": "QT_OPENGL_ES" },
|
|
{ "type": "define", "name": "QT_OPENGL_ES_2" }
|
|
]
|
|
},
|
|
"opengles3": {
|
|
"label": "OpenGL ES 3.0",
|
|
"condition": "features.opengles2 && !features.angle && tests.opengles3",
|
|
"output": [
|
|
"publicFeature",
|
|
{ "type": "define", "name": "QT_OPENGL_ES_3" }
|
|
]
|
|
},
|
|
"opengles31": {
|
|
"label": "OpenGL ES 3.1",
|
|
"condition": "features.opengles3 && tests.opengles31",
|
|
"output": [
|
|
"publicFeature",
|
|
{ "type": "define", "name": "QT_OPENGL_ES_3_1" }
|
|
]
|
|
},
|
|
"opengles32": {
|
|
"label": "OpenGL ES 3.2",
|
|
"condition": "features.opengles31 && tests.opengles32",
|
|
"output": [
|
|
"publicFeature",
|
|
{ "type": "define", "name": "QT_OPENGL_ES_3_2" }
|
|
]
|
|
},
|
|
"opengl-desktop": {
|
|
"label": "Desktop OpenGL",
|
|
"autoDetect": "!config.win32",
|
|
"enable": "input.opengl == 'desktop'",
|
|
"disable": "input.opengl == 'es2' || input.opengl == 'dynamic' || input.opengl == 'no'",
|
|
"condition": "(config.win32 && !config.winrt && !features.opengles2 && (config.msvc || libs.opengl))
|
|
|| (!config.watchos && !config.win32 && !config.wasm && libs.opengl)"
|
|
},
|
|
"opengl-dynamic": {
|
|
"label": "Dynamic OpenGL",
|
|
"disable": "input.angle == 'yes' || input.opengl == 'no' || input.opengl == 'desktop'",
|
|
"condition": "config.win32 && !config.winrt",
|
|
"output": [
|
|
{ "type": "publicFeature", "name": "dynamicgl" },
|
|
{ "type": "define", "name": "QT_OPENGL_DYNAMIC" }
|
|
]
|
|
},
|
|
"opengl": {
|
|
"label": "OpenGL",
|
|
"condition": "features.opengl-desktop || features.opengl-dynamic || features.opengles2",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"vkgen": {
|
|
"label": "vkgen",
|
|
"condition": "features.xmlstreamreader",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"vulkan": {
|
|
"label": "Vulkan",
|
|
"condition": "features.vkgen && libs.vulkan",
|
|
"output": [ "publicFeature" ]
|
|
},
|
|
"openvg": {
|
|
"label": "OpenVG",
|
|
"condition": "libs.openvg",
|
|
"output": [ "publicFeature" ]
|
|
},
|
|
"egl": {
|
|
"label": "EGL",
|
|
"condition": "(features.opengl || features.openvg) && (features.angle || libs.egl) && (features.dlopen || !config.unix || config.integrity)",
|
|
"output": [ "privateFeature", "feature" ]
|
|
},
|
|
"egl_x11": {
|
|
"label": "EGL on X11",
|
|
"condition": "features.thread && features.egl && tests.egl-x11",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs": {
|
|
"label": "EGLFS",
|
|
"section": "Platform plugins",
|
|
"condition": "!config.android && !config.darwin && !config.win32 && !config.wasm && features.egl",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_brcm": {
|
|
"label": "EGLFS Raspberry Pi",
|
|
"condition": "features.eglfs && tests.egl-brcm",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_egldevice": {
|
|
"label": "EGLFS EGLDevice",
|
|
"condition": "features.eglfs && tests.egl-egldevice && features.kms",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_gbm": {
|
|
"label": "EGLFS GBM",
|
|
"condition": "features.eglfs && features.gbm && features.kms",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_vsp2": {
|
|
"label": "EGLFS VSP2",
|
|
"condition": "features.eglfs && features.gbm && features.kms && features.vsp2",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_mali": {
|
|
"label": "EGLFS Mali",
|
|
"condition": "features.eglfs && (tests.egl-mali || tests.egl-mali-2)",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_viv": {
|
|
"label": "EGLFS i.Mx6",
|
|
"condition": "features.eglfs && tests.egl-viv",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_rcar": {
|
|
"label": "EGLFS RCAR",
|
|
"condition": "config.integrity && features.eglfs && tests.egl-rcar",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_viv_wl": {
|
|
"label": "EGLFS i.Mx6 Wayland",
|
|
"condition": "features.eglfs_viv && libs.wayland_server",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_openwfd": {
|
|
"label": "EGLFS OpenWFD",
|
|
"condition": "config.integrity && features.eglfs && tests.egl-openwfd",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"eglfs_x11": {
|
|
"label": "EGLFS X11",
|
|
"condition": "features.eglfs && features.xcb-xlib && features.egl_x11",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"gif": {
|
|
"label": "GIF",
|
|
"condition": "features.imageformatplugin",
|
|
"output": [
|
|
"privateFeature",
|
|
{ "type": "define", "negative": true, "name": "QT_NO_IMAGEFORMAT_GIF" }
|
|
]
|
|
},
|
|
"ico": {
|
|
"label": "ICO",
|
|
"condition": "features.imageformatplugin",
|
|
"output": [ "privateFeature", "feature" ]
|
|
},
|
|
"jpeg": {
|
|
"label": "JPEG",
|
|
"disable": "input.libjpeg == 'no'",
|
|
"condition": "features.imageformatplugin",
|
|
"output": [
|
|
"privateFeature",
|
|
{ "type": "define", "negative": true, "name": "QT_NO_IMAGEFORMAT_JPEG" }
|
|
]
|
|
},
|
|
"system-jpeg": {
|
|
"label": " Using system libjpeg",
|
|
"disable": "input.libjpeg == 'qt'",
|
|
"enable": "input.libjpeg == 'system'",
|
|
"condition": "features.jpeg && libs.libjpeg",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"png": {
|
|
"label": "PNG",
|
|
"disable": "input.libpng == 'no'",
|
|
"output": [
|
|
"privateFeature",
|
|
{ "type": "define", "negative": true, "name": "QT_NO_IMAGEFORMAT_PNG" }
|
|
]
|
|
},
|
|
"system-png": {
|
|
"label": " Using system libpng",
|
|
"disable": "input.libpng == 'qt'",
|
|
"enable": "input.libpng == 'system'",
|
|
"autoDetect": "features.system-zlib",
|
|
"condition": "features.png && libs.libpng",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"qpa_default_platform": {
|
|
"label": "QPA default platform",
|
|
"condition": "features.gui",
|
|
"output": [
|
|
{ "type": "define", "name": "QT_QPA_DEFAULT_PLATFORM_NAME", "value": "tests.qpa_default_platform.name" },
|
|
{ "type": "varAssign", "public": true, "name": "QT_DEFAULT_QPA_PLUGIN", "value": "tests.qpa_default_platform.plugin",
|
|
"condition": "!features.shared" }
|
|
]
|
|
},
|
|
"sessionmanager": {
|
|
"label": "Session Management",
|
|
"purpose": "Provides an interface to the windowing system's session management.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"tslib": {
|
|
"label": "tslib",
|
|
"condition": "libs.tslib",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"tuiotouch": {
|
|
"label": "TuioTouch",
|
|
"purpose": "Provides the TuioTouch input plugin.",
|
|
"condition": "features.network && features.udpsocket",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xcb": {
|
|
"label": "XCB",
|
|
"section": "Platform plugins",
|
|
"autoDetect": "!config.darwin",
|
|
"condition": "features.thread && libs.xcb && tests.xcb_syslibs && features.xkbcommon-x11",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"x11-prefix": {
|
|
"label": "X11 prefix",
|
|
"emitIf": "features.xcb",
|
|
"output": [ { "type": "varAssign", "name": "QMAKE_X11_PREFIX", "value": "tests.x11prefix.value" } ]
|
|
},
|
|
"xcb-glx-plugin": {
|
|
"label": "GLX Plugin",
|
|
"emitIf": "features.xcb",
|
|
"condition": "features.xcb-xlib && features.opengl && !features.opengles2",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xcb-glx": {
|
|
"label": " XCB GLX",
|
|
"emitIf": "features.xcb && features.xcb-glx-plugin",
|
|
"condition": "libs.xcb_glx",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xcb-egl-plugin": {
|
|
"label": "EGL-X11 Plugin",
|
|
"emitIf": "features.xcb",
|
|
"condition": "features.egl_x11 && features.opengl",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xcb-native-painting": {
|
|
"label": "Native painting (experimental)",
|
|
"autoDetect": false,
|
|
"emitIf": "features.xcb",
|
|
"condition": "features.xcb-xlib && features.fontconfig && libs.xrender",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xrender": {
|
|
"label": "XRender for native painting",
|
|
"emitIf": "features.xcb && features.xcb-native-painting",
|
|
"condition": "features.xcb-native-painting",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xcb-xlib": {
|
|
"label": "XCB Xlib",
|
|
"condition": "features.xlib && libs.xcb_xlib",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xcb-sm": {
|
|
"label": "xcb-sm",
|
|
"emitIf": "features.xcb",
|
|
"condition": "features.sessionmanager && libs.x11sm",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"system-xcb-xinput": {
|
|
"label": "Using system-provided xcb-xinput",
|
|
"emitIf": "features.xcb",
|
|
"disable": "input.bundled-xcb-xinput == 'yes'",
|
|
"enable": "input.bundled-xcb-xinput == 'no'",
|
|
"condition": "libs.xcb_xinput",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xkbcommon": {
|
|
"label": "xkbcommon",
|
|
"condition": "libs.xkbcommon",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xkbcommon-x11": {
|
|
"label": "xkbcommon-x11",
|
|
"condition": "features.xkbcommon && libs.xkbcommon_x11",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"xlib": {
|
|
"label": "XLib",
|
|
"autoDetect": "!config.darwin || features.xcb",
|
|
"condition": "libs.xlib",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"texthtmlparser": {
|
|
"label": "HtmlParser",
|
|
"purpose": "Provides a parser for HTML.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"textmarkdownreader": {
|
|
"label": "MarkdownReader",
|
|
"disable": "input.libmd4c == 'no'",
|
|
"enable": "input.libmd4c == 'system' || input.libmd4c == 'qt' || input.libmd4c == 'yes'",
|
|
"purpose": "Provides a Markdown (CommonMark and GitHub) reader",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature" ]
|
|
},
|
|
"system-textmarkdownreader": {
|
|
"label": " Using system libmd4c",
|
|
"disable": "input.libmd4c == 'qt'",
|
|
"enable": "input.libmd4c == 'system'",
|
|
"section": "Kernel",
|
|
"condition": "libs.libmd4c",
|
|
"output": [ "publicFeature" ]
|
|
},
|
|
"textmarkdownwriter": {
|
|
"label": "MarkdownWriter",
|
|
"purpose": "Provides a Markdown (CommonMark) writer",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature" ]
|
|
},
|
|
"textodfwriter": {
|
|
"label": "OdfWriter",
|
|
"purpose": "Provides an ODF writer.",
|
|
"section": "Kernel",
|
|
"condition": "features.xmlstreamwriter",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"cssparser": {
|
|
"label": "CssParser",
|
|
"purpose": "Provides a parser for Cascading Style Sheets.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"draganddrop": {
|
|
"label": "Drag and Drop",
|
|
"purpose": "Supports the drag and drop mechansim.",
|
|
"section": "Kernel",
|
|
"condition": "features.imageformat_xpm",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"shortcut": {
|
|
"label": "QShortcut",
|
|
"purpose": "Provides keyboard accelerators and shortcuts.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"action": {
|
|
"label": "QAction",
|
|
"purpose": "Provides widget actions.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"cursor": {
|
|
"label": "QCursor",
|
|
"purpose": "Provides mouse cursors.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"clipboard": {
|
|
"label": "QClipboard",
|
|
"purpose": "Provides cut and paste operations.",
|
|
"section": "Kernel",
|
|
"condition": "!config.integrity && !config.qnx && !config.rtems",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"wheelevent": {
|
|
"label": "QWheelEvent",
|
|
"purpose": "Supports wheel events.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"tabletevent": {
|
|
"label": "QTabletEvent",
|
|
"purpose": "Supports tablet events.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"im": {
|
|
"label": "QInputContext",
|
|
"purpose": "Provides complex input methods.",
|
|
"section": "Kernel",
|
|
"condition": "features.library",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"highdpiscaling": {
|
|
"label": "High DPI Scaling",
|
|
"purpose": "Provides automatic scaling of DPI-unaware applications on high-DPI displays.",
|
|
"section": "Kernel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"validator": {
|
|
"label": "QValidator",
|
|
"purpose": "Supports validation of input text.",
|
|
"section": "Widgets",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"standarditemmodel": {
|
|
"label": "QStandardItemModel",
|
|
"purpose": "Provides a generic model for storing custom data.",
|
|
"section": "ItemViews",
|
|
"condition": "features.itemmodel",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformatplugin": {
|
|
"label": "QImageIOPlugin",
|
|
"purpose": "Provides a base for writing a image format plugins.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"movie": {
|
|
"label": "QMovie",
|
|
"purpose": "Supports animated images.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformat_bmp": {
|
|
"label": "BMP Image Format",
|
|
"purpose": "Supports Microsoft's Bitmap image file format.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformat_ppm": {
|
|
"label": "PPM Image Format",
|
|
"purpose": "Supports the Portable Pixmap image file format.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformat_xbm": {
|
|
"label": "XBM Image Format",
|
|
"purpose": "Supports the X11 Bitmap image file format.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformat_xpm": {
|
|
"label": "XPM Image Format",
|
|
"purpose": "Supports the X11 Pixmap image file format.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformat_png": {
|
|
"label": "PNG Image Format",
|
|
"purpose": "Supports the Portable Network Graphics image file format.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"imageformat_jpeg": {
|
|
"label": "JPEG Image Format",
|
|
"purpose": "Supports the Joint Photographic Experts Group image file format.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"image_heuristic_mask": {
|
|
"label": "QImage::createHeuristicMask()",
|
|
"purpose": "Supports creating a 1-bpp heuristic mask for images.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"image_text": {
|
|
"label": "Image Text",
|
|
"purpose": "Supports image file text strings.",
|
|
"section": "Images",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"picture": {
|
|
"label": "QPicture",
|
|
"purpose": "Supports recording and replaying QPainter commands.",
|
|
"section": "Painting",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"colornames": {
|
|
"label": "Color Names",
|
|
"purpose": "Supports color names such as \"red\", used by QColor and by some HTML documents.",
|
|
"section": "Painting",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"pdf": {
|
|
"label": "QPdf",
|
|
"purpose": "Provides a PDF backend for QPainter.",
|
|
"section": "Painting",
|
|
"condition": "features.temporaryfile",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"desktopservices": {
|
|
"label": "QDesktopServices",
|
|
"purpose": "Provides methods for accessing common desktop services.",
|
|
"section": "Utilities",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"systemtrayicon": {
|
|
"label": "QSystemTrayIcon",
|
|
"purpose": "Provides an icon for an application in the system tray.",
|
|
"section": "Utilities",
|
|
"condition": "features.temporaryfile",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"accessibility": {
|
|
"label": "Accessibility",
|
|
"purpose": "Provides accessibility support.",
|
|
"section": "Utilities",
|
|
"condition": "features.properties",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"multiprocess": {
|
|
"label": "Multi process",
|
|
"purpose": "Provides support for detecting the desktop environment, launching external processes and opening URLs.",
|
|
"section": "Utilities",
|
|
"condition": "!config.integrity && !config.rtems",
|
|
"output": [ "privateFeature" ]
|
|
},
|
|
"whatsthis": {
|
|
"label": "QWhatsThis",
|
|
"purpose": "Supports displaying \"What's this\" help.",
|
|
"section": "Widget Support",
|
|
"output": [ "publicFeature", "feature" ]
|
|
},
|
|
"raster-64bit": {
|
|
"label": "QPainter - 64 bit raster",
|
|
"purpose": "Internal painting support for 64 bit (16 bpc) rasterization.",
|
|
"section": "Painting",
|
|
"output": [ "privateFeature" ]
|
|
}
|
|
},
|
|
|
|
"earlyReport": [
|
|
{
|
|
"type": "error",
|
|
"condition": "input.xcb != '' && input.xcb != 'no' && input.xkbcommon == 'no'",
|
|
"message": "XCB plugin requires xkbcommon and xkbcommon-x11, but -no-xkbcommon was provided."
|
|
}
|
|
],
|
|
|
|
"report": [
|
|
{
|
|
"type": "note",
|
|
"condition": "features.xcb && config.darwin",
|
|
"message": "XCB support on macOS is minimal and untested. Some features will
|
|
not work properly or at all (e.g. OpenGL, desktop services or accessibility),
|
|
or may depend on your system and XQuartz setup."
|
|
},
|
|
{
|
|
"type": "note",
|
|
"condition": "features.accessibility && features.xcb && !features.accessibility-atspi-bridge",
|
|
"message": "Disabling X11 Accessibility Bridge: D-Bus or AT-SPI is missing."
|
|
},
|
|
{
|
|
"type": "warning",
|
|
"condition": "input.qpa-platform-guard != ''",
|
|
"message": "The [-no]-qpa-platform-guard argument is deprecated and has no effect."
|
|
},
|
|
{
|
|
"type": "warning",
|
|
"condition": "features.gui && config.linux && !config.android && !features.xcb && !features.eglfs && !features.directfb && !features.linuxfb",
|
|
"message": "No QPA platform plugin enabled! This will
|
|
produce a Qt that cannot run GUI applications.
|
|
See \"Platform backends\" in the output of --help."
|
|
},
|
|
{
|
|
"type": "warning",
|
|
"condition": "config.win32 && (features.opengles2 || features.opengl-dynamic) && !features.angle",
|
|
"message": "Using OpenGL ES 2.0 on Windows without ANGLE.
|
|
The build will most likely fail.
|
|
Specify -opengl desktop to use regular OpenGL."
|
|
},
|
|
{
|
|
"type": "warning",
|
|
"condition": "config.darwin && features.system-harfbuzz",
|
|
"message": "On OS X, AAT is supported only with -qt-harfbuzz."
|
|
},
|
|
{
|
|
"type": "error",
|
|
"condition": "features.gui && !config.watchos && input.opengl != 'no' && !features.opengl-desktop && !features.opengles2 && !features.opengl-dynamic",
|
|
"message": "The OpenGL functionality tests failed!
|
|
You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2],
|
|
QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform."
|
|
},
|
|
{
|
|
"type": "warning",
|
|
"condition": "!features.accessibility",
|
|
"message": "Accessibility disabled. This configuration of Qt is unsupported."
|
|
}
|
|
],
|
|
|
|
"summary": [
|
|
{
|
|
"section": "Qt Gui",
|
|
"entries": [
|
|
"accessibility",
|
|
"freetype",
|
|
"system-freetype",
|
|
"harfbuzz",
|
|
"system-harfbuzz",
|
|
"fontconfig",
|
|
{
|
|
"section": "Image formats",
|
|
"entries": [
|
|
"gif", "ico", "jpeg", "system-jpeg", "png", "system-png"
|
|
]
|
|
},
|
|
{
|
|
"section": "Text formats",
|
|
"entries": [
|
|
"texthtmlparser", "cssparser", "textodfwriter", "textmarkdownreader", "system-textmarkdownreader", "textmarkdownwriter"
|
|
]
|
|
},
|
|
"egl",
|
|
"openvg",
|
|
{
|
|
"section": "OpenGL",
|
|
"entries": [
|
|
{
|
|
"type": "feature",
|
|
"args": "angle",
|
|
"condition": "config.win32"
|
|
},
|
|
{
|
|
"type": "feature",
|
|
"args": "combined-angle-lib",
|
|
"condition": "features.angle"
|
|
},
|
|
"opengl-desktop",
|
|
{
|
|
"type": "feature",
|
|
"args": "opengl-dynamic",
|
|
"condition": "config.win32"
|
|
},
|
|
"opengles2",
|
|
"opengles3",
|
|
"opengles31",
|
|
"opengles32"
|
|
]
|
|
},
|
|
"vulkan",
|
|
"sessionmanager"
|
|
]
|
|
},
|
|
{
|
|
"section": "Features used by QPA backends",
|
|
"entries": [
|
|
"evdev",
|
|
"libinput",
|
|
"integrityhid",
|
|
"mtdev",
|
|
"tslib",
|
|
"xkbcommon",
|
|
{
|
|
"section": "X11 specific",
|
|
"entries": [
|
|
"xlib",
|
|
"xcb-xlib",
|
|
"egl_x11",
|
|
"xkbcommon-x11"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"section": "QPA backends",
|
|
"entries": [
|
|
"directfb", "eglfs",
|
|
{
|
|
"section": "EGLFS details",
|
|
"condition": "features.eglfs",
|
|
"entries": [
|
|
"eglfs_openwfd", "eglfs_viv", "eglfs_viv_wl", "eglfs_rcar", "eglfs_egldevice", "eglfs_gbm", "eglfs_vsp2", "eglfs_mali", "eglfs_brcm", "eglfs_x11"
|
|
]
|
|
},
|
|
"linuxfb", "vnc",
|
|
{
|
|
"type": "feature",
|
|
"condition": "config.integrity",
|
|
"args": "integrityfb"
|
|
},
|
|
{
|
|
"section": "QNX",
|
|
"condition": "config.qnx",
|
|
"entries": [
|
|
"lgmon", "qqnx_imf"
|
|
]
|
|
},
|
|
{
|
|
"section": "XCB",
|
|
"condition": "features.xcb",
|
|
"entries": [
|
|
"system-xcb-xinput", "xcb-native-painting",
|
|
{
|
|
"section": "GL integrations",
|
|
"entries": [
|
|
"xcb-glx-plugin",
|
|
"xcb-glx",
|
|
"xcb-egl-plugin"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"section": "Windows",
|
|
"condition": "config.win32",
|
|
"entries": [
|
|
"direct2d", "directwrite", "directwrite2"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|