[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