From 2d3c73fcfe7a93cb46190e8e82410fe93145dbe0 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Fri, 9 Sep 2016 09:50:08 +0200 Subject: Modularize configure.json/.pri Move the different parts of configure.json/.pri into the libraries where they belong. Gui is not yet fully modularized, and contains many things related to the different QPA plugins. Done-with: Oswald Buddenhagen Change-Id: I6659bb29354ed1f36b95b8c69e7fce58f642053f Reviewed-by: Lars Knoll --- src/network/configure.json | 216 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 216 insertions(+) create mode 100644 src/network/configure.json (limited to 'src/network/configure.json') diff --git a/src/network/configure.json b/src/network/configure.json new file mode 100644 index 0000000000..a647439b19 --- /dev/null +++ b/src/network/configure.json @@ -0,0 +1,216 @@ +{ + "module": "network", + "depends": [ + "core" + ], + "testDir": "../../config.tests", + + "commandline": { + "assignments": { + "OPENSSL_LIBS": "openssl.libs", + "OPENSSL_LIBS_DEBUG": "openssl.libs.debug", + "OPENSSL_LIBS_RELEASE": "openssl.libs.release", + "OPENSSL_PATH": "openssl.prefix" + }, + "options": { + "libproxy": "boolean", + "openssl": { "type": "optionalString", "values": [ "no", "yes", "linked", "runtime" ] }, + "openssl-linked": { "type": "void", "name": "openssl", "value": "linked" }, + "openssl-runtime": { "type": "void", "name": "openssl", "value": "runtime" }, + "sctp": "boolean", + "securetransport": "boolean", + "ssl": "boolean", + "system-proxies": "boolean" + } + }, + + "libraries": { + "corewlan": { + "description": "CoreWLan", + "export": "", + "test": "mac/corewlan", + "sources": [ + "-framework CoreWLAN -framework Foundation" + ] + }, + "network": { + "export": "", + "sources": [ + { "type": "makeSpec", "spec": "NETWORK" } + ] + }, + "libproxy": { + "description": "libproxy", + "test": "common/libproxy", + "sources": [ + "-lproxy" + ] + }, + "openssl": { + "description": "OpenSSL Libraries", + "export": "", + "sources": [ + { "type": "openssl" }, + { + "comment": "placeholder for OPENSSL_LIBS{,_{DEBUG,RELEASE}}", + "libs": "", + "builds": { + "debug": "", + "release": "" + }, + "condition": "config.win32 && !features.shared" + }, + { "libs": "-lssleay32 -llibeay32", "condition": "config.win32 && features.shared" }, + { "libs": "-lssl -lcrypto", "condition": "!config.win32" } + ] + } + }, + + "tests": { + "getaddrinfo": { + "description": "getaddrinfo()", + "type": "compile", + "test": "unix/getaddrinfo", + "use": "network" + }, + "getifaddrs": { + "description": "getifaddrs()", + "type": "compile", + "test": "unix/getifaddrs", + "use": "network" + }, + "ipv6ifname": { + "description": "IPv6 ifname", + "type": "compile", + "test": "unix/ipv6ifname", + "use": "network" + }, + "openssl": { + "description": "OpenSSL", + "type": "compile", + "test": "unix/openssl" + }, + "sctp": { + "description": "SCTP support", + "type": "compile", + "test": "unix/sctp", + "use": "network" + } + }, + + "features": { + "corewlan": { + "description": "CoreWLan", + "condition": "libs.corewlan", + "emitIf": "config.darwin", + "output": [ "feature", "privateFeature" ] + }, + "getaddrinfo": { + "description": "getaddrinfo()", + "condition": "tests.getaddrinfo", + "output": [ "feature" ] + }, + "getifaddrs": { + "description": "getifaddrs()", + "condition": "tests.getifaddrs", + "output": [ "feature" ] + }, + "ipv6ifname": { + "description": "IPv6 ifname", + "condition": "tests.ipv6ifname", + "output": [ "feature" ] + }, + "libproxy": { + "description": "libproxy", + "autoDetect": false, + "condition": "libs.libproxy", + "output": [ "privateFeature" ] + }, + "openssl": { + "description": "OpenSSL", + "enable": "input.openssl == 'yes' || input.openssl == 'linked' || input.openssl == 'runtime'", + "disable": "input.openssl == 'no' || input.ssl == 'no'", + "autoDetect": "!config.winrt", + "condition": "!features.securetransport && tests.openssl", + "output": [ + "privateFeature", + { "type": "publicQtConfig", "condition": "!features.openssl-linked" }, + { "type": "define", "negative": true, "name": "QT_NO_OPENSSL" } + ] + }, + "openssl-linked": { + "description": " Qt directly linked to OpenSSL", + "enable": "input.openssl == 'linked'", + "disable": "input.openssl != 'linked'", + "condition": "features.openssl && libs.openssl", + "output": [ + "privateFeature", + { "type": "varAssign", "name": "OPENSSL_LIBS", "value": "libs.openssl.libs", "eval": "true" }, + { "type": "varAssign", "name": "OPENSSL_LIBS_DEBUG", "value": "libs.openssl.builds.debug.libs", + "eval": "true", "condition": "config.win32" }, + { "type": "varAssign", "name": "OPENSSL_LIBS_RELEASE", "value": "libs.openssl.builds.release.libs", + "eval": "true", "condition": "config.win32" }, + { "type": "define", "name": "QT_LINKED_OPENSSL" } + ] + }, + "securetransport": { + "description": "SecureTransport", + "disable": "input.securetransport == 'no' || input.ssl == 'no'", + "condition": "config.darwin && (input.openssl == '' || input.openssl == 'no')", + "output": [ + "privateFeature", + { "type": "define", "name": "QT_SECURETRANSPORT" } + ] + }, + "ssl": { + "description": "SSL", + "condition": "config.winrt || features.securetransport || features.openssl", + "output": [ "publicFeature", "feature" ] + }, + "sctp": { + "description": "SCTP", + "autoDetect": false, + "condition": "tests.sctp", + "output": [ "publicFeature", "feature" ] + }, + "system-proxies": { + "description": "Use system proxies", + "output": [ "privateFeature" ] + } + }, + + "report": [ + { + "type": "note", + "condition": "features.openssl-linked && libs.openssl.source != 0 + && input.openssl.prefix == '' && input.openssl.libs == '' && input.openssl.libs.debug == ''", + "message": "When linking against OpenSSL, you can override the default +library names through OPENSSL_LIBS. +For example: + OPENSSL_LIBS='-L/opt/ssl/lib -lssl -lcrypto' ./configure -openssl-linked" + } + ], + + "summary": [ + { + "section": "Qt Network", + "entries": [ + { + "type": "feature", + "args": "corewlan", + "condition": "config.darwin" + }, + "getaddrinfo", "getifaddrs", "ipv6ifname", "libproxy", + { + "type": "feature", + "args": "securetransport", + "condition": "config.darwin" + }, + "openssl", + "openssl-linked", + "sctp", + "system-proxies" + ] + } + ] +} -- cgit v1.2.3