summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/corelib/configure.json34
-rw-r--r--src/gui/configure.json33
2 files changed, 59 insertions, 8 deletions
diff --git a/src/corelib/configure.json b/src/corelib/configure.json
index 81448174b6..eb213398ca 100644
--- a/src/corelib/configure.json
+++ b/src/corelib/configure.json
@@ -277,7 +277,10 @@
"cxx11_random": {
"label": "C++11 <random>",
"type": "compile",
- "test": "unix/cxx11_random"
+ "test": {
+ "include": "random",
+ "main": "std::mt19937 mt(0);"
+ }
},
"eventfd": {
"label": "eventfd",
@@ -295,22 +298,43 @@
"futimens": {
"label": "futimens()",
"type": "compile",
- "test": "unix/futimens"
+ "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"
+ ]
+ }
},
"futimes": {
"label": "futimes()",
"type": "compile",
- "test": "unix/futimes"
+ "test": {
+ "include": "sys/time.h",
+ "main": "futimes(-1, 0);"
+ }
},
"getauxval": {
"label": "getauxval()",
"type": "compile",
- "test": "unix/getauxval"
+ "test": {
+ "include": "sys/auxv.h",
+ "main": "(void) getauxval(AT_NULL);"
+ }
},
"getentropy": {
"label": "getentropy()",
"type": "compile",
- "test": "unix/getentropy"
+ "test": {
+ "include": "unistd.h",
+ "main": [
+ "char buf[32];",
+ "(void) getentropy(buf, sizeof(buf));"
+ ]
+ }
},
"posix-iconv": {
"label": "POSIX iconv",
diff --git a/src/gui/configure.json b/src/gui/configure.json
index 67378114ca..caa6f065f0 100644
--- a/src/gui/configure.json
+++ b/src/gui/configure.json
@@ -521,7 +521,23 @@
},
"vulkan": {
"label": "Vulkan",
- "test": "qpa/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" }
@@ -776,7 +792,15 @@
},
"xrender": {
"label": "XRender for native painting",
- "test": "x11/xrender",
+ "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"
],
@@ -1030,7 +1054,10 @@
"opengles32": {
"label": "OpenGL ES 3.2",
"type": "compile",
- "test": "unix/opengles32",
+ "test": {
+ "include": "GLES3/gl32.h",
+ "main": "glFramebufferTexture(GL_TEXTURE_2D, GL_DEPTH_STENCIL_ATTACHMENT, 1, 0);"
+ },
"use": "opengl_es2"
},
"qpa_default_platform": {