summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/jemalloc.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/jemalloc.c b/src/jemalloc.c
index 3e0605e..8603017 100644
--- a/src/jemalloc.c
+++ b/src/jemalloc.c
@@ -753,8 +753,10 @@ malloc_ncpus(void)
SYSTEM_INFO si;
GetSystemInfo(&si);
result = si.dwNumberOfProcessors;
-#elif defined(JEMALLOC_GLIBC_MALLOC_HOOK)
+#elif defined(JEMALLOC_GLIBC_MALLOC_HOOK) && defined(CPU_COUNT)
/*
+ * glibc >= 2.6 has the CPU_COUNT macro.
+ *
* glibc's sysconf() uses isspace(). glibc allocates for the first time
* *before* setting up the isspace tables. Therefore we need a
* different method to get the number of CPUs.
@@ -1899,6 +1901,7 @@ JEMALLOC_EXPORT void *(*__memalign_hook)(size_t alignment, size_t size) =
je_memalign;
# endif
+#ifdef CPU_COUNT
/*
* To enable static linking with glibc, the libc specific malloc interface must
* be implemented also, so none of glibc's malloc.o functions are added to the
@@ -1917,6 +1920,9 @@ int __posix_memalign(void** r, size_t a, size_t s)
PREALIAS(je_posix_memalign);
#undef PREALIAS
#undef ALIAS
+
+#endif
+
#endif
/*