Issue #1699 - Part 3c: mozjemalloc: FreeBSD: Ensure early initialization

This guarantees that initialization is done in a single-thread context.
This commit is contained in:
Olivier Certner 2021-01-06 13:43:01 +01:00 committed by roytam1
commit 24391cb707

View file

@ -63,6 +63,11 @@ def GeckoBinary(linkage='dependent', msvcrt='dynamic', mozglue=None):
LDFLAGS += ['-rdynamic'] LDFLAGS += ['-rdynamic']
if CONFIG['MOZ_MEMORY']: if CONFIG['MOZ_MEMORY']:
USE_LIBS += ['memory'] USE_LIBS += ['memory']
if CONFIG['OS_ARCH'] == 'FreeBSD':
# Make sure this function is linked in, so that it is
# executed at executable load (it has the 'constructor'
# flag).
LDFLAGS += ['-u', 'jemalloc_FreeBSD_init']
elif mozglue == 'library': elif mozglue == 'library':
LIBRARY_DEFINES['MOZ_HAS_MOZGLUE'] = True LIBRARY_DEFINES['MOZ_HAS_MOZGLUE'] = True
if not CONFIG['MOZ_GLUE_IN_PROGRAM']: if not CONFIG['MOZ_GLUE_IN_PROGRAM']: