[Mingw-w64-public] Mass rebuild report for June 30 2013

Jacek Caban jacek at codeweavers.com
Mon Jul 1 15:43:49 UTC 2013


On 06/30/13 16:03, Erik van Pienbroek wrote:
> i686-w64-mingw32-g++ -mwindows -o TimeStamp_posix.o -c
> -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  -DNO_NSPR_10_SUPPORT -D_IMPL_NS_COM
> -I/builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/ds/../io -I/builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/ds -I. -I../../dist/include  -I/builddir/build/BUILD/mingw-wine-gecko-2.21/wine_gecko-2.21-x86/dist/include/nspr -I/builddir/build/BUILD/mingw-wine-gecko-2.21/wine_gecko-2.21-x86/dist/include/nss        -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wno-invalid-offsetof -Wcast-align -Wno-format -DWINE_GECKO_SRC -fpermissive -fno-exceptions -fno-strict-aliasing -mms-bitfields -mstackrealign -fno-keep-inline-dllexport -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -std=gnu++0x -pthread -pipe  -DNDEBUG -DTRIMMED -g -O -fomit-frame-pointer   -DMOZILLA_CLIENT -include ../../mozilla-config.h -MD -MF .deps/TimeStamp_posix.o.pp  /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/ds/TimeStamp_posix.cpp
> nsWindowsRegKey.cpp
> /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/ds/TimeStamp_posix.cpp: In static member function 'static mozilla::TimeStamp mozilla::TimeStamp::Now(bool)':
> /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/ds/TimeStamp_posix.cpp:173:32: warning: invalid conversion from 'uint64_t {aka long long unsigned int}' to 'mozilla::TimeStampValue::_SomethingVeryRandomHere*' [-fpermissive]
>    return TimeStamp(ClockTimeNs());
>                                 ^
> In file included from ../../dist/include/mozilla/TimeStamp.h:22:0,
>
> from /builddir/build/BUILD/mingw-wine-gecko-2.21/wine-mozilla-2.21/xpcom/ds/TimeStamp_posix.cpp:18:
> ../../dist/include/mozilla/TimeStamp_windows.h:31:3: warning:
> initializing argument 1 of
> 'mozilla::TimeStampValue::TimeStampValue(mozilla::TimeStampValue::_SomethingVeryRandomHere*)' [-fpermissive]
>    TimeStampValue(_SomethingVeryRandomHere* nullValue);
>    ^
>
>
> I don't know yet if this permissive warning is the cause of the
> undefined references, but perhaps it can be investigated by the upstream
> gecko devs.

Yeah, it seems like TimeStamp_posix.cpp is compiled instead of TimeStamp_windows.cpp in your build because HAVE_CLOCK_MONOTONIC is now defined with winpthreads. That's definitely not what we want. The attached patch should help. Please file a bug at bugzilla.mozilla.org and CC me. I will take care of fixing it upstream and then merge it to wine gecko trunk and provide a backport for wine gecko 2.21.

Thanks,
Jacek 


-------------- next part --------------
diff --git a/xpcom/ds/Makefile.in b/xpcom/ds/Makefile.in
index 995eb70..8f6b00b 100644
--- a/xpcom/ds/Makefile.in
+++ b/xpcom/ds/Makefile.in
@@ -41,12 +41,12 @@ CPPSRCS		= \
 		nsVariant.cpp \
 		$(NULL)
 
-ifdef HAVE_CLOCK_MONOTONIC
+ifeq ($(OS_ARCH),WINNT)
+CPPSRCS += TimeStamp_windows.cpp
+else ifdef HAVE_CLOCK_MONOTONIC
 CPPSRCS += TimeStamp_posix.cpp
 else ifeq ($(OS_ARCH),Darwin)
 CPPSRCS += TimeStamp_darwin.cpp
-else ifeq ($(OS_ARCH),WINNT)
-CPPSRCS += TimeStamp_windows.cpp
 else
 $(error No TimeStamp implementation on this platform.  Build will not succeed)
 endif


More information about the mingw mailing list