[MacPorts] #69420: geomview @1.9.5_0+opengl: error: expected identifier or '(' (was: geomview-1.9.5_0+opengl arm64 build fails)

MacPorts noreply at macports.org
Thu Feb 29 19:25:39 UTC 2024


#69420: geomview @1.9.5_0+opengl: error: expected identifier or '('
-----------------------+------------------------
  Reporter:  murrayE   |      Owner:  raphael-st
      Type:  defect    |     Status:  assigned
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:  2.9.1
Resolution:            |   Keywords:  arm64
      Port:  geomview  |
-----------------------+------------------------
Changes (by ryandesign):

 * owner:  (none) => raphael-st
 * status:  new => assigned
 * cc: raphael-st (removed)
 * keywords:  sonoma arm64 => arm64


Comment:

 It's failing on all of our arm64 builders too, but not the x86_64 ones.

 `finite` was replaced with `isfinite` in C99 (25 years ago) and Apple
 Silicon doesn't support `finite`. We've fixed this problem in several
 other ports before (e.g. https://github.com/macports/macports-
 ports/pull/18137).

 Looks like geomview is trying to continue to use `finite` in the code but
 replace it with `isfinite` by using the macro `# define finite(x)
 isfinite(x)` and for some reason this is making the system headers
 unhappy. The solution is probably to remove that macro and literally
 replace all occurrences of `finite` in the code with `isfinite`.

 This issue is not MacPorts-specific and should be reported to the
 developers, however I'm not sure they still exist. The last release of
 geomview was ten years ago. Their sourceforge page has an issue tracker
 but it doesn't appear to be used. They say they want bug reports sent to
 their mailing list instead. I don't see any reports of an `isfinite`
 problem there yet.

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


More information about the macports-tickets mailing list