2010-05-11 107 views
5

我需要構建一個庫,該庫位於存儲在變量CUSTOM_OUTDIR中的自定義位置。目前,我正在使用以下代碼來確保將庫複製到適當的位置。在自定義位置的cmake add_library

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,我最終得到兩個庫的副本。有沒有辦法只爲example庫設置CMAKE_BINARY_DIR,以便只有一個副本保存在適當的位置?

回答

8

命令

set_target_properties(example PROPERTIES 
    LIBRARY_OUTPUT_DIRECTORY "${CUSTOM_OUTDIR}" 
) 

應該做你想要什麼。我現在不在開發機器前面,稍後再檢查。