[CMake] Use target_link_libraries(INTERFACE|PRIVATE) on CMake-2.8.12 to increase...
[oota-llvm.git] / cmake / modules / LLVM-Config.cmake
index 451fc56c6bfafb14a4d75c454e2f14a187b4b20c..2783af807a182b4a39da7fe1053a696677d22cf2 100644 (file)
@@ -39,7 +39,15 @@ function(explicit_llvm_config executable)
   set( link_components ${ARGN} )
 
   llvm_map_components_to_libnames(LIBRARIES ${link_components})
-  target_link_libraries(${executable} ${LIBRARIES})
+  get_target_property(t ${executable} TYPE)
+  if("${t}" STREQUAL "STATIC_LIBRARY")
+    target_link_libraries(${executable} ${cmake_2_8_12_INTERFACE} ${LIBRARIES})
+  elseif("${t}" STREQUAL "SHARED_LIBRARY" OR "${t}" STREQUAL "MODULE_LIBRARY")
+    target_link_libraries(${executable} ${cmake_2_8_12_PRIVATE} ${LIBRARIES})
+  else()
+    # Use plain form for legacy user.
+    target_link_libraries(${executable} ${LIBRARIES})
+  endif()
 endfunction(explicit_llvm_config)