[llvm] [ocaml] Support linking against dylib
Support linking OCaml modules against LLVM dylib when requested, rather than against static libs that might not be installed at all. Differential Revision: https://reviews.llvm.org/D68452 llvm-svn: 374556
This commit is contained in:
parent
3b581ac80f
commit
da2a29a17c
|
@ -66,21 +66,25 @@ function(add_ocaml_library name)
|
||||||
list(APPEND ocaml_flags "-custom")
|
list(APPEND ocaml_flags "-custom")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
explicit_map_components_to_libraries(llvm_libs ${ARG_LLVM})
|
if(LLVM_LINK_LLVM_DYLIB)
|
||||||
foreach( llvm_lib ${llvm_libs} )
|
list(APPEND ocaml_flags "-lLLVM")
|
||||||
list(APPEND ocaml_flags "-l${llvm_lib}" )
|
else()
|
||||||
endforeach()
|
explicit_map_components_to_libraries(llvm_libs ${ARG_LLVM})
|
||||||
|
foreach( llvm_lib ${llvm_libs} )
|
||||||
|
list(APPEND ocaml_flags "-l${llvm_lib}" )
|
||||||
|
endforeach()
|
||||||
|
|
||||||
get_property(system_libs TARGET LLVMSupport PROPERTY LLVM_SYSTEM_LIBS)
|
get_property(system_libs TARGET LLVMSupport PROPERTY LLVM_SYSTEM_LIBS)
|
||||||
foreach(system_lib ${system_libs})
|
foreach(system_lib ${system_libs})
|
||||||
if (system_lib MATCHES "^-")
|
if (system_lib MATCHES "^-")
|
||||||
# If it's an option, pass it without changes.
|
# If it's an option, pass it without changes.
|
||||||
list(APPEND ocaml_flags "${system_lib}" )
|
list(APPEND ocaml_flags "${system_lib}" )
|
||||||
else()
|
else()
|
||||||
# Otherwise assume it's a library name we need to link with.
|
# Otherwise assume it's a library name we need to link with.
|
||||||
list(APPEND ocaml_flags "-l${system_lib}" )
|
list(APPEND ocaml_flags "-l${system_lib}" )
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
endif()
|
||||||
|
|
||||||
string(REPLACE ";" " " ARG_CFLAGS "${ARG_CFLAGS}")
|
string(REPLACE ";" " " ARG_CFLAGS "${ARG_CFLAGS}")
|
||||||
set(c_flags "${ARG_CFLAGS} ${LLVM_DEFINITIONS}")
|
set(c_flags "${ARG_CFLAGS} ${LLVM_DEFINITIONS}")
|
||||||
|
|
Loading…
Reference in New Issue