From: Uwe Hermann Date: Sat, 28 Feb 2015 19:39:06 +0000 (+0100) Subject: Add a workaround for QTBUG-22829. X-Git-Tag: pulseview-0.3.0~232 X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=commitdiff_plain;h=0661570b953f656b96762fc5ba81b9ee6b6fd83a Add a workaround for QTBUG-22829. Qt4's MOC has issues parsing some C++ constructs, yielding errors like: [...]/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN" Full details: https://bugreports.qt.io/browse/QTBUG-22829 Use -DBOOST_NEXT_PRIOR_HPP_INCLUDED as MOC option to workaround these issues. This is currently sufficient, however, depending on the future PulseView code it may be necessary to add further options mentioned in the above bugreport (e.g. BOOST_TT_HAS_OPERATOR_HPP_INCLUDED, BOOST_LEXICAL_CAST_INCLUDED, BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION). This fixes bug #532 (fixing the build on at least Mac OS X and MinGW). --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 79dd8f8b..80e90e9b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -296,7 +296,10 @@ if(Qt5Core_FOUND) qt5_wrap_ui(pulseview_FORMS_HEADERS ${pulseview_FORMS}) qt5_add_resources(pulseview_RESOURCES_RCC ${pulseview_RESOURCES}) else() - qt4_wrap_cpp(pulseview_HEADERS_MOC ${pulseview_HEADERS}) + # Workaroud for QTBUG-22829: -DBOOST_NEXT_PRIOR_HPP_INCLUDED. + # https://bugreports.qt.io/browse/QTBUG-22829 + qt4_wrap_cpp(pulseview_HEADERS_MOC ${pulseview_HEADERS} + OPTIONS -DBOOST_NEXT_PRIOR_HPP_INCLUDED) qt4_wrap_ui(pulseview_FORMS_HEADERS ${pulseview_FORMS}) qt4_add_resources(pulseview_RESOURCES_RCC ${pulseview_RESOURCES}) include(${QT_USE_FILE}) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 98b02999..91b85320 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -132,7 +132,10 @@ endif() if(Qt5Core_FOUND) qt5_wrap_cpp(pulseview_TEST_HEADERS_MOC ${pulseview_TEST_HEADERS}) else() - qt4_wrap_cpp(pulseview_TEST_HEADERS_MOC ${pulseview_TEST_HEADERS}) + # Workaroud for QTBUG-22829: -DBOOST_NEXT_PRIOR_HPP_INCLUDED. + # https://bugreports.qt.io/browse/QTBUG-22829 + qt4_wrap_cpp(pulseview_TEST_HEADERS_MOC ${pulseview_TEST_HEADERS} + OPTIONS -DBOOST_NEXT_PRIOR_HPP_INCLUDED) include(${QT_USE_FILE}) endif()