On 2018-5-6 10:05 , Ryan Schmidt wrote: > > On May 5, 2018, at 19:04, Joshua Root wrote: > >> On 2018-5-6 09:55 , Ryan Schmidt wrote: >>> >>> On May 5, 2018, at 16:36, Jackson Isaac wrote: >>> >>>> +## Upstream binary seems to be built using libstdc++ >>>> >>>> +# Port keeps failing on rev-upgrade since it >>>> >>>> +# checks if duck is built against libc++ or not. >>>> >>>> +configure.cxx_stdlib >>> >>> Then set it to libstdc++. Don't clear it. >> >> It's a binary, the port has no control over which stdlib is used, so >> clearing the option is appropriate. Compare the gcc ports. > > I thought the idea was for the portfile to tell MacPorts base what stdlib the > binary was built with, so that MacPorts base could record that in the > registry when it's installed. That's why I set cxx_stdlib in my ports that > install binaries, like libxl.
Setting configure.cxx_stdlib tells base to ask the software to build with a given stdlib (via CXXFLAGS). We record what stdlib it was *asked* to build with in the registry. The stdlib it actually was built with is determined by inspecting the binaries. I guess setting it for ports that don't build from source isn't exactly wrong; you can still be asking even if they ignore it. You do need to notice when a new version changes stdlibs and update the portfile though. - Josh
