THRIFT-2098 Add support for Qt5+
diff --git a/cmake/DefineOptions.cmake b/cmake/DefineOptions.cmake
index adc750b..d7144ea 100644
--- a/cmake/DefineOptions.cmake
+++ b/cmake/DefineOptions.cmake
@@ -50,6 +50,13 @@
 find_package(Qt4 QUIET COMPONENTS QtCore QtNetwork)
 CMAKE_DEPENDENT_OPTION(WITH_QT4 "Build with Qt4 support" ON
                        "QT4_FOUND" OFF)
+find_package(Qt5 QUIET COMPONENTS Core Network)
+CMAKE_DEPENDENT_OPTION(WITH_QT5 "Build with Qt5 support" ON
+                       "Qt5_FOUND" OFF)
+if(${WITH_QT4} AND ${WITH_QT5} AND ${CMAKE_MAJOR_VERSION} LESS 3)
+  # cmake < 3.0.0 causes conflict when building both Qt4 and Qt5
+  set(WITH_QT4 OFF)
+endif()
 find_package(OpenSSL QUIET)
 CMAKE_DEPENDENT_OPTION(WITH_OPENSSL "Build with OpenSSL support" ON
                        "OpenSSL_FOUND" OFF)
@@ -95,6 +102,7 @@
 message(STATUS "  Build with ZLIB support:            ${WITH_ZLIB}")
 message(STATUS "  Build with libevent support:        ${WITH_LIBEVENT}")
 message(STATUS "  Build with Qt4 support:             ${WITH_QT4}")
+message(STATUS "  Build with Qt5 support:             ${WITH_QT5}")
 message(STATUS "  Build with OpenSSL support:         ${WITH_OPENSSL}")
 message(STATUS "  Build with Boost thread support:    ${WITH_BOOSTTHREADS}")
 message(STATUS "  Build with C++ std::thread support: ${WITH_STDTHREADS}")