Summary:ASTERISK-06303: Make fails on OpenBSD 3.6
Reporter:John Todd (jtodd)Labels:
Date Opened:2006-02-13 10:44:57.000-0600Date Closed:2011-06-07 14:10:46
Versions:Frequency of
Description:I can't verifiy that this will also be a problem on OpenBSD 3.8 (or CVS-HEAD) so this may just be an old version of OpenBSD.  Previous versions of Asterisk compiled acceptably on this system as of 2005-11-17.


...blah blah blah...
gcc  -pipe  -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3  -Iinclude -I../include -D_REENTRANT -D_GNU_SOURCE  -O6 -I/usr/local/include -L/usr/local/lib -march=i386 -pthread         -fomit-frame-pointer  -DT38_SUPPORT   -c -o config.o config.c
gcc  -pipe  -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -g3  -Iinclude -I../include -D_REENTRANT -D_GNU_SOURCE  -O6 -I/usr/local/include -L/usr/local/lib -march=i386 -pthread         -fomit-frame-pointer  -DT38_SUPPORT   -c -o channel.o channel.c
In file included from channel.c:75:
include/asterisk/sha1.h:63: syntax error before `int_least16_t'
gmake: *** [channel.o] Error 1
Comments:By: Tilghman Lesher (tilghman) 2006-02-13 11:14:51.000-0600

Looks suspiciously like gcc 2.95, which is not C99-compliant.

By: John Todd (jtodd) 2006-02-13 13:11:50.000-0600

That is correct.  Is there an approximate date on which gcc 3.95 became "unsupported" so I can get the last, latest version that works with these older compilers?  I suppose November 17th is probably going to be "pretty close."

By: John Todd (jtodd) 2006-02-13 13:13:04.000-0600

C99 compiler is used on OpenBSD 3.6, and according to notes from kpfleming:

Date: Sun, 05 Feb 2006 11:57:55 -0600
From: "Kevin P. Fleming" <kpfleming@digium.com>
Organization: Digium, Inc.
To: Asterisk Developers Mailing List <asterisk-dev@lists.digium.com>
Subject: Re: [asterisk-dev] include/asterisk/sha1.h and sha1.c
Reply-To: Asterisk Developers Mailing List <asterisk-dev@lists.digium.com>

Steve Underwood wrote:

If in 2006 a C99 construct is not considered acceptable, that says a lot more about the crappy state of many people's compilers than about this code. For a long time I tried to make my own stuff work with old compilers. Now I've given up. I write for C99. If you can't compile it, get rid of the Mickey Mouse tools you are using.

I agree; we already use other C99 constructs, and have deemed that non-C99 compilers will not be supported in post-1.2 releases of Asterisk.