4
我最近通過CMake將測試添加到我的一個項目中。我通過創建另一個可運行我的測試用例的可執行文件來完成此操作。我的項目中的測試用例使用我主應用程序中的代碼。每次我對主應用程序和測試運行器之間共享的源文件進行更改時,都會重新編譯該對象兩次。一次爲主應用程序,第二次爲測試運行者。避免用CMake重新編譯通用對象文件?
有沒有辦法讓我可以共享同一個對象文件?
我的CMakeLists文件看起來像這樣。
AUX_SOURCE_DIRECTORY(${SRC_DIR}/game game_SRC)
AUX_SOURCE_DIRECTORY(${SRC_DIR}/framework/ framework_SRC)
ADD_EXECUTABLE(${CMAKE_PROJECT_NAME}
${game_SRC} ${framework_SRC})
# --- Testing ---
ENABLE_TESTING()
AUX_SOURCE_DIRECTORY(${TEST_DIR} test_SRC)
ADD_EXECUTABLE(${TEST_RUNNER_NAME}
${test_SRC}
${framework_SRC}
)