[ https://issues.apache.org/jira/browse/THRIFT-4560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James E. King III resolved THRIFT-4560. --------------------------------------- Resolution: Cannot Reproduce Assignee: James E. King III Fix Version/s: 1.0 Qt4 has been removed. I checked and if -DWITH_QT5=ON is set, later on in lib/cpp/src/thrift/qt/CMakeLists.txt there is a find_package for Qt5 with the REQUIRED flag. As such I see no issue that needs to be resolved. > The logic of CMAKE_DEPENDENT_OPTION seems wrong and can break the build > ----------------------------------------------------------------------- > > Key: THRIFT-4560 > URL: https://issues.apache.org/jira/browse/THRIFT-4560 > Project: Thrift > Issue Type: Bug > Components: Build Process > Affects Versions: 1.0 > Reporter: Mario Emmenlauer > Assignee: James E. King III > Priority: Minor > Fix For: 1.0 > > > The cmake build uses {{CMAKE_DEPENDENT_OPTION}} in several places. But > according to my understanding, the resulting logic is wrong and can lead to > problems. Consider the following example for building with Qt4 or Qt5 from > {{build/cmake/DefineOptions.cmake}}: > {noformat} > find_package(Qt5 QUIET COMPONENTS Core Network) > CMAKE_DEPENDENT_OPTION(WITH_QT5 "Build with Qt5 support" ON > "Qt5_FOUND" OFF) > {noformat} > If a user configures thrift with {{cmake -DWITH_QT5=ON}} but does not have > Qt5 installed, they will not get an error. They will just get a warning that > the option {{WITH_QT5}} was unused. > Furthermore, if the user disables Qt5 (i.e. because its broken), then {{cmake > -DWITH_QT5=OFF}} will **not** disable the search for Qt5. If the > {{find_package(Qt5 QUIET COMPONENTS Core Network)}} fails in error, the build > will fail, despite the explicit request for {{cmake -DWITH_QT5=OFF}}. > My expected behavior is that if {{WITH_QT5=OFF}} is specified, that no Qt5 > checks are run and that a missing/broken Qt5 would not impact thrift in any > way. -- This message was sent by Atlassian JIRA (v7.6.3#76005)