Opened 9 years ago

Closed 9 years ago

#48550 closed defect (invalid)

llvm-3.7 doesn't include libraries in LLVMExports.cmake

Reported by: ppohja@… Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 2.3.3
Keywords: Cc: larryv (Lawrence Velázquez)
Port: llvm-3.7

Description

In LLVM-3.6 all the exported libraries were declared with add_library() and their file system location in LLVMExpores.cmake. When trying to compile software that requires LLVM 3.7 (cpp-ethereum), I am getting a big number of errors like this:

CMake Error at /opt/local/libexec/llvm-3.7/share/llvm/cmake/LLVMExports.cmake:10 (set_property):
  set_property could not find TARGET LLVMSupport.  Perhaps it has not yet
  been created.
Call Stack (most recent call first):
  /opt/local/libexec/llvm-3.7/share/llvm/cmake/LLVMConfig.cmake:59 (include)
  evmjit/CMakeLists.txt:51 (find_package)

It looks like the version of LLVMExports.cmake does not include the libraries provided by LLVM. I can get rid of these error messages by running

grep TARGET errlog |cut -d" " -f 8|cut -d"." -f 1 |sort|uniq|awk '{print "add_library(" $1 " STATIC IMPORTED)"}'

and adding the output to the file LLVMExports.cmake.

My target software declares LLVM's usage as this: llvm_map_components_to_libnames(LLVM_LIBS core support mcjit x86asmparser x86codegen ipo) - and now my compilation fails on the missing component 'core'.

Don't know if this is an LLVM or macports issue.

Change History (4)

comment:1 Changed 9 years ago by ppohja@…

Cc: ppohja@… added

Cc Me!

comment:2 Changed 9 years ago by Ionic (Mihai Moldovan)

Cc: larryv@… added; jeremyhu@… ppohja@… removed
Owner: changed from macports-tickets@… to jeremyhu@…
Port: llvm-3.7 added
Summary: llvm @ 3.7 doesn't include libraries in LLVMExports.cmakellvm-3.7 doesn't include libraries in LLVMExports.cmake

Please don't CC yourself - reporters are automatically notified of changes.

Instead, remember to CC all maintainers and fill out the Port field next time.

comment:3 Changed 9 years ago by jeremyhu (Jeremy Huddleston Sequoia)

This looks like an upstream issue.

Do you see issues using llvm-3.8? I pushed changes today that move the port onto the cmake based build system instead of automake.

comment:4 Changed 9 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: invalid
Status: newclosed

No response. Closing.

Note: See TracTickets for help on using tickets.