указание флагов ссылок только для одной статической библиотеки при компоновке исполняемого файла

У меня есть исполняемый файл, созданный из нескольких объектных файлов и связанный с несколькими статическими и разделяемыми библиотеками. Я хочу указать параметр компоновщика -Wl, -whole-archive для одной из связанных библиотек.

Например, с помощью этой команды:

/usr/bin/c++ _objectFiles_ -o _myExec_  _someCommonOptions_  _myLibraries_ -Wl,-rpath _path to libs_

Я хочу получить эту команду:

/usr/bin/c++ _objectFiles_ -o _myExec_  _someCommonOptions_  _allOtherLibs_ \
  -Wl,-whole-archive _one particular lib_ -Wl,-no_whole-archive -Wl,-rpath _path to libs_

Можно ли как-нибудь добиться этого с помощью cmake? Насколько я понимаю, когда я добавляю что-то вроде

set_target_properties(myExec PROPERTIES LINK_FLAGS "-Wl,-whole-archive")

, то параметры -whole-archive устанавливаются для всех связанных библиотек, и это определенно не то, что я хочу.

Спасибо.

10
задан Antwane 2 December 2014 в 13:45
поделиться