Re: [Mingw-w64-public] Build issues on trunk
On 08/22/13 15:30, Jacek Caban wrote: Hi Erik, On 08/21/13 07:55, Erik van Pienbroek wrote: Hi, The current trunk seems to have some conflicting declarations which causes various build failures. Here are the failures we discovered with the test mass rebuild script. === NSIS: i686-w64-mingw32-gcc -o build/release/stub_bzip2/Ui.o -c -Os -Wall -xc -fno-strict-aliasing -DNSISCALL= __attribute__((__stdcall__)) -DEXEHEAD -DWIN32_LEAN_AND_MEAN -D_WIN32_IE=0x0500 -DNSIS_COMPRESS_USE_BZIP2 -Ibuild/release/config Source/exehead/Ui.c In file included from Source/exehead/Ui.c:19:0: /usr/i686-w64-mingw32/sys-root/mingw/include/shellapi.h:191:16: error: conflicting types for 'PRINTEROP_FLAGS' typedef WORD PRINTEROP_FLAGS; ^ In file included from Source/exehead/Ui.c:18:0: /usr/i686-w64-mingw32/sys-root/mingw/include/shlobj.h:606:16: note: previous declaration of 'PRINTEROP_FLAGS' was here typedef UINT PRINTEROP_FLAGS; ^ === wine-gecko: In file included from ../../dist/include/nsWindowsDllInterceptor.h:9:0, from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/base/AvailableMemoryTracker.cpp:25: /usr/i686-w64-mingw32/sys-root/mingw/include/winternl.h:913:27: error: conflicting declaration 'typedef THREADINFOCLASS THREAD_INFORMATION_CLASS' typedef THREADINFOCLASS THREAD_INFORMATION_CLASS, *PTHREAD_INFORMATION_CLASS; ^ In file included from /usr/i686-w64-mingw32/sys-root/mingw/include/windows.h:70:0, from ../../dist/include/nsWindowsDllInterceptor.h:8, from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/base/AvailableMemoryTracker.cpp:25: /usr/i686-w64-mingw32/sys-root/mingw/include/winbase.h:1164:5: error: 'THREAD_INFORMATION_CLASS' has a previous declaration as 'typedef enum _THREAD_INFORMATION_CLASS THREAD_INFORMATION_CLASS' } THREAD_INFORMATION_CLASS; ^ === Could somebody take a look at these? I've seen this error as well (wine-gecko also hits the first bug you posted). Lately the trunk has been very unstable and I wasn't able to fix Gecko compilation because before I could test my fixes on rebased tree, new ones were introduced (and, to be fair, the ones that I was testing were fixed occasionally). For the ones that you can see, the attached patch should help. I will work on upstreaming it, together with a few other patches, next week hoping that things will calm down meantime. If someone wants to take it, feel free. Both problems should be fixed in the trunk. Cheers, Jacek -- Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] Build issues on trunk
Hi Erik, On 08/21/13 07:55, Erik van Pienbroek wrote: Hi, The current trunk seems to have some conflicting declarations which causes various build failures. Here are the failures we discovered with the test mass rebuild script. === NSIS: i686-w64-mingw32-gcc -o build/release/stub_bzip2/Ui.o -c -Os -Wall -xc -fno-strict-aliasing -DNSISCALL= __attribute__((__stdcall__)) -DEXEHEAD -DWIN32_LEAN_AND_MEAN -D_WIN32_IE=0x0500 -DNSIS_COMPRESS_USE_BZIP2 -Ibuild/release/config Source/exehead/Ui.c In file included from Source/exehead/Ui.c:19:0: /usr/i686-w64-mingw32/sys-root/mingw/include/shellapi.h:191:16: error: conflicting types for 'PRINTEROP_FLAGS' typedef WORD PRINTEROP_FLAGS; ^ In file included from Source/exehead/Ui.c:18:0: /usr/i686-w64-mingw32/sys-root/mingw/include/shlobj.h:606:16: note: previous declaration of 'PRINTEROP_FLAGS' was here typedef UINT PRINTEROP_FLAGS; ^ === wine-gecko: In file included from ../../dist/include/nsWindowsDllInterceptor.h:9:0, from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/base/AvailableMemoryTracker.cpp:25: /usr/i686-w64-mingw32/sys-root/mingw/include/winternl.h:913:27: error: conflicting declaration 'typedef THREADINFOCLASS THREAD_INFORMATION_CLASS' typedef THREADINFOCLASS THREAD_INFORMATION_CLASS, *PTHREAD_INFORMATION_CLASS; ^ In file included from /usr/i686-w64-mingw32/sys-root/mingw/include/windows.h:70:0, from ../../dist/include/nsWindowsDllInterceptor.h:8, from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/base/AvailableMemoryTracker.cpp:25: /usr/i686-w64-mingw32/sys-root/mingw/include/winbase.h:1164:5: error: 'THREAD_INFORMATION_CLASS' has a previous declaration as 'typedef enum _THREAD_INFORMATION_CLASS THREAD_INFORMATION_CLASS' } THREAD_INFORMATION_CLASS; ^ === Could somebody take a look at these? I've seen this error as well (wine-gecko also hits the first bug you posted). Lately the trunk has been very unstable and I wasn't able to fix Gecko compilation because before I could test my fixes on rebased tree, new ones were introduced (and, to be fair, the ones that I was testing were fixed occasionally). For the ones that you can see, the attached patch should help. I will work on upstreaming it, together with a few other patches, next week hoping that things will calm down meantime. If someone wants to take it, feel free. Cheers, Jacek diff --git a/mingw-w64-headers/include/shlobj.h b/mingw-w64-headers/include/shlobj.h index 836df3b..8ef4656 100644 --- a/mingw-w64-headers/include/shlobj.h +++ b/mingw-w64-headers/include/shlobj.h @@ -603,7 +603,6 @@ extern C { #define PO_REN_PORT 0x0034 - typedef UINT PRINTEROP_FLAGS; #endif #undef INTERFACE diff --git a/mingw-w64-headers/include/winternl.h b/mingw-w64-headers/include/winternl.h index c9ba7c4..5d862f1 100644 --- a/mingw-w64-headers/include/winternl.h +++ b/mingw-w64-headers/include/winternl.h @@ -910,7 +910,6 @@ typedef struct _RTL_USER_PROCESS_PARAMETERS { ThreadIsIoPending, ThreadHideFromDebugger } THREADINFOCLASS; - typedef THREADINFOCLASS THREAD_INFORMATION_CLASS, *PTHREAD_INFORMATION_CLASS; typedef enum _SYSTEM_INFORMATION_CLASS { SystemBasicInformation = 0, -- Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511iu=/4140/ostg.clktrk___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] Build issues on trunk
Erik van Pienbroek schreef op wo 21-08-2013 om 07:55 [+0200]: Hi, The current trunk seems to have some conflicting declarations which causes various build failures. Here are the failures we discovered with the test mass rebuild script. Additionally these two failures were also discovered: qt5-qtsystems: In file included from /builddir/build/BUILD/qt-qtsystems/src/systeminfo/windows/qdeviceinfo_win.cpp:50:0: /usr/i686-w64-mingw32/sys-root/mingw/include/vfw.h:908:3: error: 'interface' does not name a type DECLARE_INTERFACE_(IAVIStream,IUnknown) { ^ In file included from /builddir/build/BUILD/qt-qtsystems/src/systeminfo/windows/qdeviceinfo_win.cpp:50:0: /usr/i686-w64-mingw32/sys-root/mingw/include/vfw.h:925:11: error: 'IAVIStream' does not name a type typedef IAVIStream *PAVISTREAM; ^ (and some more cascaded ones, to me the 'interface' one looks like the primary cause) qt5-qtbase: /builddir/build/BUILD/qtbase-opensource-src-5.1.0/src/corelib/io/qfilesystemengine_win.cpp:578:3: error: conflicting declaration 'typedef struct _FILE_ID_128 FILE_ID_128' } FILE_ID_128, *PFILE_ID_128; ^ In file included from /usr/i686-w64-mingw32/sys-root/mingw/include/minwindef.h:146:0, from /usr/i686-w64-mingw32/sys-root/mingw/include/windef.h:8, from /usr/i686-w64-mingw32/sys-root/mingw/include/windows.h:69, from /builddir/build/BUILD/qtbase-opensource-src-5.1.0/include/QtCore/../../src/corelib/global/qt_windows.h:71, from /builddir/build/BUILD/qtbase-opensource-src-5.1.0/include/QtCore/qt_windows.h:1, from /builddir/build/BUILD/qtbase-opensource-src-5.1.0/mkspecs/win32-g ++-cross/qplatformdefs.h:63, from /builddir/build/BUILD/qtbase-opensource-src-5.1.0/src/corelib/io/qfilesystemmetadata_p.h:56, from /builddir/build/BUILD/qtbase-opensource-src-5.1.0/src/corelib/io/qfilesystemengine_p.h:58, from /builddir/build/BUILD/qtbase-opensource-src-5.1.0/src/corelib/io/qfilesystemengine_win.cpp:42: /usr/i686-w64-mingw32/sys-root/mingw/include/winnt.h:3767:7: error: 'FILE_ID_128' has a previous declaration as 'typedef struct FILE_ID_128 FILE_ID_128' } FILE_ID_128, *PFILE_ID_128; ^ This seems to be caused by the fact that this structure was only added to mingw-w64 recently (r6115). As it was missing before, the qt folks decided to manually implement it for mingw compilers and msvc = 1700. Apparently the qt5-qtbase implementation of this structure differs from the implementation done in mingw-w64. For comparison: == mingw-w64 winnt.h: typedef struct FILE_ID_128 { ULONGLONG LowPart; ULONGLONG HighPart; } FILE_ID_128, *PFILE_ID_128; == qt5-qtbase: # if defined(Q_CC_MINGW) || (defined(Q_CC_MSVC) _MSC_VER 1700) typedef struct _FILE_ID_128 { BYTE Identifier[16]; } FILE_ID_128, *PFILE_ID_128; typedef struct _FILE_ID_INFO { ULONGLONG VolumeSerialNumber; FILE_ID_128 FileId; } FILE_ID_INFO, *PFILE_ID_INFO; # endif // if defined (Q_CC_MINGW) || (defined(Q_CC_MSVC) _MSC_VER 1700)) == The MSDN docs are a bit vague in this area. They only refer to a structure called EXT_FILE_ID_128 instead of just FILE_ID_128: http://msdn.microsoft.com/nl-nl/library/windows/desktop/hh802691%28v=vs.85%29.aspx and http://msdn.microsoft.com/nl-nl/library/windows/desktop/hh965605%28v=vs.85%29.aspx Regards, Erik -- Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
[Mingw-w64-public] Build issues on trunk
Hi, The current trunk seems to have some conflicting declarations which causes various build failures. Here are the failures we discovered with the test mass rebuild script. === NSIS: i686-w64-mingw32-gcc -o build/release/stub_bzip2/Ui.o -c -Os -Wall -xc -fno-strict-aliasing -DNSISCALL= __attribute__((__stdcall__)) -DEXEHEAD -DWIN32_LEAN_AND_MEAN -D_WIN32_IE=0x0500 -DNSIS_COMPRESS_USE_BZIP2 -Ibuild/release/config Source/exehead/Ui.c In file included from Source/exehead/Ui.c:19:0: /usr/i686-w64-mingw32/sys-root/mingw/include/shellapi.h:191:16: error: conflicting types for 'PRINTEROP_FLAGS' typedef WORD PRINTEROP_FLAGS; ^ In file included from Source/exehead/Ui.c:18:0: /usr/i686-w64-mingw32/sys-root/mingw/include/shlobj.h:606:16: note: previous declaration of 'PRINTEROP_FLAGS' was here typedef UINT PRINTEROP_FLAGS; ^ === wine-gecko: In file included from ../../dist/include/nsWindowsDllInterceptor.h:9:0, from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/base/AvailableMemoryTracker.cpp:25: /usr/i686-w64-mingw32/sys-root/mingw/include/winternl.h:913:27: error: conflicting declaration 'typedef THREADINFOCLASS THREAD_INFORMATION_CLASS' typedef THREADINFOCLASS THREAD_INFORMATION_CLASS, *PTHREAD_INFORMATION_CLASS; ^ In file included from /usr/i686-w64-mingw32/sys-root/mingw/include/windows.h:70:0, from ../../dist/include/nsWindowsDllInterceptor.h:8, from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/base/AvailableMemoryTracker.cpp:25: /usr/i686-w64-mingw32/sys-root/mingw/include/winbase.h:1164:5: error: 'THREAD_INFORMATION_CLASS' has a previous declaration as 'typedef enum _THREAD_INFORMATION_CLASS THREAD_INFORMATION_CLASS' } THREAD_INFORMATION_CLASS; ^ === Could somebody take a look at these? Thanks! Erik -- Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511iu=/4140/ostg.clktrk ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public