Open Bug 1833432 Opened 2 years ago Updated 2 years ago

firefox-113.0.1 build fails when building with --disable-unified-build, MOZ_PGO=1 and clang

Categories

(Core :: Disability Access APIs, defect)

Firefox 113
defect

Tracking

()

UNCONFIRMED

People

(Reporter: juippis, Unassigned)

Details

Attachments

(1 file)

Steps to reproduce:

Specify --disable-unified-build, MOZ_PGO=1 and build with clang.

Building with GCC works. Building when not specifying "--disable-unified-build" works. Building with --disable-unified-build but not specifying "MOZ_PGO=1" works. The combination above seems to error out.

Actual results:

Build fails to:

19:25.98 ld.lld: error: undefined hidden symbol: mozilla::a11y::DocAccessible::FireDelayedEvent(unsigned int, mozilla::a11y::LocalAccessible*)
19:25.98 >>> referenced by HTMLSelectAccessible.cpp
19:25.98 >>>               /var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented/toolkit/library/build/../../../accessible/html/HTMLSelectAccessible.o:(mozilla::a11y::HTMLSelectOptionAccessible::DOMAttributeChanged(int, nsAtom*, int, nsAttrValue const*,       unsigned long))
19:25.98 >>> referenced by HTMLTableAccessible.cpp
19:25.98 >>>               /var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented/toolkit/library/build/../../../accessible/html/HTMLTableAccessible.o:(mozilla::a11y::HTMLTableCellAccessible::DOMAttributeChanged(int, nsAtom*, int, nsAttrValue const*, unsigned  long))
19:25.98 >>> referenced by HTMLTableAccessible.cpp
19:25.98 >>>               /var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented/toolkit/library/build/../../../accessible/html/HTMLTableAccessible.o:(mozilla::a11y::HTMLTableAccessible::DOMAttributeChanged(int, nsAtom*, int, nsAttrValue const*, unsigned      long))
19:25.98 >>> referenced 1 more times
19:26.18 clang-15: error: linker command failed with exit code 1 (use -v to see invocation)
19:26.19 gmake[4]: *** [/var/tmp/portage/www-client/firefox-113.0.1/work/firefox-113.0.1/config/rules.mk:535: libxul.so] Error 1
19:26.19 gmake[4]: Leaving directory '/var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented/toolkit/library/build'
19:26.19 gmake[3]: *** [/var/tmp/portage/www-client/firefox-113.0.1/work/firefox-113.0.1/config/recurse.mk:72: toolkit/library/build/target] Error 2
19:26.19 gmake[3]: Leaving directory '/var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented'
19:26.19 gmake[2]: *** [/var/tmp/portage/www-client/firefox-113.0.1/work/firefox-113.0.1/config/recurse.mk:34: compile] Error 2
19:26.19 gmake[2]: Leaving directory '/var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented'
19:26.19 gmake[1]: *** [/var/tmp/portage/www-client/firefox-113.0.1/work/firefox-113.0.1/config/rules.mk:361: default] Error 2
19:26.19 gmake[1]: Leaving directory '/var/tmp/portage/www-client/firefox-113.0.1/work/firefox_build/instrumented'
19:26.19 gmake: *** [client.mk:60: build] Error 2

Please see the attached full build.log for more information. It is compressed due to log file size being 35M.

Expected results:

Build should succeed as with the mentioned alternatives (like using gcc instead of clang).

The Bugbug bot thinks this bug should belong to the 'Firefox Build System::General' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → General
Product: Firefox → Firefox Build System

FireDelayedEvent, while declared in DocAccessible.h, is only defined in DocAccessible-inl.h, and not all .cpp files using the function include the header. That it builds in the normal build configuration is kind of an accident. (It's worth noting that I can't reproduce.)

Component: General → Disability Access APIs
Product: Firefox Build System → Core
Severity: -- → S4
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: