summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.ac13
-rw-r--r--libdimension/Makefile.am4
2 files changed, 17 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index e1f127f..4196c32 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,6 +37,19 @@ AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_PROG_LIBTOOL
+dnl Use jemalloc rather than the default malloc implementation
+AC_ARG_ENABLE([jemalloc],
+ [AS_HELP_STRING([--enable-jemalloc],
+ [Enable the jemalloc allocator [default=check]])],
+ [],
+ [enable_jemalloc=check])
+if test "$enable_jemalloc" = "check"; then
+ AC_CHECK_LIB([jemalloc], [malloc],
+ [enable_jemalloc=yes],
+ [enable_jemalloc=no])
+fi
+AM_CONDITIONAL([JEMALLOC], [test "$enable_jemalloc" != "no"])
+
dnl PNG canvas export
AC_ARG_ENABLE([png],
[AS_HELP_STRING([--enable-png],
diff --git a/libdimension/Makefile.am b/libdimension/Makefile.am
index e437659..16ab286 100644
--- a/libdimension/Makefile.am
+++ b/libdimension/Makefile.am
@@ -89,6 +89,10 @@ libdimension_la_CFLAGS = $(AM_CFLAGS) -pthread
libdimension_la_LDFLAGS = -version-info 0:0:0 $(AM_LDFLAGS)
libdimension_la_LIBADD = -lm
+if JEMALLOC
+libdimension_la_LIBADD += -ljemalloc
+endif
+
if PNG
libdimension_la_SOURCES += png.c
libdimension_la_LIBADD += -lpng