[MacPorts] #50509: llvm-3.8: remove unnecessary openmp variant

MacPorts noreply at macports.org
Wed Feb 3 11:47:28 PST 2016


#50509: llvm-3.8: remove unnecessary openmp variant
------------------------------------+------------------------
  Reporter:  howarth.at.macports@…  |      Owner:  jeremyhu@…
      Type:  enhancement            |     Status:  new
  Priority:  Normal                 |  Milestone:
 Component:  ports                  |    Version:  2.3.4
Resolution:                         |   Keywords:  haspatch
      Port:  llvm-3.8               |
------------------------------------+------------------------

Comment (by howarth.at.macports@…):

 Note there will be a major speed improvement in the llvm tool chain with
 -DLLVM_LINK_LLVM_DYLIB:BOOL=ON compared to -DLLVM_BUILD_LLVM_DYLIB=ON as
 explained by Chris Bieneman...

 All platforms see performance implications of dynamically linking
 libraries as opposed to statically linking them. I don’t know whether that
 hits Darwin or Linux worse, but I believe Darwin’s two-level name spacing
 actually makes Darwin better than Linux. If I understand correctly it hits
 windows worst of all because of how Windows handles weak symbol
 resolution.

 On all platforms I would expect the many shared libraries to be way worse
 relative to one shared library. I expect that would be the case because
 one of the complications of C++ is a lot of weak exports. Those come from
 functions implemented in headers which are then compiled into each
 generated object file. At static link time the linker resolves the
 duplicates down to a single implementation. If you are linking one dynamic
 library you will have way less symbols than if you are linking multiple
 libraries because each library will have its own copy of the duplicated
 symbols.

-- 
Ticket URL: <https://trac.macports.org/ticket/50509#comment:7>
MacPorts <https://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list