[MacPorts] #61692: gromacs: clang: error: invalid version number in '-mmacosx-version-min=11.0' (was: clang invalid version number)

MacPorts noreply at macports.org
Sat Nov 28 16:44:03 UTC 2020


#61692: gromacs: clang: error: invalid version number in '-mmacosx-version-
min=11.0'
-------------------------------------+----------------------
  Reporter:  btywoniuk               |      Owner:  dstrubbe
      Type:  defect                  |     Status:  assigned
  Priority:  Normal                  |  Milestone:
 Component:  ports                   |    Version:  2.6.4
Resolution:                          |   Keywords:  bigsur
      Port:  gromacs gromacs-plumed  |
-------------------------------------+----------------------
Changes (by ryandesign):

 * status:  new => assigned
 * cc: dstrubbe (removed)
 * owner:  (none) => dstrubbe
 * keywords:  BigSur; Gromacs; clang; => bigsur
 * port:  gromacs; gromacs-plumed => gromacs gromacs-plumed


Comment:

 The two messages are probably related. The deprecated cxx11 1.1 portgroup
 whitelists a number of C++11-compatible compilers, starting with clang
 5.0. Whitelisting compatible compilers is not recommended; we recommend
 blacklisting incompatible compilers instead. MacPorts will choose the
 first whitelisted compiler that is not blacklisted, so even though newer
 clang versions are also whitelisted, MacPorts will pick clang 5.0 because
 it is the first in the list, even though it is too old for macOS 11.

 Usually one would replace the `PortGroup cxx11 1.1` line with
 `compiler.cxx_standard 2011` (or whatever version the software requires)
 but I am also concerned by these nearby lines:
 {{{
 # this line is needed to allow use of gcc
 configure.cxx_stdlib   libstdc++
 }}}
 We usually don't want to force the use of libstdc++ nor do we usually want
 ports to use gcc/g++. The entire codepath that whitelists clang 5.0 is
 only entered when libstdc++ is used; it was expected that this would only
 occur on very old versions of Mac OS X where clang 5.0 would be
 comparatively new and would work fine. The port subverts that assumption
 by forcing the use of libstdc++.

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


More information about the macports-tickets mailing list