[MacPorts] #54215: gcc7, libgcc: broken on powerpc

MacPorts noreply at macports.org
Thu Sep 21 11:03:42 UTC 2017


#54215: gcc7, libgcc: broken on powerpc
---------------------------+----------------------
  Reporter:  mojca         |      Owner:
      Type:  defect        |     Status:  new
  Priority:  Normal        |  Milestone:
 Component:  ports         |    Version:
Resolution:                |   Keywords:  haspatch
      Port:  gcc7, libgcc  |
---------------------------+----------------------

Comment (by ccorn):

 Following kencu's proposal, I am currently rebuilding {{{libgcc7}}} and
 {{{gcc7}}} with the {{{+defaultabi4}}} variant, and I intend to run the
 testsuite after {{{port build}}}. Expect this to take several days.

 I have made another variant for the {{{force-static-libgcc}}} patch used
 by me so far. Whereas {{{+defaultabi4}}} tries to avoid incompatibilities
 by choosing a specific ABI, {{{+staticlibgcc}}} tries to make both ABIs
 coexist peacefully. Both variants can be combined, which might be useful
 on platforms where the GCC4 ABI is not the native one, if you want to try
 it anyway.

 Following the criterion employed by {{{PortGroup cxx11 1.1}}}, if
 {{{{os.major} < 13}}}, variant {{{+defaultabi4}}} will be set by default
 unless {{{+staticlibgcc}}} has been selected.

 Attaching the port diff covering the Portfile and all patchfiles.
 I have tried to make appropriate distinctions between what is specific to
 PPC, what is specific to Darwin, and what is specific to particular
 versions of Darwin.

 In the hope of making the expensive testsuite run a little more
 interesting,
 I have added other patches that I consider safe. One ignores
 {{{-freorder_blocks_and_partition}}} instead of issuing a warning when it
 is used on Darwin. The other avoids use of a fixed-size buffer (and thus
 buffer overflow) when assembling a label. Both patch proposals can be
 found at [https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81033 GCC Bugzilla
 81033]. The buffer patch there also uses a macro {{{DECL_ASSEMBLER_NAME}}}
 instead of {{{DECL_NAME}}}, but that change seems to have some Objective-C
 fallout if I understand the feedback correctly. Therefore I only use the
 portion that gets rid of the fixed-size buffer.

--
Ticket URL: <https://trac.macports.org/ticket/54215#comment:26>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list