LinkDepends.cmake 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. enable_language(C)
  2. include("${CMAKE_BINARY_DIR}/../LinkDependsExternalLibrary-build/ExternalLibrary-debug.cmake")
  3. cmake_path(GET EXTERNAL_LIBRARY PARENT_PATH EXTERNAL_DIR)
  4. add_library(LinkDependsLib SHARED LinkDependsLib.c)
  5. target_link_directories(LinkDependsLib PRIVATE "${EXTERNAL_DIR}")
  6. target_link_libraries(LinkDependsLib PRIVATE External)
  7. add_executable(LinkDependsExe LinkDependsExe.c)
  8. target_link_directories(LinkDependsExe PRIVATE "${EXTERNAL_DIR}")
  9. target_link_libraries(LinkDependsExe PRIVATE External)
  10. set(CODE_WITH_SPACE [[
  11. add_library(LinkDependsLib2 SHARED ../LinkDependsLib.c)
  12. target_link_directories(LinkDependsLib2 PRIVATE "${EXTERNAL_DIR}")
  13. target_link_libraries(LinkDependsLib2 PRIVATE External)
  14. add_executable(LinkDependsExe2 ../LinkDependsExe.c)
  15. target_link_directories(LinkDependsExe2 PRIVATE "${EXTERNAL_DIR}")
  16. target_link_libraries(LinkDependsExe2 PRIVATE External)
  17. ]])
  18. if(MAKE_SUPPORTS_SPACES)
  19. add_subdirectory("With Space")
  20. set(check_pairs_with_space "
  21. \"$<TARGET_FILE:LinkDependsLib2>|${EXTERNAL_LIBRARY}\"
  22. \"$<TARGET_FILE:LinkDependsExe2>|${EXTERNAL_LIBRARY}\"
  23. ")
  24. endif()
  25. file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/check-$<LOWER_CASE:$<CONFIG>>.cmake"
  26. CONTENT "
  27. set(check_pairs
  28. \"$<TARGET_FILE:LinkDependsLib>|${EXTERNAL_LIBRARY}\"
  29. \"$<TARGET_FILE:LinkDependsExe>|${EXTERNAL_LIBRARY}\"
  30. ${check_pairs_with_space}
  31. )
  32. ")