5 messages in ru.sysoev.nginxRe: malloc.h obsolete...
FromSent OnAttachments
Darrin ChandlerDec 29, 2007 10:05 am 
Igor SysoevDec 29, 2007 10:38 am 
Darrin ChandlerDec 29, 2007 10:53 am 
Igor SysoevDec 29, 2007 11:16 am 
Darrin ChandlerDec 29, 2007 12:16 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: malloc.h obsolete...Actions...
From:Igor Sysoev (is-G@public.gmane.org)
Date:Dec 29, 2007 11:16:36 am
List:ru.sysoev.nginx

On Sat, Dec 29, 2007 at 11:53:47AM -0700, Darrin Chandler wrote:

On Sat, Dec 29, 2007 at 09:39:21PM +0300, Igor Sysoev wrote:

On Sat, Dec 29, 2007 at 11:05:56AM -0700, Darrin Chandler wrote:

I have a question regarding this warning message (which is repeated many times):

In file included from src/os/unix/ngx_posix_config.h:74, from src/core/ngx_config.h:37, from src/core/nginx.c:7: /usr/include/malloc.h:4:2: warning: #warning "<malloc.h> is obsolete, use
<stdlib.h>"

stdlib.h seems to be assumed always, and malloc.h hasn't been needed for some time. Do some of the supported systems still use malloc.h instead of stdlib.h for this stuff? Or can the malloc.h detection simply be removed from auto/headers, ngx_posix_config.h, et al?

What OS ? malloc.h is required for memalign(), however, now memalign() is not used in nginx.

This is on OpenBSD. I maintain the OpenBSD nginx port, and I am looking for ways to reduce warnings and generally improve platform support.

FYI, it's working well as far as I've tested except for mail, which I have not set up an auth server to test yet.

On FreeBSD I see in objs/autoconf.err:

---------------------------------------- checking for malloc.h

In file included from objs.gcc/autotest.c:2: /usr/include/malloc.h:3:2: #error "<malloc.h> has been replaced by <stdlib.h>"

----------

#include <malloc.h>

int main() { return 0; }

---------- gcc -o objs.gcc/autotest objs.gcc/autotest.c

----------

One way is to add

./configure ... --with-cc-opt="-DNGX_HAVE_MALLOC_H=0"