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
--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-dev