These symbols are supposed to be in one OR the other, not in both.
The relevant snippet in js/src/Makefile.in is:
ifeq (,$(MOZ_GLUE_PROGRAM_LDFLAGS))
# When building standalone, we need to include mfbt sources, and to declare
# "exported" mfbt symbols on its behalf when we use its headers.
include $(srcdir)/../../mfbt/sources.mk
DEFINES += -DIMPL_MFBT
endif
when building the js engine standalone, MOZ_GLUE_PROGRAM_LDFLAGS is empty, but not when building Gecko.
These symbols are supposed to be in one OR the other, not in both.
The relevant snippet in js/src/Makefile.in is:
ifeq (,$(MOZ_ GLUE_PROGRAM_ LDFLAGS) ) /../../ mfbt/sources. mk
# When building standalone, we need to include mfbt sources, and to declare
# "exported" mfbt symbols on its behalf when we use its headers.
include $(srcdir)
DEFINES += -DIMPL_MFBT
endif
when building the js engine standalone, MOZ_GLUE_ PROGRAM_ LDFLAGS is empty, but not when building Gecko.