diff --git a/configure.ac b/configure.ac index 61f54792ba..8f639e3d6d 100644 --- a/configure.ac +++ b/configure.ac @@ -585,6 +585,7 @@ pause \ ]) AC_FUNC_ALLOCA +AC_FUNC_MMAP EFL_CHECK_FUNCS([EFLALL], [fnmatch gettimeofday dirfd fcntl]) diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c index 187b24052f..bb54d1c85b 100644 --- a/src/lib/eo/eo.c +++ b/src/lib/eo/eo.c @@ -289,7 +289,7 @@ typedef struct _Eo_Call_Stack { static void * _eo_call_stack_mem_alloc(size_t maxsize) { -#if defined (__linux__) || defined (__MacOSX__) +#ifdef HAVE_MMAP // allocate eo call stack via mmped anon segment if on linux - more // secure and safe. also gives page aligned memory allowing madvise void *ptr; @@ -310,7 +310,7 @@ _eo_call_stack_mem_alloc(size_t maxsize) #endif } -#if defined (__linux__) || defined (__MacOSX__) +#ifdef HAVE_MMAP static void _eo_call_stack_mem_resize(void **ptr EINA_UNUSED, size_t newsize, size_t maxsize) { @@ -331,7 +331,7 @@ _eo_call_stack_mem_resize(void **ptr EINA_UNUSED, size_t newsize EINA_UNUSED, si #endif } -#if defined (__linux__) || defined (__MacOSX__) +#ifdef HAVE_MMAP static void _eo_call_stack_mem_free(void *ptr, size_t maxsize) { diff --git a/src/lib/eo/eo_ptr_indirection.x b/src/lib/eo/eo_ptr_indirection.x index 5bba62d866..aa5ea67ea2 100644 --- a/src/lib/eo/eo_ptr_indirection.x +++ b/src/lib/eo/eo_ptr_indirection.x @@ -1,5 +1,5 @@ #include -#if defined (__linux__) || defined (__MacOSX__) +#ifdef HAVE_MMAP #include #include #include @@ -119,7 +119,7 @@ typedef struct _Mem_Header static void * _eo_id_mem_alloc(size_t size) { -#if defined (__linux__) || defined (__MacOSX__) +#ifdef HAVE_MMAP void *ptr; Mem_Header *hdr; size_t newsize; @@ -154,7 +154,7 @@ _eo_id_mem_calloc(size_t num, size_t size) static void _eo_id_mem_free(void *ptr) { -#if defined (__linux__) || defined (__MacOSX__) +#ifdef HAVE_MMAP Mem_Header *hdr; if (!ptr) return; hdr = (Mem_Header *)(((unsigned char *)ptr) - MEM_HEADER_SIZE); @@ -173,7 +173,7 @@ _eo_id_mem_free(void *ptr) static void _eo_id_mem_protect(void *ptr, Eina_Bool may_not_write) { -# if defined (__linux__) || defined (__MacOSX__) +# ifdef HAVE_MMAP Mem_Header *hdr; if (!ptr) return; hdr = (Mem_Header *)(((unsigned char *)ptr) - MEM_HEADER_SIZE);