Я должен создать библиотеку, которая должна быть размещена в пользовательское местоположение, сохраненное в переменном CUSTOM_OUTDIR. В настоящее время я использую следующий код, чтобы удостовериться, что библиотека копируется в свое надлежащее местоположение.
ADD_LIBRARY(example MODULE example.c)
GET_TARGET_PROPERTY(FILEPATH example LOCATION)
ADD_CUSTOM_COMMAND(
TARGET example POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${FILEPATH} ${CUSTOM_OUTDIR}
)
Однако это не хорошее решение, поскольку копирование сделано post_build, и я заканчиваю с двумя копиями библиотеки. Есть ли способ установить CMAKE_BINARY_DIR только для example
библиотека так, чтобы только одна копия его была сохранена в надлежащем месте?
Команда
set_target_properties(example PROPERTIES
LIBRARY_OUTPUT_DIRECTORY "${CUSTOM_OUTDIR}"
)
должна выполнить что ты хочешь. Я сейчас не перед разработкой машины, проверю позже.