[asterisk-dev] Compiler feature requirements
Corey Farrell
git at cfware.com
Thu Jan 25 10:04:37 CST 2018
I've posted a patch for this [1] so anyone who wants to test the
proposed changes can. This is really a question about non-GCC compilers
since we already know which versions of GCC work. Note that we cannot
use __sync_fetch_and_nand as the original implementation in 4.1 was
broken. If we need __sync_fetch_and_nand or __sync_nand_and_fetch we
would need to require gcc-4.4. I've looked into the ast_flags macro's,
implementing them with atomic operations would would not require nand
functions.
[1] https://gerrit.asterisk.org/8049
On 01/24/2018 04:50 PM, Corey Farrell wrote:
> I've posted ASTERISK-27619 [1] proposing that we drop support for GCC
> versions older than 4.1.2. Specifically we'd be requiring that either
> __sync or __atomic builtin functions be available (I'm unsure what
> this will do to clang requirements). gcc-4.1.2 was released in
> February 2007 and was the version provided by CentOS 5. I've posted a
> PR to the jansson project [2] which will make reference counting
> thread safe, but I'm getting push-back on the parts needed to provide
> a replacement function for old compilers. Since reference counting in
> jansson was never thread safe before I think they'd rather just leave
> it as is for old compilers.
>
> Obviously this proposal is for Asterisk 16+ only. Does this matter to
> any distributions that will be supported beyond this October?
>
> [1] https://issues.asterisk.org/jira/browse/ASTERISK-27619
> [2] https://github.com/akheron/jansson/pull/389
More information about the asterisk-dev
mailing list