pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: firefox build failure on NetBSD 8.0



Hi,

Could you try www/firefox-73.0.1?

A certain invocation of clang with -std=gnu++17 was problematic.

Chavdar Ivanov <ci4ic4%gmail.com@localhost> writes:

> Firefox 73.0 also just failed build for me under -current (9.99.47
> from a few days ago, amd64):
> ....
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/cxxalloc.h:59:1:
> warning: replacement function 'operator delete[]' cannot be declared
> 'i[1153/1913$nline-new-delete]
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/cxxalloc.h:63:1:
> warning: replacement function 'operator delete[]' cannot be declared
> 'inline' [-Wi
> nline-new-delete]
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/RefPtr.h:116:46:
> error: no member named 'is_convertible_v' in namespace 'std'
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/RefPtr.h:116:63:
> error: 'I' does not refer to a value
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/RefPtr.h:115:22:
> note: declared here
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/RefPtr.h:116:65:
> error: expected expression
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/RefPtr.h:117:16:
> error: expected ',' or '>' in template-parameter-list
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/RefPtr.h:122:23:
> error: expected member name or ';' after declaration specifiers
> [style 0.0.1] /usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/gfx/2D.h:1128:27:
> error: no viable conversion from
> 'already_AddRefed<mozilla::gfx::SourceSurface>'
> to 'RefPtr<mozilla::gfx::SourceSurface>'
> ....
>
>
> seems to be the firs error; at the end one sees:
> ....
> , "/usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/ServoTraversalStatistics.h",
> "/usr/pkgsrc/www/firefox/work/build/dist/include/mozilla/SizeOfState.h",
> "/usr/pk
> gsrc/www/firefox/work/build/dist/include/nsCSSProps.h",
> "/usr/pkgsrc/www/firefox/work/build/dist/include/nsContentUtils.h",
> "/usr/pkgsrc/www/firefox/work/build/dist/incl
> ude/nsNameSpaceManager.h",
> "/usr/pkgsrc/www/firefox/work/build/dist/include/nsMediaFeatures.h"]',
> servo/components/style/build_gecko.rs:195:13
> stack backtrace:
>    0:        0x18c80d1e3 -
> <std::sys_common::backtrace::_print::DisplayBacktrace as
> core::fmt::Display>::fmt::h3e9ed830bd4974ee
>    1:        0x18c824e0d - core::fmt::write::h635c1c51677f3dab
>    2:        0x18c80bf05 - std::io::Write::write_fmt::h03284227df09b675
>    3:        0x18c7fce4e -
> std::panicking::default_hook::{{closure}}::heb424b4be6f41adb
>    4:        0x18c7fcb42 - std::panicking::default_hook::h8d750f9d956cec16
>    5:        0x18c7fd52e -
> std::panicking::rust_panic_with_hook::h2577a268bff4094b
>    6:        0x18c7fd0ce - std::panicking::continue_panic_fmt::h60ea77b3990a4827
>    7:        0x18c7fd00f - std::panicking::begin_panic_fmt::h7461673961d6ac46
>    8:        0x18c64ebfb -
> build_script_build::build_gecko::generate_structs::h9c1b46512edf0288
>    9:        0x18c65079e - build_script_build::main::h979df466336aff00
>   10:        0x18c637383 - std::rt::lang_start::{{closure}}::h6f88d729e6eb10b1
>   11:        0x18c7fcf63 - std::panicking::try::do_call::h7ccd7d4960560c1c
>   12:        0x18c810eea - __rust_maybe_catch_panic
>   13:        0x18c8023f9 - std::rt::lang_start_internal::h70488ea29cda7a04
>   14:        0x18c6511d2 - main
>   15:        0x18c63474b - ___start
> ....
>
>
> On Sat, 15 Feb 2020 at 18:19, Tobias Nygren <tnn%netbsd.org@localhost> wrote:
>>
>> On Sat, 15 Feb 2020 20:45:02 +0530
>> Mayuresh <mayuresh%acm.org@localhost> wrote:
>>
>> > Is it one of those things that won't build on 8.0? Or is it something that
>> > requires compiler upgrade? And if it's the latter what's a systematic way
>> > to do so, so that things work out of the box for 8.x users?
>>
>> The actual error message will be further up (can be quite far up with
>> MAKE_JOBS>1). It does need C++17 now and yes, the C++ headers on 8.x are
>> too old.
>>
>> Normally adding "gnu++17" to USE_LANGUAGES (which I have just done)
>> would ensure that a recent enough gcc (and libstdc++ + headers) would
>> be used. but since Firefox insists on being built with clang there is
>> no such logic and we lose.
>>
>> Properly fixing this will be non-trivial. A workaround might be to patch
>> the package to have a local copy of the necessary parts of the
>> "g++/type_traits" header file that are added with C++17.
>>
>> Kind regards,
>> -Tobias
>
>
>
> -- 
> ----

-- 
Ryo ONODERA // ryo%tetera.org@localhost
PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB  FD1B F404 27FA C7D1 15F3


Home | Main Index | Thread Index | Old Index