[MacPorts] #58677: legacy support "error: conflicting asm label" when building some ports
MacPorts
noreply at macports.org
Sun Sep 19 17:50:46 UTC 2021
#58677: legacy support "error: conflicting asm label" when building some ports
-------------------------------------------------+-------------------------
Reporter: rmottola | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: leopard
Port: legacy-support legacy-support- | i386
devel libde265 cmake |
-------------------------------------------------+-------------------------
Comment (by kencu):
I think what might possibly be happenning here is that a file includes
<stdlib.h> and gets our redefinitions all set up properly, but then later
includes <assert.h> which includes <sys/cdefs.h> and then that redefines
these back to the originals again:
{{{
#define __DARWIN_EXTSN(sym) __asm("_" __STRING(sym)
__DARWIN_SUF_EXTSN)
#define __DARWIN_EXTSN_C(sym) __asm("_" __STRING(sym)
__DARWIN_SUF_EXTSN __DARWIN_SUF_NON_CANCELABLE)
}}}
Not sure just why <sys/cdefs.h> would be run through a second time at the
moment, nor am I 100% sure this is exactly what is happening, but it seems
plausible as a place to look for how to fix this.
A complete redo of our method of redefining symbols would be moderate
work.
gcc and clang versions < 3.8 do not appear affected.
--
Ticket URL: <https://trac.macports.org/ticket/58677#comment:41>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list