Скажем, существует следующая структура каталогов:
root
|
+--projects
| |
| +-test
| |
| +-CMakeFiles.txt
|
+--libs
|
+-testlib
|
+-CMakeFiles.txt
test содержит CMakeFiles.txt, а testlib также содержит CMakeFiles.txt. "test" создает исполняемый файл, а "testlib" создает статическую библиотеку.
Я хочу, чтобы "тест" связывался с "testlib" без использования символических ссылок и без перемещения библиотеки "testlib" в подкаталог в "тесте".
Поскольку "testlib" не является подкаталогом "теста", я не могу сделать
add_subdirectory("../../libs/testlib")
В тесте CMakeFiles.txt - cmake будет жаловаться на то, что "testlib" не находится в подкаталоге "test".
Кроме того, поскольку в системе есть несколько разных компиляторов, я не могу просто установить библиотеки testlib в какой-то центральный каталог, поэтому я хочу, чтобы тест собирал локальную копию testlib и связывался с ней (т.е. как если бы testlib был подкаталог). Я также хочу, чтобы "тестовый" проект автоматически перестраивал "testlib" , если он был изменен.
Итак, как я могу с этим справиться? cmake 2.8.4, winxp sp3.