summaryrefslogtreecommitdiffstats
path: root/src/corelib/configure.json
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/configure.json')
-rw-r--r--src/corelib/configure.json1112
1 files changed, 0 insertions, 1112 deletions
diff --git a/src/corelib/configure.json b/src/corelib/configure.json
deleted file mode 100644
index 9c8615cf74..0000000000
--- a/src/corelib/configure.json
+++ /dev/null
@@ -1,1112 +0,0 @@
-{
- "module": "core",
- "testDir": "../../config.tests",
-
- "commandline": {
- "options": {
- "doubleconversion": { "type": "enum", "values": [ "no", "qt", "system" ] },
- "eventfd": "boolean",
- "glib": "boolean",
- "icu": "boolean",
- "inotify": "boolean",
- "journald": "boolean",
- "libb2": { "type": "enum", "values": [ "no", "qt", "system" ] },
- "mimetype-database": "boolean",
- "pcre": { "type": "enum", "values": [ "no", "qt", "system" ] },
- "posix-ipc": { "type": "boolean", "name": "ipc_posix" },
- "pps": { "type": "boolean", "name": "qqnx_pps" },
- "slog2": "boolean",
- "syslog": "boolean",
- "trace": { "type": "optionalString", "values": [ "etw", "lttng", "no", "yes" ] }
- }
- },
-
- "libraries": {
- "doubleconversion": {
- "label": "DoubleConversion",
- "test": {
- "main": "(void) double_conversion::StringToDoubleConverter::NO_FLAGS;"
- },
- "headers": "double-conversion/double-conversion.h",
- "sources": [
- "-ldouble-conversion"
- ]
- },
- "glib": {
- "label": "GLib",
- "test": {
- "head": "typedef struct _GMainContext GMainContext;",
- "main": [
- "g_thread_init(NULL);",
- "(void) g_main_context_default();",
- "(void) g_source_new(0, 0);",
- "g_source_add_poll(NULL, NULL);"
- ]
- },
- "headers": "glib.h",
- "sources": [
- { "type": "pkgConfig", "args": "glib-2.0 gthread-2.0" }
- ]
- },
- "icu": {
- "label": "ICU",
- "test": {
- "main": [
- "UErrorCode status = U_ZERO_ERROR;",
- "UCollator *collator = ucol_open(\"ru_RU\", &status);",
- "if (!U_FAILURE(status))",
- " ucol_close(collator);"
- ]
- },
- "headers": [ "unicode/utypes.h", "unicode/ucol.h", "unicode/ustring.h" ],
- "sources": [
- {
- "builds": {
- "debug": "-lsicuind -lsicuucd -lsicudtd",
- "release": "-lsicuin -lsicuuc -lsicudt"
- },
- "condition": "config.win32 && !features.shared"
- },
- { "libs": "-licuin -licuuc -licudt", "condition": "config.win32 && features.shared" },
- { "libs": "-licui18n -licuuc -licudata", "condition": "!config.win32" }
- ],
- "use": [
- { "lib": "libdl", "condition": "features.dlopen" }
- ]
- },
- "journald": {
- "label": "journald",
- "test": {
- "main": "sd_journal_send(\"PRIORITY=%i\", LOG_INFO, NULL);"
- },
- "headers": [ "systemd/sd-journal.h", "syslog.h" ],
- "sources": [
- { "type": "pkgConfig", "args": "libsystemd" },
- { "type": "pkgConfig", "args": "libsystemd-journal" }
- ]
- },
- "libatomic": {
- "label": "64 bit atomics",
- "test": {
- "tail": [
- "void test(volatile std::atomic<std::int64_t> &a)",
- "{",
- " std::int64_t v = a.load(std::memory_order_acquire);",
- " while (!a.compare_exchange_strong(v, v + 1,",
- " std::memory_order_acq_rel,",
- " std::memory_order_acquire)) {",
- " v = a.exchange(v - 1);",
- " }",
- " a.store(v + 1, std::memory_order_release);",
- "}"
- ],
- "main": [
- "void *ptr = (void*)0xffffffc0; // any random pointer",
- "test(*reinterpret_cast<std::atomic<std::int64_t> *>(ptr));"
- ],
- "qmake": "CONFIG += c++11"
- },
- "headers": [ "atomic", "cstdint" ],
- "sources": [
- "",
- "-latomic"
- ]
- },
- "libb2": {
- "label": "libb2",
- "test": {
- "main": "BLAKE2B_BLOCKBYTES;"
- },
- "headers": "blake2.h",
- "sources": [
- { "type": "pkgConfig", "args": "libb2" },
- "-lb2"
- ]
- },
- "librt": {
- "label": "clock_gettime()",
- "test": {
- "main": "timespec ts; clock_gettime(CLOCK_REALTIME, &ts);"
- },
- "headers": [ "unistd.h", "time.h" ],
- "sources": [
- "",
- "-lrt"
- ]
- },
- "lttng-ust": {
- "label": "lttng-ust",
- "test": {
- "main": "lttng_session_destroy(nullptr);"
- },
- "headers": "lttng/ust-events.h",
- "sources": [
- { "type": "pkgConfig", "args": "lttng-ust" },
- "-llttng-ust"
- ],
- "use": "libdl"
- },
- "pcre2": {
- "label": "PCRE2",
- "test": {
- "head": "#define PCRE2_CODE_UNIT_WIDTH 16",
- "tail": [
- "#if (PCRE2_MAJOR < 10) || ((PCRE2_MAJOR == 10) && (PCRE2_MINOR < 20))",
- "# error This PCRE version is not supported",
- "#endif"
- ]
- },
- "headers": "pcre2.h",
- "sources": [
- { "type": "pkgConfig", "args": "libpcre2-16" },
- "-lpcre2-16"
- ]
- },
- "pps": {
- "label": "PPS",
- "test": {
- "main": [
- "pps_decoder_t decoder;",
- "pps_decoder_initialize(&decoder, NULL);"
- ]
- },
- "headers": "sys/pps.h",
- "sources": [
- "-lpps"
- ]
- },
- "slog2": {
- "label": "slog2",
- "test": {
- "main": "slog2_set_default_buffer((slog2_buffer_t)-1);"
- },
- "export": "",
- "headers": "sys/slog2.h",
- "sources": [
- "-lslog2"
- ]
- },
- "advapi32": {
- "label": "advapi32",
- "sources": [
- "-ladvapi32"
- ]
- },
- "gdi32": {
- "label": "gdi32",
- "sources": [
- "-lgdi32"
- ]
- },
- "kernel32": {
- "label": "kernel32",
- "sources": [
- "-lkernel32"
- ]
- },
- "netapi32": {
- "label": "netapi32",
- "sources": [
- "-lnetapi32"
- ]
- },
- "ole32": {
- "label": "ole32",
- "sources": [
- "-lole32"
- ]
- },
- "shell32": {
- "label": "shell32",
- "sources": [
- "-lshell32"
- ]
- },
- "uuid": {
- "label": "uuid",
- "sources": [
- "-luuid"
- ]
- },
- "user32": {
- "label": "user32",
- "sources": [
- "-luser32"
- ]
- },
- "winmm": {
- "label": "winmm",
- "sources": [
- "-lwinmm"
- ]
- },
- "ws2_32": {
- "label": "ws2_32",
- "sources": [
- "-lws2_32"
- ]
- }
- },
-
- "tests": {
- "atomicfptr": {
- "label": "working std::atomic for function pointers",
- "type": "compile",
- "test": {
- "include": "atomic",
- "tail": [
- "typedef void (*fptr)(int);",
- "typedef std::atomic<fptr> atomicfptr;",
- "void testfunction(int) { }",
- "void test(volatile atomicfptr &a)",
- "{",
- " fptr v = a.load(std::memory_order_acquire);",
- " while (!a.compare_exchange_strong(v, &testfunction,",
- " std::memory_order_acq_rel,",
- " std::memory_order_acquire)) {",
- " v = a.exchange(&testfunction);",
- " }",
- " a.store(&testfunction, std::memory_order_release);",
- "}"
- ],
- "main": [
- "atomicfptr fptr(testfunction);",
- "test(fptr);"
- ],
- "qmake": "CONFIG += c++11"
- }
- },
- "clock-monotonic": {
- "label": "POSIX monotonic clock",
- "type": "compile",
- "test": {
- "include": [ "unistd.h", "time.h" ],
- "main": [
- "#if defined(_POSIX_MONOTONIC_CLOCK) && (_POSIX_MONOTONIC_CLOCK-0 >= 0)",
- "timespec ts;",
- "clock_gettime(CLOCK_MONOTONIC, &ts);",
- "#else",
- "# error Feature _POSIX_MONOTONIC_CLOCK not available",
- "#endif"
- ]
- },
- "use": "librt"
- },
- "cloexec": {
- "label": "O_CLOEXEC",
- "type": "compile",
- "test": {
- "head": "#define _GNU_SOURCE 1",
- "include": [ "sys/types.h", "sys/socket.h", "fcntl.h", "unistd.h" ],
- "main": [
- "int pipes[2];",
- "(void) pipe2(pipes, O_CLOEXEC | O_NONBLOCK);",
- "(void) fcntl(0, F_DUPFD_CLOEXEC, 0);",
- "(void) dup3(0, 3, O_CLOEXEC);",
- "#if defined(__NetBSD__)",
- "(void) paccept(0, 0, 0, NULL, SOCK_CLOEXEC | SOCK_NONBLOCK);",
- "#else",
- "(void) accept4(0, 0, 0, SOCK_CLOEXEC | SOCK_NONBLOCK);",
- "#endif"
- ]
- }
- },
- "cxx11_future": {
- "label": "C++11 <future>",
- "type": "compile",
- "test": {
- "include": "future",
- "main": [
- "std::future<int> f = std::async([]() { return 42; });",
- "(void)f.get();"
- ],
- "qmake": "unix:!android:LIBS += -lpthread"
- }
- },
- "cxx11_random": {
- "label": "C++11 <random>",
- "type": "compile",
- "test": {
- "include": "random",
- "main": "std::mt19937 mt(0);"
- }
- },
- "cxx17_filesystem": {
- "label": "C++17 <filesystem>",
- "type": "compile",
- "test": {
- "include": "filesystem",
- "main": [
- "std::filesystem::copy(",
- " std::filesystem::path(\"./file\"),",
- " std::filesystem::path(\"./other\"));"
- ],
- "qmake": "CONFIG += c++17"
- }
- },
- "eventfd": {
- "label": "eventfd",
- "type": "compile",
- "test": {
- "include": "sys/eventfd.h",
- "main": [
- "eventfd_t value;",
- "int fd = eventfd(0, EFD_CLOEXEC);",
- "eventfd_read(fd, &value);",
- "eventfd_write(fd, value);"
- ]
- }
- },
- "futimens": {
- "label": "futimens()",
- "type": "compile",
- "test": {
- "include": "sys/stat.h",
- "main": "futimens(-1, 0);",
- "qmake": [
- "# Block futimens() on Apple platforms unless it's available on ALL",
- "# deployment targets. This simplifies the logic at the call site",
- "# dramatically, as it isn't strictly needed compared to futimes().",
- "darwin: QMAKE_CXXFLAGS += -Werror=unguarded-availability -Werror=unguarded-availability-new",
- "CONFIG += warn_on"
- ]
- }
- },
- "futimes": {
- "label": "futimes()",
- "type": "compile",
- "test": {
- "include": "sys/time.h",
- "main": "futimes(-1, 0);"
- }
- },
- "getauxval": {
- "label": "getauxval()",
- "type": "compile",
- "test": {
- "include": "sys/auxv.h",
- "main": "(void) getauxval(AT_NULL);"
- }
- },
- "getentropy": {
- "label": "getentropy()",
- "type": "compile",
- "test": {
- "include": "unistd.h",
- "main": [
- "char buf[32];",
- "(void) getentropy(buf, sizeof(buf));"
- ]
- }
- },
- "glibc": {
- "label": "GNU libc",
- "type": "compile",
- "test": {
- "include": "stdlib.h",
- "main": [
- "return __GLIBC__;"
- ]
- }
- },
- "inotify": {
- "label": "inotify",
- "type": "compile",
- "test": {
- "include": "sys/inotify.h",
- "main": [
- "inotify_init();",
- "inotify_add_watch(0, \"foobar\", IN_ACCESS);",
- "inotify_rm_watch(0, 1);"
- ]
- }
- },
- "ipc_sysv": {
- "label": "SysV IPC",
- "type": "compile",
- "test": {
- "include": [ "sys/types.h", "sys/ipc.h", "sys/sem.h", "sys/shm.h", "fcntl.h" ],
- "main": [
- "key_t unix_key = ftok(\"test\", 'Q');",
- "semctl(semget(unix_key, 1, 0666 | IPC_CREAT | IPC_EXCL), 0, IPC_RMID, 0);",
- "shmget(unix_key, 0, 0666 | IPC_CREAT | IPC_EXCL);",
- "shmctl(0, 0, (struct shmid_ds *)(0));"
- ]
- }
- },
- "ipc_posix": {
- "label": "POSIX IPC",
- "type": "compile",
- "test": {
- "include": [ "sys/types.h", "sys/mman.h", "semaphore.h", "fcntl.h" ],
- "main": [
- "sem_close(sem_open(\"test\", O_CREAT | O_EXCL, 0666, 0));",
- "shm_open(\"test\", O_RDWR | O_CREAT | O_EXCL, 0666);",
- "shm_unlink(\"test\");"
- ],
- "qmake": "linux: LIBS += -lpthread -lrt"
- }
- },
- "linkat": {
- "label": "linkat()",
- "type": "compile",
- "test": {
- "head": "#define _ATFILE_SOURCE 1",
- "include": [ "fcntl.h", "unistd.h" ],
- "main": "linkat(AT_FDCWD, \"foo\", AT_FDCWD, \"bar\", AT_SYMLINK_FOLLOW);"
- }
- },
- "ppoll": {
- "label": "ppoll()",
- "type": "compile",
- "test": {
- "include": [ "signal.h", "poll.h" ],
- "main": [
- "struct pollfd pfd;",
- "struct timespec ts;",
- "sigset_t sig;",
- "ppoll(&pfd, 1, &ts, &sig);"
- ]
- }
- },
- "pollts": {
- "label": "pollts()",
- "type": "compile",
- "test": {
- "include": [ "poll.h", "signal.h", "time.h" ],
- "main": [
- "struct pollfd pfd;",
- "struct timespec ts;",
- "sigset_t sig;",
- "pollts(&pfd, 1, &ts, &sig);"
- ]
- }
- },
- "poll": {
- "label": "poll()",
- "type": "compile",
- "test": {
- "include": "poll.h",
- "main": [
- "struct pollfd pfd;",
- "poll(&pfd, 1, 0);"
- ]
- }
- },
- "renameat2": {
- "label": "renameat2()",
- "type": "compile",
- "test": {
- "head": "#define _ATFILE_SOURCE 1",
- "include": [ "fcntl.h", "stdio.h" ],
- "main": "renameat2(AT_FDCWD, argv[1], AT_FDCWD, argv[2], RENAME_NOREPLACE | RENAME_WHITEOUT);"
- }
- },
- "statx": {
- "label": "statx() in libc",
- "type": "compile",
- "test": {
- "head": "#define _ATFILE_SOURCE 1",
- "include": [ "sys/types.h", "sys/stat.h", "unistd.h", "fcntl.h" ],
- "main": [
- "struct statx statxbuf;",
- "unsigned int mask = STATX_BASIC_STATS;",
- "return statx(AT_FDCWD, \"\", AT_STATX_SYNC_AS_STAT, mask, &statxbuf);"
- ]
- }
- },
- "syslog": {
- "label": "syslog",
- "type": "compile",
- "test": {
- "include": "syslog.h",
- "main": [
- "openlog(\"qt\", 0, LOG_USER);",
- "syslog(LOG_INFO, \"configure\");",
- "closelog();"
- ]
- }
- },
- "xlocalescanprint": {
- "label": "xlocale.h (or equivalents)",
- "type": "compile",
- "test": {
- "files": {
- "qglobal.h": [
- "#ifndef QGLOBAL_H",
- "#define QGLOBAL_H",
- "#endif"
- ]
- },
- "tail": [
- "#define QT_BEGIN_NAMESPACE",
- "#define QT_END_NAMESPACE",
- "",
- "#ifdef _MSVC_VER",
- "#define Q_CC_MSVC _MSVC_VER",
- "#endif",
- "",
- "#define QT_NO_DOUBLECONVERSION",
- "",
- "#include QDSP_P_H"
- ],
- "main": [
- "#ifdef _MSVC_VER",
- "_locale_t invalidLocale = NULL;",
- "#else",
- "locale_t invalidLocale = NULL;",
- "#endif",
- "double a = 3.4;",
- "qDoubleSnprintf(argv[0], 1, invalidLocale, \"invalid format\", a);",
- "qDoubleSscanf(argv[0], invalidLocale, \"invalid format\", &a, &argc);"
- ],
- "qmake": "DEFINES += QDSP_P_H=$$shell_quote(\\\"@PWD@/text/qdoublescanprint_p.h\\\")"
- }
- }
- },
-
- "features": {
- "clock-gettime": {
- "label": "clock_gettime()",
- "condition": "config.unix && libs.librt",
- "output": [ "privateFeature" ]
- },
- "clock-monotonic": {
- "label": "POSIX monotonic clock",
- "condition": "features.clock-gettime && tests.clock-monotonic",
- "output": [ "feature" ]
- },
- "doubleconversion": {
- "label": "DoubleConversion",
- "output": [ "privateFeature", "feature" ]
- },
- "system-doubleconversion": {
- "label": " Using system DoubleConversion",
- "enable": "input.doubleconversion == 'system'",
- "disable": "input.doubleconversion == 'qt'",
- "condition": "features.doubleconversion && libs.doubleconversion",
- "output": [ "privateFeature" ]
- },
- "cxx11_future": {
- "label": "C++11 <future>",
- "condition": "tests.cxx11_future",
- "output": [ "publicFeature" ]
- },
- "cxx17_filesystem": {
- "label": "C++17 <filesystem>",
- "condition": "tests.cxx17_filesystem",
- "output": [
- "publicFeature"
- ]
- },
- "eventfd": {
- "label": "eventfd",
- "condition": "!config.wasm && tests.eventfd",
- "output": [ "feature" ]
- },
- "futimens": {
- "label": "futimens()",
- "condition": "!config.win32 && tests.futimens",
- "output": [ "privateFeature" ]
- },
- "futimes": {
- "label": "futimes()",
- "condition": "!config.win32 && !features.futimens && tests.futimes",
- "output": [ "privateFeature" ]
- },
- "getauxval": {
- "label": "getauxval()",
- "condition": "config.linux && tests.getauxval",
- "output": [ "privateFeature" ]
- },
- "getentropy": {
- "label": "getentropy()",
- "condition": "config.unix && tests.getentropy",
- "output": [ "privateFeature" ]
- },
- "glib": {
- "label": "GLib",
- "autoDetect": "!config.win32",
- "condition": "libs.glib",
- "output": [ "privateFeature", "feature" ]
- },
- "glibc": {
- "label": "GNU libc",
- "autoDetect": "config.linux",
- "condition": "tests.glibc",
- "output": [ "privateFeature" ]
- },
- "icu": {
- "label": "ICU",
- "autoDetect": "!config.win32",
- "condition": "libs.icu",
- "output": [ "privateFeature" ]
- },
- "inotify": {
- "label": "inotify",
- "condition": "tests.inotify",
- "output": [ "privateFeature", "feature" ]
- },
- "ipc_posix": {
- "label": "Using POSIX IPC",
- "autoDetect": "!config.win32",
- "condition": "!tests.ipc_sysv && tests.ipc_posix",
- "output": [ { "type": "define", "name": "QT_POSIX_IPC" } ]
- },
- "journald": {
- "label": "journald",
- "autoDetect": false,
- "condition": "libs.journald",
- "output": [ "privateFeature" ]
- },
- "system-libb2": {
- "label": "Using system libb2",
- "comment": "Used by QCryptographicHash for the BLAKE2 hashing algorithms",
- "disable": "input.libb2 == 'no' || input.libb2 == 'qt'",
- "enable": "input.libb2 == 'system'",
- "condition": "libs.libb2",
- "output": [ "privateFeature" ]
- },
- "linkat": {
- "label": "linkat()",
- "comment": "Currently only used by QTemporaryFile; linkat() exists on Android, but hardlink creation fails due to security rules",
- "autoDetect": "config.linux && !config.android",
- "condition": "tests.linkat",
- "output": [ "privateFeature" ]
- },
- "std-atomic64": {
- "label": "64 bit atomic operations",
- "condition": "libs.libatomic",
- "output": [ "publicFeature" ]
- },
- "mimetype": {
- "label": "Mimetype handling",
- "purpose": "Provides MIME type handling.",
- "section": "Utilities",
- "output": [ "publicFeature", "feature" ]
- },
- "mimetype-database": {
- "label": "Built-in copy of the MIME database",
- "condition": "features.mimetype",
- "output": [ "privateFeature" ]
- },
- "pcre2": {
- "label": "PCRE2",
- "disable": "input.pcre == 'no'",
- "enable": "input.pcre == 'qt' || features.system-pcre2",
- "output": [ "privateConfig" ]
- },
- "system-pcre2": {
- "label": " Using system PCRE2",
- "disable": "input.pcre == 'no' || input.pcre == 'qt'",
- "enable": "input.pcre == 'system'",
- "condition": "libs.pcre2",
- "output": [ "privateFeature" ]
- },
- "poll_ppoll": {
- "label": "Native ppoll()",
- "emitIf": "!config.win32",
- "condition": "!config.wasm && tests.ppoll",
- "output": [ "privateFeature" ]
- },
- "poll_pollts": {
- "label": "Native pollts()",
- "emitIf": "!config.win32",
- "condition": "!features.poll_ppoll && tests.pollts",
- "output": [ "privateFeature" ]
- },
- "poll_poll": {
- "label": "Native poll()",
- "emitIf": "!config.win32",
- "condition": "!features.poll_ppoll && !features.poll_pollts && tests.poll",
- "output": [ "privateFeature" ]
- },
- "poll_select": {
- "label": "Emulated poll()",
- "emitIf": "!config.win32",
- "condition": "!features.poll_ppoll && !features.poll_pollts && !features.poll_poll",
- "output": [
- "privateFeature",
- { "type": "define", "name": "QT_NO_NATIVE_POLL" }
- ]
- },
- "qqnx_pps": {
- "label": "PPS",
- "emitIf": "config.qnx",
- "condition": "libs.pps",
- "output": [ "privateFeature" ]
- },
- "renameat2": {
- "label": "renameat2()",
- "condition": "config.linux && tests.renameat2",
- "output": [ "privateFeature" ]
- },
- "slog2": {
- "label": "slog2",
- "condition": "libs.slog2",
- "output": [ "privateFeature" ]
- },
- "statx": {
- "label": "statx() in libc",
- "condition": "config.linux && tests.statx",
- "output": [ "privateFeature" ]
- },
- "syslog": {
- "label": "syslog",
- "autoDetect": false,
- "condition": "tests.syslog",
- "output": [ "privateFeature" ]
- },
- "threadsafe-cloexec": {
- "label": "Threadsafe pipe creation",
- "condition": "tests.cloexec",
- "output": [
- "publicQtConfig",
- { "type": "define", "name": "QT_THREADSAFE_CLOEXEC", "value": 1 }
- ]
- },
- "properties": {
- "label": "Properties",
- "purpose": "Supports scripting Qt-based applications.",
- "section": "Kernel",
- "output": [ "publicFeature", "feature" ]
- },
- "regularexpression": {
- "label": "QRegularExpression",
- "purpose": "Provides an API to Perl-compatible regular expressions.",
- "section": "Kernel",
- "condition": "features.system-pcre2 || features.pcre2",
- "output": [ "publicFeature", "feature" ]
- },
- "sharedmemory": {
- "label": "QSharedMemory",
- "purpose": "Provides access to a shared memory segment.",
- "section": "Kernel",
- "condition": [
- "config.android || config.win32 || (!config.vxworks && (tests.ipc_sysv || tests.ipc_posix))"
- ],
- "output": [ "publicFeature", "feature" ]
- },
- "shortcut": {
- "label": "QShortcut",
- "purpose": "Provides keyboard accelerators and shortcuts.",
- "section": "Kernel",
- "output": [ "publicFeature", "feature" ]
- },
- "systemsemaphore": {
- "label": "QSystemSemaphore",
- "purpose": "Provides a general counting system semaphore.",
- "section": "Kernel",
- "condition": [
- "!config.integrity && !config.vxworks && !config.rtems",
- "config.android || config.win32 || tests.ipc_sysv || tests.ipc_posix"
- ],
- "output": [ "publicFeature", "feature" ]
- },
- "xmlstream": {
- "label": "XML Streaming APIs",
- "purpose": "Provides a simple streaming API for XML.",
- "section": "Kernel",
- "output": [ "publicFeature", "feature" ]
- },
- "xmlstreamreader": {
- "label": "QXmlStreamReader",
- "purpose": "Provides a well-formed XML parser with a simple streaming API.",
- "section": "Kernel",
- "condition": "features.xmlstream",
- "output": [ "publicFeature", "feature" ]
- },
- "xmlstreamwriter": {
- "label": "QXmlStreamWriter",
- "purpose": "Provides a XML writer with a simple streaming API.",
- "section": "Kernel",
- "condition": "features.xmlstream",
- "output": [ "publicFeature", "feature" ]
- },
- "textdate": {
- "label": "Text Date",
- "purpose": "Supports month and day names in dates.",
- "section": "Data structures",
- "output": [ "publicFeature", "feature" ]
- },
- "datestring": {
- "label": "QDate/QTime/QDateTime",
- "purpose": "Provides conversion between dates and strings.",
- "section": "Data structures",
- "condition": "features.textdate",
- "output": [ "publicFeature", "feature" ]
- },
- "process": {
- "label": "QProcess",
- "purpose": "Supports external process invocation.",
- "section": "File I/O",
- "condition": "features.processenvironment && (features.thread || !config.unix) && !config.uikit && !config.integrity && !config.vxworks && !config.rtems",
- "output": [ "publicFeature", "feature" ]
- },
- "processenvironment": {
- "label": "QProcessEnvironment",
- "purpose": "Provides a higher-level abstraction of environment variables.",
- "section": "File I/O",
- "condition": "!config.integrity && !config.rtems",
- "output": [ "publicFeature" ]
- },
- "temporaryfile": {
- "label": "QTemporaryFile",
- "purpose": "Provides an I/O device that operates on temporary files.",
- "section": "File I/O",
- "output": [ "publicFeature", "feature" ]
- },
- "library": {
- "label": "QLibrary",
- "purpose": "Provides a wrapper for dynamically loaded libraries.",
- "section": "File I/O",
- "condition": "config.win32 || config.hpux || (!config.nacl && features.dlopen)",
- "output": [ "publicFeature", "feature" ]
- },
- "settings": {
- "label": "QSettings",
- "purpose": "Provides persistent application settings.",
- "section": "File I/O",
- "output": [ "publicFeature", "feature" ]
- },
- "filesystemwatcher": {
- "label": "QFileSystemWatcher",
- "purpose": "Provides an interface for monitoring files and directories for modifications.",
- "section": "File I/O",
- "output": [ "publicFeature", "feature" ]
- },
- "filesystemiterator": {
- "label": "QFileSystemIterator",
- "purpose": "Provides fast file system iteration.",
- "section": "File I/O",
- "output": [ "publicFeature", "feature" ]
- },
- "itemmodel": {
- "label": "Qt Item Model",
- "purpose": "Provides the item model for item views",
- "section": "ItemViews",
- "output": [ "publicFeature", "feature" ]
- },
- "proxymodel": {
- "label": "QAbstractProxyModel",
- "purpose": "Supports processing of data passed between another model and a view.",
- "section": "ItemViews",
- "condition": "features.itemmodel",
- "output": [ "publicFeature", "feature" ]
- },
- "sortfilterproxymodel": {
- "label": "QSortFilterProxyModel",
- "purpose": "Supports sorting and filtering of data passed between another model and a view.",
- "section": "ItemViews",
- "condition": "features.proxymodel",
- "output": [ "publicFeature", "feature" ]
- },
- "identityproxymodel": {
- "label": "QIdentityProxyModel",
- "purpose": "Supports proxying a source model unmodified.",
- "section": "ItemViews",
- "condition": "features.proxymodel",
- "output": [ "publicFeature", "feature" ]
- },
- "transposeproxymodel": {
- "label": "QTransposeProxyModel",
- "purpose": "Provides a proxy to swap rows and columns of a model.",
- "section": "ItemViews",
- "condition": "features.proxymodel",
- "output": [ "publicFeature", "feature" ]
- },
- "concatenatetablesproxymodel": {
- "label": "QConcatenateTablesProxyModel",
- "purpose": "Supports concatenating source models.",
- "section": "ItemViews",
- "condition": "features.proxymodel",
- "output": [ "publicFeature", "feature" ]
- },
- "stringlistmodel": {
- "label": "QStringListModel",
- "purpose": "Provides a model that supplies strings to views.",
- "section": "ItemViews",
- "condition": "features.itemmodel",
- "output": [ "publicFeature", "feature" ]
- },
- "translation": {
- "label": "Translation",
- "purpose": "Supports translations using QObject::tr().",
- "section": "Internationalization",
- "output": [ "publicFeature", "feature" ]
- },
- "easingcurve": {
- "label": "Easing curve",
- "purpose": "Provides easing curve.",
- "section": "Utilities",
- "output": [ "publicFeature" ]
- },
- "animation": {
- "label": "Animation",
- "purpose": "Provides a framework for animations.",
- "section": "Utilities",
- "condition": "features.properties && features.easingcurve",
- "output": [ "publicFeature", "feature" ]
- },
- "gestures": {
- "label": "Gesture",
- "purpose": "Provides a framework for gestures.",
- "section": "Utilities",
- "output": [ "publicFeature", "feature" ]
- },
- "sha3-fast": {
- "label": "Speed optimized SHA3",
- "purpose": "Optimizes SHA3 for speed instead of size.",
- "section": "Utilities",
- "output": [ "privateFeature" ]
- },
- "jalalicalendar": {
- "label": "QJalaliCalendar",
- "purpose": "Support the Jalali (Persian) calendar",
- "section": "Utilities",
- "output": [ "publicFeature" ]
- },
- "hijricalendar": {
- "label": "QHijriCalendar",
- "purpose": "Generic basis for Islamic calendars, providing shared locale data",
- "section": "Utilities",
- "output": [ "privateFeature" ]
- },
- "islamiccivilcalendar": {
- "label": "QIslamicCivilCalendar",
- "purpose": "Support the Islamic Civil calendar",
- "section": "Utilities",
- "condition": "features.hijricalendar",
- "output": [ "publicFeature" ]
- },
- "timezone": {
- "label": "QTimeZone",
- "purpose": "Provides support for time-zone handling.",
- "section": "Utilities",
- "output": [ "publicFeature" ]
- },
- "datetimeparser": {
- "label": "QDateTimeParser",
- "purpose": "Provides support for parsing date-time texts.",
- "section": "Utilities",
- "condition": "features.datestring",
- "output": [ "privateFeature" ]
- },
- "commandlineparser": {
- "label": "QCommandlineParser",
- "purpose": "Provides support for command line parsing.",
- "section": "Utilities",
- "output": [ "publicFeature" ]
- },
- "lttng": {
- "label": "LTTNG",
- "autoDetect": false,
- "enable": "input.trace == 'lttng' || (input.trace =='yes' && config.linux)",
- "disable": "input.trace == 'etw' || input.trace =='no'",
- "condition": "config.linux && libs.lttng-ust",
- "output": [ "privateFeature" ]
- },
- "etw": {
- "label": "ETW",
- "autoDetect": false,
- "enable": "input.trace == 'etw' || (input.trace == 'yes' && config.win32)",
- "disable": "input.trace == 'lttng' || input.trace == 'no'",
- "condition": "config.win32",
- "output": [ "privateFeature" ]
- },
- "forkfd_pidfd": {
- "label": "CLONE_PIDFD support in forkfd",
- "condition": "config.linux",
- "output": [ "privateFeature" ]
- },
- "win32_system_libs": {
- "label": "Windows System Libraries",
- "condition": "config.win32 && libs.advapi32 && libs.gdi32 && libs.kernel32 && libs.netapi32 && libs.ole32 && libs.shell32 && libs.uuid && libs.user32 && libs.winmm && libs.ws2_32"
- },
- "cborstreamreader": {
- "label": "CBOR stream reading",
- "purpose": "Provides support for reading the CBOR binary format.
-
-Note that this is required for plugin loading. Qt GUI needs QPA plugins for basic operation.",
- "section": "Utilities",
- "output": [ "publicFeature" ]
- },
- "cborstreamwriter": {
- "label": "CBOR stream writing",
- "purpose": "Provides support for writing the CBOR binary format.",
- "section": "Utilities",
- "output": [ "publicFeature" ]
- }
- },
-
- "report": [
- {
- "type": "note",
- "condition": "features.journald || features.syslog || (config.qnx && features.slog2)",
- "message": "journald, syslog or slog2 integration is enabled. If your users intend to develop applications against this build, ensure that the IDEs they use either set QT_FORCE_STDERR_LOGGING to 1 or are able to read the logged output from journald, syslog or slog2."
- },
- {
- "type": "error",
- "condition": "!tests.cxx11_random",
- "message": "C++11 <random> is required and is missing or failed to compile."
- },
- {
- "type": "error",
- "condition": "input.doubleconversion == 'no' && !tests.xlocalescanprint",
- "message": "Your C library does not provide sscanf_l or snprintf_l. You need to use libdouble-conversion for double/string conversion."
- },
- {
- "type": "error",
- "condition": "!tests.atomicfptr",
- "message": "detected a std::atomic implementation that fails for function pointers. Please apply the patch corresponding to your Standard Library vendor, found in qtbase/config.tests/atomicfptr"
- },
- {
- "type": "error",
- "condition": [
- "config.unix || config.integrity",
- "!features.poll_ppoll",
- "!features.poll_pollts",
- "!features.poll_poll",
- "!features.poll_select"
- ],
- "message": "Qt requires poll(), ppoll(), poll_ts() or select() on this platform"
- }
- ],
-
- "summary": [
- {
- "section": "Qt Core",
- "entries": [
- "doubleconversion",
- "system-doubleconversion",
- "glib",
- "icu",
- "system-libb2",
- "mimetype-database",
- {
- "message": "Tracing backend",
- "type": "firstAvailableFeature",
- "args": "etw lttng"
- },
- {
- "section": "Logging backends",
- "entries": [
- "journald", "syslog", "slog2"
- ]
- },
- {
- "type": "feature",
- "args": "qqnx_pps",
- "condition": "config.qnx"
- },
- "pcre2",
- "system-pcre2",
- {
- "type": "feature",
- "args": "forkfd_pidfd",
- "condition": "config.linux"
- }
- ]
- }
- ]
-}