Add include guards to all boost includes, as qt's moc trips over nested BOOST_JOIN macros: * AUTOGEN: error: process for /var/tmp/portage/media-libs/qt-gstreamer-1.2.0-r1/work/qt-gstreamer-1.2.0-4/src/QGst/moc_graphicsvideowidget.cpp failed: * usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN" https://bugs.gentoo.org/show_bug.cgi?id=578906 --- qt-gstreamer-1.2.0/codegen/generator.cpp +++ qt-gstreamer-1.2.0/codegen/generator.cpp @@ -54,7 +54,9 @@ << "*/" << endl << endl << "#define INCLUDED_FROM_CODEGEN" << endl + << "#ifndef Q_MOC_RUN" << endl << "#include " << endl + << "#endif" << endl << endl << "#define REGISTER_TYPE_IMPLEMENTATION(T, GTYPE) \\" << endl << " namespace QGlib { \\" << endl --- qt-gstreamer-1.2.0/src/QGlib/connect.cpp +++ qt-gstreamer-1.2.0/src/QGlib/connect.cpp @@ -20,10 +20,12 @@ #include #include #include +#ifndef Q_MOC_RUN #include #include #include #include +#endif namespace QGlib { namespace Private { --- qt-gstreamer-1.2.0/src/QGlib/connect.h +++ qt-gstreamer-1.2.0/src/QGlib/connect.h @@ -25,8 +25,10 @@ #include #include #include +#ifndef Q_MOC_RUN #include #include +#endif namespace QGlib { --- qt-gstreamer-1.2.0/src/QGlib/connectimpl.h +++ qt-gstreamer-1.2.0/src/QGlib/connectimpl.h @@ -26,7 +26,9 @@ # include "refpointer.h" # include # include +#ifndef Q_MOC_RUN # include +#endif namespace QGlib { @@ -203,9 +205,11 @@ # else //QGLIB_HAVE_CXX0X +#ifndef Q_MOC_RUN # include # include # include +#endif // include the second part of this file as many times as QGLIB_CONNECT_MAX_ARGS specifies # define BOOST_PP_ITERATION_PARAMS_1 (3,(0, QGLIB_CONNECT_MAX_ARGS, "QGlib/connectimpl.h")) --- qt-gstreamer-1.2.0/src/QGlib/emitimpl.h +++ qt-gstreamer-1.2.0/src/QGlib/emitimpl.h @@ -125,7 +125,9 @@ # else //QGLIB_HAVE_CXX0X +#ifndef Q_MOC_RUN # include +#endif // include the second part of this file as many times as QGLIB_SIGNAL_MAX_ARGS specifies # define BOOST_PP_ITERATION_PARAMS_1 (3,(0, QGLIB_SIGNAL_MAX_ARGS, "QGlib/emitimpl.h")) --- qt-gstreamer-1.2.0/src/QGlib/gen.cpp +++ qt-gstreamer-1.2.0/src/QGlib/gen.cpp @@ -19,7 +19,9 @@ */ #define INCLUDED_FROM_CODEGEN +#ifndef Q_MOC_RUN #include +#endif #define REGISTER_TYPE_IMPLEMENTATION(T, GTYPE) \ namespace QGlib { \ --- qt-gstreamer-1.2.0/src/QGlib/global.h +++ qt-gstreamer-1.2.0/src/QGlib/global.h @@ -23,7 +23,9 @@ #endif #include +#ifndef Q_MOC_RUN #include +#endif /* defined by cmake when building this library */ #if defined(QtGLib_EXPORTS) || defined(Qt5GLib_EXPORTS) @@ -84,7 +86,9 @@ # define QGLIB_STATIC_ASSERT(expr, message) static_assert(expr, message) # define QGLIB_HAVE_CXX0X_STATIC_ASSERT 1 #else +#ifndef Q_MOC_RUN # include +#endif # define QGLIB_STATIC_ASSERT(expr, message) BOOST_STATIC_ASSERT(expr) #endif --- qt-gstreamer-1.2.0/src/QGlib/refpointer.h +++ qt-gstreamer-1.2.0/src/QGlib/refpointer.h @@ -23,8 +23,10 @@ #include "type.h" #include "wrap.h" #include +#ifndef Q_MOC_RUN #include #include +#endif #include namespace QGlib { --- qt-gstreamer-1.2.0/src/QGlib/type.h +++ qt-gstreamer-1.2.0/src/QGlib/type.h @@ -21,7 +21,9 @@ #include "global.h" #include +#ifndef Q_MOC_RUN #include +#endif /* * This is a re-definition of GType inside the QGlib::Private namespace. --- qt-gstreamer-1.2.0/src/QGlib/value.cpp +++ qt-gstreamer-1.2.0/src/QGlib/value.cpp @@ -19,7 +19,9 @@ #include "value.h" #include "string.h" #include +#ifndef Q_MOC_RUN #include +#endif #include #include #include --- qt-gstreamer-1.2.0/src/QGlib/value.h +++ qt-gstreamer-1.2.0/src/QGlib/value.h @@ -23,8 +23,10 @@ #include "type.h" #include "refpointer.h" #include "error.h" +#ifndef Q_MOC_RUN #include #include +#endif #include #include #include --- qt-gstreamer-1.2.0/src/QGst/bin.h +++ qt-gstreamer-1.2.0/src/QGst/bin.h @@ -28,8 +28,10 @@ #endif #if !QGLIB_HAVE_CXX0X +#ifndef Q_MOC_RUN # include #endif +#endif namespace QGst { --- qt-gstreamer-1.2.0/src/QGst/element.h +++ qt-gstreamer-1.2.0/src/QGst/element.h @@ -22,8 +22,10 @@ #include "clocktime.h" #if !QGLIB_HAVE_CXX0X +#ifndef Q_MOC_RUN # include #endif +#endif namespace QGst { --- qt-gstreamer-1.2.0/src/QGst/gen.cpp +++ qt-gstreamer-1.2.0/src/QGst/gen.cpp @@ -19,7 +19,9 @@ */ #define INCLUDED_FROM_CODEGEN +#ifndef Q_MOC_RUN #include +#endif #define REGISTER_TYPE_IMPLEMENTATION(T, GTYPE) \ namespace QGlib { \