From 8bae5a177bef43a75141774944e21f236ac0af40 Mon Sep 17 00:00:00 2001 From: Thomas Khyn Date: Fri, 7 Feb 2025 10:51:47 +1300 Subject: [PATCH] Fix BMI path for MSVC builds when building with Ninja generator --- CMakeLists.txt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d4c875f44fab..a9b629c67bf5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,7 +27,15 @@ endfunction() # DEPRECATED! Should be merged into add_module_library. function(enable_module target) if (MSVC) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/${target}.ifc" BMI) + set(BMI_DIR ${CMAKE_CURRENT_BINARY_DIR}/) + if (CMAKE_GENERATOR STREQUAL "Ninja") + file(RELATIVE_PATH BMI_DIR ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}) + if (BMI_DIR) + set(BMI_DIR ${BMI_DIR}/) + endif() + set(BMI_DIR ${BMI_DIR}CMakeFiles/${target}.dir/) + endif() + file(TO_NATIVE_PATH "${BMI_DIR}${target}.ifc" BMI) target_compile_options(${target} PRIVATE /interface /ifcOutput ${BMI} INTERFACE /reference fmt=${BMI})