summaryrefslogtreecommitdiffstats
path: root/memory/replace/jemalloc
diff options
context:
space:
mode:
Diffstat (limited to 'memory/replace/jemalloc')
-rw-r--r--memory/replace/jemalloc/moz.build31
-rw-r--r--memory/replace/jemalloc/pthread_atfork.c10
2 files changed, 41 insertions, 0 deletions
diff --git a/memory/replace/jemalloc/moz.build b/memory/replace/jemalloc/moz.build
new file mode 100644
index 000000000..5e907af55
--- /dev/null
+++ b/memory/replace/jemalloc/moz.build
@@ -0,0 +1,31 @@
+# -*- 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
diff --git a/memory/replace/jemalloc/pthread_atfork.c b/memory/replace/jemalloc/pthread_atfork.c
new file mode 100644
index 000000000..6e737f072
--- /dev/null
+++ b/memory/replace/jemalloc/pthread_atfork.c
@@ -0,0 +1,10 @@
+/* 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/. */
+
+int pthread_atfork(void (*prefork)(void),
+ void (*postfork_parent)(void),
+ void (*postfork_child)(void))
+{
+ return 0;
+}