# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

SOURCES += [
    '../../build/jemalloc_config.cpp',
    '../../build/mozjemalloc_compat.c',
]

# Android doesn't have pthread_atfork, so just implement a dummy function.
# It shouldn't make much problem, as the use of fork is pretty limited on
# Android.
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
    SOURCES += [
        'pthread_atfork.c',
    ]

SharedLibrary('replace_jemalloc')

DEFINES['MOZ_JEMALLOC4'] = True
DEFINES['MOZ_REPLACE_JEMALLOC'] = True

LOCAL_INCLUDES += ['!../../jemalloc/src/include']
if CONFIG['_MSC_VER']:
    LOCAL_INCLUDES += ['/memory/jemalloc/src/include/msvc_compat']
    if not CONFIG['HAVE_INTTYPES_H']:
        LOCAL_INCLUDES += ['/memory/jemalloc/src/include/msvc_compat/C99']

DISABLE_STL_WRAPPING = True