Fix cross platform detection of evdev on win32
Evdev is not known to the windows configure and therefore some code is currently broken which depends on QT_NO_EVDEV. This patch introduces evdev to the configure app on windows and disables evdev support for cross compilation if not available. Change-Id: I6acb5b593668c85a19ef8658a8d4c36ec3d2a686 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
This commit is contained in:
parent
bc4590a780
commit
151cf2047a
@ -190,6 +190,7 @@ Configure::Configure(int& argc, char** argv)
|
|||||||
dictionary[ "POSIX_IPC" ] = "no";
|
dictionary[ "POSIX_IPC" ] = "no";
|
||||||
dictionary[ "QT_GLIB" ] = "no";
|
dictionary[ "QT_GLIB" ] = "no";
|
||||||
dictionary[ "QT_ICONV" ] = "auto";
|
dictionary[ "QT_ICONV" ] = "auto";
|
||||||
|
dictionary[ "QT_EVDEV" ] = "auto";
|
||||||
dictionary[ "QT_INOTIFY" ] = "auto";
|
dictionary[ "QT_INOTIFY" ] = "auto";
|
||||||
dictionary[ "QT_EVENTFD" ] = "auto";
|
dictionary[ "QT_EVENTFD" ] = "auto";
|
||||||
dictionary[ "QT_CUPS" ] = "auto";
|
dictionary[ "QT_CUPS" ] = "auto";
|
||||||
@ -1255,6 +1256,12 @@ void Configure::parseCmdLine()
|
|||||||
dictionary["QT_ICONV"] = "gnu";
|
dictionary["QT_ICONV"] = "gnu";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if (configCmdLine.at(i) == "-no-evdev") {
|
||||||
|
dictionary[ "QT_EVDEV" ] = "no";
|
||||||
|
} else if (configCmdLine.at(i) == "-evdev") {
|
||||||
|
dictionary[ "QT_EVDEV" ] = "yes";
|
||||||
|
}
|
||||||
|
|
||||||
else if (configCmdLine.at(i) == "-inotify") {
|
else if (configCmdLine.at(i) == "-inotify") {
|
||||||
dictionary["QT_INOTIFY"] = "yes";
|
dictionary["QT_INOTIFY"] = "yes";
|
||||||
} else if (configCmdLine.at(i) == "-no-inotify") {
|
} else if (configCmdLine.at(i) == "-no-inotify") {
|
||||||
@ -1668,6 +1675,7 @@ void Configure::applySpecSpecifics()
|
|||||||
dictionary[ "QT_CUPS" ] = "no";
|
dictionary[ "QT_CUPS" ] = "no";
|
||||||
dictionary[ "QT_GLIB" ] = "no";
|
dictionary[ "QT_GLIB" ] = "no";
|
||||||
dictionary[ "QT_ICONV" ] = "no";
|
dictionary[ "QT_ICONV" ] = "no";
|
||||||
|
dictionary[ "QT_EVDEV" ] = "no";
|
||||||
dictionary[ "FONT_CONFIG" ] = "auto";
|
dictionary[ "FONT_CONFIG" ] = "auto";
|
||||||
|
|
||||||
dictionary["DECORATIONS"] = "default windows styled";
|
dictionary["DECORATIONS"] = "default windows styled";
|
||||||
@ -1826,6 +1834,9 @@ bool Configure::displayHelp()
|
|||||||
desc("QT_ICONV", "yes", "-sun-iconv", "Enable support for iconv(3) using sun-iconv.");
|
desc("QT_ICONV", "yes", "-sun-iconv", "Enable support for iconv(3) using sun-iconv.");
|
||||||
desc("QT_ICONV", "yes", "-gnu-iconv", "Enable support for iconv(3) using gnu-libiconv.\n");
|
desc("QT_ICONV", "yes", "-gnu-iconv", "Enable support for iconv(3) using gnu-libiconv.\n");
|
||||||
|
|
||||||
|
desc("QT_EVDEV", "no", "-no-evdev", "Do not enable support for evdev.");
|
||||||
|
desc("QT_EVDEV", "yes", "-evdev", "Enable support for evdev.");
|
||||||
|
|
||||||
desc("QT_INOTIFY", "yes", "-inotify", "Explicitly enable Qt inotify(7) support.");
|
desc("QT_INOTIFY", "yes", "-inotify", "Explicitly enable Qt inotify(7) support.");
|
||||||
desc("QT_INOTIFY", "no", "-no-inotify", "Explicitly disable Qt inotify(7) support.\n");
|
desc("QT_INOTIFY", "no", "-no-inotify", "Explicitly disable Qt inotify(7) support.\n");
|
||||||
|
|
||||||
@ -2237,6 +2248,8 @@ bool Configure::checkAvailability(const QString &part)
|
|||||||
available = tryCompileProject("qpa/direct2d");
|
available = tryCompileProject("qpa/direct2d");
|
||||||
} else if (part == "ICONV") {
|
} else if (part == "ICONV") {
|
||||||
available = tryCompileProject("unix/iconv") || tryCompileProject("unix/gnu-libiconv");
|
available = tryCompileProject("unix/iconv") || tryCompileProject("unix/gnu-libiconv");
|
||||||
|
} else if (part == "EVDEV") {
|
||||||
|
available = tryCompileProject("unix/evdev");
|
||||||
} else if (part == "INOTIFY") {
|
} else if (part == "INOTIFY") {
|
||||||
available = tryCompileProject("unix/inotify");
|
available = tryCompileProject("unix/inotify");
|
||||||
} else if (part == "QT_EVENTFD") {
|
} else if (part == "QT_EVENTFD") {
|
||||||
@ -2387,6 +2400,10 @@ void Configure::autoDetection()
|
|||||||
if (dictionary["QT_ICONV"] == "auto")
|
if (dictionary["QT_ICONV"] == "auto")
|
||||||
dictionary["QT_ICONV"] = checkAvailability("ICONV") ? "yes" : "no";
|
dictionary["QT_ICONV"] = checkAvailability("ICONV") ? "yes" : "no";
|
||||||
|
|
||||||
|
// Detection of evdev support
|
||||||
|
if (dictionary["QT_EVDEV"] == "auto")
|
||||||
|
dictionary["QT_EVDEV"] = checkAvailability("EVDEV") ? "yes" : "no";
|
||||||
|
|
||||||
// Detection of inotify
|
// Detection of inotify
|
||||||
if (dictionary["QT_INOTIFY"] == "auto")
|
if (dictionary["QT_INOTIFY"] == "auto")
|
||||||
dictionary["QT_INOTIFY"] = checkAvailability("INOTIFY") ? "yes" : "no";
|
dictionary["QT_INOTIFY"] = checkAvailability("INOTIFY") ? "yes" : "no";
|
||||||
@ -2805,6 +2822,9 @@ void Configure::generateOutputVars()
|
|||||||
else if (dictionary["QT_ICONV"] == "gnu")
|
else if (dictionary["QT_ICONV"] == "gnu")
|
||||||
qtConfig += "gnu-libiconv";
|
qtConfig += "gnu-libiconv";
|
||||||
|
|
||||||
|
if (dictionary["QT_EVDEV"] == "yes")
|
||||||
|
qtConfig += "evdev";
|
||||||
|
|
||||||
if (dictionary["QT_INOTIFY"] == "yes")
|
if (dictionary["QT_INOTIFY"] == "yes")
|
||||||
qtConfig += "inotify";
|
qtConfig += "inotify";
|
||||||
|
|
||||||
@ -3487,6 +3507,7 @@ void Configure::generateConfigfiles()
|
|||||||
if (dictionary["LARGE_FILE"] == "yes") qconfigList += "QT_LARGEFILE_SUPPORT=64";
|
if (dictionary["LARGE_FILE"] == "yes") qconfigList += "QT_LARGEFILE_SUPPORT=64";
|
||||||
if (dictionary["QT_CUPS"] == "no") qconfigList += "QT_NO_CUPS";
|
if (dictionary["QT_CUPS"] == "no") qconfigList += "QT_NO_CUPS";
|
||||||
if (dictionary["QT_ICONV"] == "no") qconfigList += "QT_NO_ICONV";
|
if (dictionary["QT_ICONV"] == "no") qconfigList += "QT_NO_ICONV";
|
||||||
|
if (dictionary["QT_EVDEV"] == "no") qconfigList += "QT_NO_EVDEV";
|
||||||
if (dictionary["QT_GLIB"] == "no") qconfigList += "QT_NO_GLIB";
|
if (dictionary["QT_GLIB"] == "no") qconfigList += "QT_NO_GLIB";
|
||||||
if (dictionary["QT_INOTIFY"] == "no") qconfigList += "QT_NO_INOTIFY";
|
if (dictionary["QT_INOTIFY"] == "no") qconfigList += "QT_NO_INOTIFY";
|
||||||
if (dictionary["QT_EVENTFD"] == "no") qconfigList += "QT_NO_EVENTFD";
|
if (dictionary["QT_EVENTFD"] == "no") qconfigList += "QT_NO_EVENTFD";
|
||||||
@ -3583,6 +3604,7 @@ void Configure::displayConfig()
|
|||||||
sout << "Large File support.........." << dictionary[ "LARGE_FILE" ] << endl;
|
sout << "Large File support.........." << dictionary[ "LARGE_FILE" ] << endl;
|
||||||
sout << "NIS support................." << dictionary[ "NIS" ] << endl;
|
sout << "NIS support................." << dictionary[ "NIS" ] << endl;
|
||||||
sout << "Iconv support..............." << dictionary[ "QT_ICONV" ] << endl;
|
sout << "Iconv support..............." << dictionary[ "QT_ICONV" ] << endl;
|
||||||
|
sout << "Evdev support..............." << dictionary[ "QT_EVDEV" ] << endl;
|
||||||
sout << "Inotify support............." << dictionary[ "QT_INOTIFY" ] << endl;
|
sout << "Inotify support............." << dictionary[ "QT_INOTIFY" ] << endl;
|
||||||
sout << "eventfd(7) support.........." << dictionary[ "QT_EVENTFD" ] << endl;
|
sout << "eventfd(7) support.........." << dictionary[ "QT_EVENTFD" ] << endl;
|
||||||
sout << "Glib support................" << dictionary[ "QT_GLIB" ] << endl;
|
sout << "Glib support................" << dictionary[ "QT_GLIB" ] << endl;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user