[MacPorts] #64532: graphite2 fails to build for ppc on 10.6.8 (Rosetta): unrecognized command line option '-mfpmath=sse'

MacPorts noreply at macports.org
Wed Jan 26 18:37:12 UTC 2022


#64532: graphite2 fails to build for ppc on 10.6.8 (Rosetta): unrecognized command
line option '-mfpmath=sse'
---------------------------+-------------------------------------------
  Reporter:  barracuda156  |      Owner:  (none)
      Type:  defect        |     Status:  new
  Priority:  Normal        |  Milestone:
 Component:  ports         |    Version:  2.7.1
Resolution:                |   Keywords:  powerpc, snowleopard, rosetta
      Port:  graphite2     |
---------------------------+-------------------------------------------

Comment (by ryandesign):

 Upstream did
 [https://github.com/silnrsi/graphite/commit/4f78a29ef31572f1360ae457ea0b9163b28eb039
 accept that patch] so they might accept improvements to it. However I'm
 not sure that any changes are needed in graphite2; the changes may be
 needed in the cmake portgroup.

 Seems like during your build `CMAKE_SYSTEM_PROCESSOR` had the value of the
 build machine's processor, even though you were wanting to cross-compile
 for PowerPC on an Intel machine. According to
 [https://cmake.org/cmake/help/latest/variable/CMAKE_SYSTEM_PROCESSOR.html
 the documentation], `CMAKE_SYSTEM_PROCESSOR` should have the correct value
 for cross-compiling if we use a `CMAKE_TOOLCHAIN_FILE`, but as far as I
 know nothing in MacPorts makes any attempt to do that. If you want to
 improve cross-compilation support for cmake projects in MacPorts, that's
 probably what to look at. I would guess that any successful use of a
 toolchain file would also require doing separate builds for separate
 architectures, which would mean using the muniversal portgroup.

 Attempting to make the cmake portgroup always include the muniversal
 portgroup would probably have adverse consequences for at least a handful
 of ports that already do successful universal builds, so this might be the
 kind of fix that would have to be introduced in a new version of cmake
 portgroup (we already have 1.0 and 1.1 so maybe 1.2) and ports would opt
 into that new version over time.

 I'm not sure how common it is for cmake projects to make decisions based
 on `CMAKE_SYSTEM_PROCESSOR`. If it's uncommon, maybe making changes in
 individual affected ports like graphite2 is better than trying to craft a
 general solution that can go in the portgroup.

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


More information about the macports-tickets mailing list