[MacPorts] #54773: port:libgcc/port:gcc7: proposed modifications, efficiency + libc++ support

MacPorts noreply at macports.org
Sat Sep 9 23:17:27 UTC 2017


#54773: port:libgcc/port:gcc7: proposed modifications, efficiency + libc++ support
--------------------------+----------------------
  Reporter:  RJVB         |      Owner:
      Type:  enhancement  |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:
Resolution:               |   Keywords:  haspatch
      Port:  gcc7 libgcc  |
--------------------------+----------------------

Comment (by jeremyhu):

 Replying to [comment:3 RJVB]:
 > I don't understand your point 2, esp. not the point of incorrect dylib
 IDs. I'm not modifying those.

 Exactly,  that is the problem.  You need to modify them and install them
 into the common path.

 Instead, you're not modifying them and symlinking them from the common
 path.

 > Yes, the point of the +with_libgcc variant is to install gcc as one
 would normally do, and let port:libgcc install symlinks instead of actual
 library files, which point to the libraries installed by port:gcc7. That's
 enough to satisfy the dependencies of the binary builds provided by the
 build bots.

 And them when you go and install gcc8+with_libgcc and uninstall gcc7, all
 the ports that link against those runtime libraries are then broken.

 That is why you need to have the files in the common location and symlink
 them from the versioned paths.

 > > For the +libcxx changes... is g++ expected to be compatible with
 libc++?
 >
 > Why would it not be, provided you use the correct headerfiles? My
 changes basically implement the instructions given on
 http://libcxx.llvm.org/docs/UsingLibcxx.html#using-libc-with-gcc so there
 is some form of support for using libc++ with g++. In fact, I understand
 that libc++ aims to be a modern alternative to libstdc++, not something
 that is usable only with llvm.

 > I have asked on the GCC ML and it was confirmed that this change will
 also be considered for inclusion into gcc provided it doesn't hardcode the
 choice of runtime but adds a -stdlib option like clang has. I don't
 particularly mind trying to get that done properly before presenting the
 patch upstream (helping hands appreciated). But I'd really like to be able
 to argue that it has been tested by others before presenting it upstream.

 Well if that's the case, then I suppose that is fine.  However, older
 versions of gcc might not be able to support required features for newer
 libc++, so be careful.

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


More information about the macports-tickets mailing list