mail/thunderbird: FreeBSD 10.0-CURRENT/amd64 and CLANG fail to build Thunderbird 13

From: O. Hartmann <ohartman_at_zedat.fu-berlin.de>
Date: Sat, 09 Jun 2012 14:14:28 +0200
My FreeBSD 10-CURRENT/amd64 boxes fail to build Thunderbird 13 compiling
with CLANG. The error is very much the same as when I try compiling
Firefox 13 on the same box with CLANG.

I tried to track down the problem, but I failed. Bot systems are used to
have very similar setups and ports, both boxes have FreeBSD
10.0-CURRENT/amd64 (FreeBSD 10.0-CURRENT #0 r236694: Wed Jun  6 23:06:12
CEST 2012), both OSes have been compiled with CLANG. The box in question
is a very new Sandy-Bridge-E system with 32GB RAM, while the box
compiling well is a older Core2Duo (I mention this since I read about
differences in how LLVM/CLANG 3.1 may behave on different CPUs, even
with -O2 enabled).

I'm confused about this, since Firefox 13 and even 12 fail at the same
point with a very similar error message in this "xpcom" module.

On the box in question, I already did a "portmaster -f thunderbird" to
force every prerequisite been built, but with no success.

By the way:

I use "WITH_NEW_XORG" in /etc/make.conf. I don't know whether this is an
issue or necessary hint ...

Any help appreciated.

Thanks in advance,

Oliver


-------------

clang++ -o ClearOnShutdown.o -c -I../../dist/stl_wrappers
-I../../dist/system_wrappers -include ../../config/gcc_hidden.h
-DMOZ_GLUE_IN_PROGRAM -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
-DMOZ_THUNDERBIRD=1 -DOSTYPE=\"FreeBSD10\" -DOSARCH=FreeBSD
-DEXCLUDE_SKIA_DEPENDENCIES  -DOS_LINUX=1 -DOS_POSIX=1  -D_IMPL_NS_COM
-I../../ipc/chromium/src -I../../ipc/glue -I../../ipc/ipdl/_ipdlheaders
 -I./../build -I../../xpcom/ds  -I. -I. -I../../dist/include
-I../../dist/include/nsprpub  -I/usr/local/include/nspr
-I/usr/ports/mail/thunderbird/work/comm-release/mozilla/dist/include/nss
     -fPIC -Qunused-arguments -I/usr/local/include -fno-rtti
-Qunused-arguments -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth
-Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-c++0x-extensions
-Wno-extended-offsetof -Wno-invalid-offsetof -Wno-variadic-macros
-Werror=return-type -Wno-unknown-warning-option
-Wno-return-type-c-linkage -O3 -pipe -fno-strict-aliasing
-DLDAP_DEPRECATED -march=native -DLDAP_DEPRECATED -fno-exceptions
-fno-strict-aliasing -std=gnu++0x -ffunction-sections -fdata-sections
-pipe -DNDEBUG -DTRIMMED -fno-omit-frame-pointer  -D_THREAD_SAFE
-D_REENTRANT -I/usr/local/include/gtk-2.0 -I/usr/local/include/atk-1.0
-I/usr/local/include/cairo -I/usr/local/include/gdk-pixbuf-2.0
-I/usr/local/include/pango-1.0 -I/usr/local/include/gio-unix-2.0/
-I/usr/local/include -I/usr/local/include/glib-2.0
-I/usr/local/include/pixman-1 -I/usr/local/include/freetype2
-I/usr/local/include/libpng15 -I/usr/local/include/libdrm
-I/usr/local/include/gtk-unix-print-2.0    -Qunused-arguments
-I/usr/local/include -DMOZILLA_CLIENT -include ../../mozilla-config.h
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/ClearOnShutdown.cpp
nsIConsoleListener.idl
/usr/local/bin/python2.7 ../../config/pythonpath.py \
  -I../../other-licenses/ply \
  -I../../xpcom/idl-parser \
  -I../../xpcom/typelib/xpt/tools \
  ../../xpcom/idl-parser/typelib.py
--cachedir=../../xpcom/idl-parser/cache -I. -I../../dist/idl
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsIConsoleListener.idl
-d .deps/nsIConsoleListener.xpt.pp -o _xpidlgen/nsIConsoleListener.xpt
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsStackWalk.cpp:1196:29:
error: use of undeclared identifier '_Unwind_Backtrace'
    _Unwind_Reason_Code t = _Unwind_Backtrace(unwind_callback, &info);
                            ^
1 error generated.
gmake[5]: *** [nsStackWalk.o] Error 1
gmake[5]: *** Waiting for unfinished jobs....
In file included from
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/ClearOnShutdown.cpp:8:
../../dist/include/mozilla/ClearOnShutdown.h:113:5: warning: delete
called on 'mozilla::ClearOnShutdown_Internal::ShutdownObserver' that is
abstract but
      has non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete observer;
    ^
1 warning generated.
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsTraceRefcntImpl.cpp:403:42:
warning: format specifies type 'unsigned long long' but
      the argument has type 'PRUint64' (aka 'unsigned long') [-Wformat]
      fprintf(out, "%4d %-40.40s %8d %8llu %8llu %8llu (%8.2f +/- %8.2f)
%8llu %8llu (%8.2f +/- %8.2f)\n",
                                     ~~~~^
                                     %8lu
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsTraceRefcntImpl.cpp:403:48:
warning: format specifies type 'unsigned long long' but
      the argument has type 'PRUint64' (aka 'unsigned long') [-Wformat]
      fprintf(out, "%4d %-40.40s %8d %8llu %8llu %8llu (%8.2f +/- %8.2f)
%8llu %8llu (%8.2f +/- %8.2f)\n",
                                           ~~~~^
                                           %8lu
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsTraceRefcntImpl.cpp:403:54:
warning: format specifies type 'unsigned long long' but
      the argument has type 'unsigned long' [-Wformat]
      fprintf(out, "%4d %-40.40s %8d %8llu %8llu %8llu (%8.2f +/- %8.2f)
%8llu %8llu (%8.2f +/- %8.2f)\n",
                                                 ~~~~^
                                                 %8lu
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsTraceRefcntImpl.cpp:403:78:
warning: format specifies type 'unsigned long long' but
      the argument has type 'PRUint64' (aka 'unsigned long') [-Wformat]
      fprintf(out, "%4d %-40.40s %8d %8llu %8llu %8llu (%8.2f +/- %8.2f)
%8llu %8llu (%8.2f +/- %8.2f)\n",

 ~~~~^

 %8lu
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsTraceRefcntImpl.cpp:403:84:
warning: format specifies type 'unsigned long long' but
      the argument has type 'unsigned long' [-Wformat]
      fprintf(out, "%4d %-40.40s %8d %8llu %8llu %8llu (%8.2f +/- %8.2f)
%8llu %8llu (%8.2f +/- %8.2f)\n",

       ~~~~^

       %8lu
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsMemoryReporterManager.cpp:854:1:
warning: delete called on 'nsMemoryReporter' that
      has virtual functions but non-virtual destructor
[-Wdelete-non-virtual-dtor]
NS_IMPL_ISUPPORTS1(nsMemoryReporter, nsIMemoryReporter)
^
../../dist/include/nsISupportsImpl.h:1177:3: note: expanded from macro
'NS_IMPL_ISUPPORTS1'
  NS_IMPL_RELEASE(_class)
      \
  ^
../../dist/include/nsISupportsImpl.h:471:40: note: expanded from macro
'NS_IMPL_RELEASE'
  NS_IMPL_RELEASE_WITH_DESTROY(_class, delete (this))
                                       ^
../../dist/include/nsISupportsImpl.h:451:5: note: expanded from macro
'NS_IMPL_RELEASE_WITH_DESTROY'
    _destroy;
      \
    ^
1 warning generated.
5 warnings generated.
/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base/nsCycleCollector.cpp:1720:1:
warning: delete called on 'nsCycleCollectorLogger' that
      has virtual functions but non-virtual destructor
[-Wdelete-non-virtual-dtor]
NS_IMPL_ISUPPORTS1(nsCycleCollectorLogger, nsICycleCollectorListener)
^
../../dist/include/nsISupportsImpl.h:1177:3: note: expanded from macro
'NS_IMPL_ISUPPORTS1'
  NS_IMPL_RELEASE(_class)
      \
  ^
../../dist/include/nsISupportsImpl.h:471:40: note: expanded from macro
'NS_IMPL_RELEASE'
  NS_IMPL_RELEASE_WITH_DESTROY(_class, delete (this))
                                       ^
../../dist/include/nsISupportsImpl.h:451:5: note: expanded from macro
'NS_IMPL_RELEASE_WITH_DESTROY'
    _destroy;
      \
    ^
1 warning generated.
gmake[5]: Leaving directory
`/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom/base'
gmake[4]: *** [libs] Error 2
gmake[4]: Leaving directory
`/usr/ports/mail/thunderbird/work/comm-release/mozilla/xpcom'
gmake[3]: *** [libs_tier_platform] Error 2
gmake[3]: Leaving directory
`/usr/ports/mail/thunderbird/work/comm-release/mozilla'
gmake[2]: *** [tier_platform] Error 2
gmake[2]: Leaving directory
`/usr/ports/mail/thunderbird/work/comm-release/mozilla'
gmake[1]: *** [default] Error 2
gmake[1]: Leaving directory
`/usr/ports/mail/thunderbird/work/comm-release/mozilla'
gmake: *** [default] Error 2
*** [do-build] Error code 1

Stop in /usr/ports/mail/thunderbird.
*** [build] Error code 1

Stop in /usr/ports/mail/thunderbird.

===>>> make failed for mail/thunderbird
===>>> Aborting update


Received on Sat Jun 09 2012 - 10:14:30 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:27 UTC