Вероятно, ваш лучший вариант - не связывать напрямую библиотеку, а использовать импортированные цели: ваша цель библиотеки может быть
add_library(ABC SHARED IMPORTED)
set_target_properties(ABC PROPERTIES
IMPORTED_LOCATION path/to/library/abc.so
INTERFACE_INCLUDE_DIRECTORIES path/to/include
)
Затем вы можете связать ее как цель:
target_link_libraries(hello ABC)
Следующим шагом будет наличие модуля поиска библиотеки или модуля конфигурации, чтобы вы не определяли полный путь в вашем CMakeLists.txt, а искали библиотеку или просто включали файл .cmake со всемипути.
Посмотрите ЗДЕСЬ и ЗДЕСЬ