Closed Bug 587715 Opened 14 years ago Closed 14 years ago

Qt build bustage after moving some includes around in nsObjectFrame.cpp

Categories

(Firefox Build System :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: benjamin, Unassigned)

References

Details

c++ -o nsObjectFrame.o -c -fvisibility=hidden -DMOZILLA_INTERNAL_API -D_IMPL_NS_COM -DEXPORT_XPT_API -DEXPORT_XPTC_API -D_IMPL_NS_GFX -D_IMPL_NS_WIDGET -DIMPL_XREAPI -DIMPL_NS_NET -DIMPL_THEBES -DSTATIC_EXPORTABLE_JS_API -DZLIB_INTERNAL -DOSTYPE=\"Linux2.6.18-8\" -DOSARCH=Linux -DEXCLUDE_SKIA_DEPENDENCIES -DCHROMIUM_MOZILLA_BUILD -DOS_LINUX=1 -DOS_POSIX=1 -D_IMPL_NS_LAYOUT -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/ipc/chromium/src -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/ipc/glue -I../../ipc/ipdl/_ipdlheaders -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../base -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../forms -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../tables -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../xul/base/src -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../../content/xul/content/src -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../../content/base/src -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../../content/html/content/src -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/../../dom/base -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/objdir/dist/include/cairo -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic -I. -I../../dist/include -I../../dist/include/nsprpub -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/objdir/dist/include/nspr -I/home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/objdir/dist/include/nss -fPIC -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -Wno-long-long -fno-strict-aliasing -pthread -pipe -DNDEBUG -DTRIMMED -Os -freorder-blocks -fomit-frame-pointer -finline-limit=50 -DQT_SHARED -I/usr/include/QtGui -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtDBus -I/usr/include/QtXml -I/usr/include/QtOpenGL -DMOZILLA_CLIENT -include ../../mozilla-config.h -MD -MF .deps/nsObjectFrame.pp /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp In file included from /usr/include/QtCore/qstring.h:46, from /usr/include/QtCore/qobject.h:48, from /usr/include/QtGui/qwidget.h:46, from /usr/include/QtGui/QWidget:1, from /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp:64: /usr/include/QtCore/qbytearray.h:369:27: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qbytearray.h:417:58: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qbytearray.h:431:53: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qbytearray.h:434:42: error: macro "realloc" requires 2 arguments, but only 1 given In file included from /usr/include/QtCore/qobject.h:48, from /usr/include/QtGui/qwidget.h:46, from /usr/include/QtGui/QWidget:1, from /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp:64: /usr/include/QtCore/qstring.h:116:76: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qstring.h:262:38: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qstring.h:615:18: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qstring.h:616:27: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qstring.h:704:51: error: macro "realloc" requires 2 arguments, but only 1 given /usr/include/QtCore/qstring.h:870:93: error: macro "realloc" requires 2 arguments, but only 1 given In file included from /usr/include/QtCore/qobject.h:50, from /usr/include/QtGui/qwidget.h:46, from /usr/include/QtGui/QWidget:1, from /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp:64: /usr/include/QtCore/qlist.h:78:27: error: macro "realloc" requires 2 arguments, but only 1 given In file included from /usr/include/QtCore/qstringlist.h:46, from /usr/include/QtGui/qcolor.h:47, from /usr/include/QtGui/qpalette.h:46, from /usr/include/QtGui/qwidget.h:49, from /usr/include/QtGui/QWidget:1, from /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp:64: /usr/include/QtCore/qdatastream.h:50:2: error: #error qdatastream.h must be included before any header file that defines Status In file included from /usr/include/QtGui/qbrush.h:47, from /usr/include/QtGui/qpalette.h:47, from /usr/include/QtGui/qwidget.h:49, from /usr/include/QtGui/QWidget:1, from /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp:64: /usr/include/QtCore/qvector.h:83:93: error: macro "malloc" passed 4 arguments, but takes just 1 /usr/include/QtCore/qvector.h:86:54: error: macro "free" passed 2 arguments, but takes just 1 /usr/include/QtCore/qvector.h:96:66: error: macro "free" passed 2 arguments, but takes just 1 /usr/include/QtCore/qvector.h:96:128: error: macro "free" passed 2 arguments, but takes just 1 /usr/include/QtCore/qvector.h:438:34: error: macro "free" passed 2 arguments, but takes just 1 In file included from /usr/include/QtCore/qvariant.h:48, from /usr/include/QtCore/qmimedata.h:45, from /usr/include/QtGui/qmime.h:45, from /usr/include/QtGui/qevent.h:52, from /usr/include/QtGui/QKeyEvent:1, from /home/cltbld/build/mobile-trunk-maemo5-qt/mozilla-central/layout/generic/nsObjectFrame.cpp:65: /usr/include/QtCore/qmetatype.h:53:2: error: #error qmetatype.h must be included before any header file that defines Bool This directory now uses chromium-config.mk, and the sequence of includes is: PluginMessageUtils.h (brings in chromium basetypes and then nscore stuff) cairo-xlib.h QWidget QKeyEvent Do some Qt headers need to be included between chromium and nscore? Is there a way we can make this less fragile?
It is better to not include anything before Qt headers. or write some special Qt include wrapper which will undef all possible defines which are breaking Qt includes before including actual Qt includes.
I moved the Qt headers to the top again, but I definitely want a better solution long-term.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.