diff --git a/PIPMacros.cmake b/PIPMacros.cmake index f5f50982..9a81f00a 100644 --- a/PIPMacros.cmake +++ b/PIPMacros.cmake @@ -27,10 +27,15 @@ macro(pip_code_model RESULT) set(CCM_OUT ${CMAKE_CURRENT_BINARY_DIR}/ccm_${PROJECT_NAME}.cpp) set(${RESULT} ${${RESULT}} ${CCM_OUT}) #message(STATUS "CCM = ${RESULT}") + if(NOT DEFINED PIP_DLL_DIR) + set(PIP_DLL_DIR ${CMAKE_CURRENT_BINARY_DIR}) + endif() add_custom_command(OUTPUT ${CCM_OUT} COMMAND ${PIP_CMG} ARGS -q ${OPTS} -o ${CMAKE_CURRENT_BINARY_DIR}/ccm_${PROJECT_NAME} ${CMG_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/${CCM_SRC} - MAIN_DEPENDENCY ${CCM_SRC} + DEPENDS ${CCM_SRC} + WORKING_DIRECTORY ${PIP_DLL_DIR} + COMMENT "Generating ccm_${PROJECT_NAME}.h, ccm_${PROJECT_NAME}.cpp" VERBATIM) endmacro()