diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt index e1b706dc..e24788a9 100644 --- a/apps/CMakeLists.txt +++ b/apps/CMakeLists.txt @@ -8,7 +8,10 @@ if(MSVC) @ONLY ) - add_link_options("/MANIFEST:EMBED" "/MANIFESTINPUT:${CMAKE_CURRENT_BINARY_DIR}/bmx_windows.generated.manifest") + # CMake generates linking and manifest handling differently between Visual Studio & ninja + # build generators. So adding it as a source file instead of an explicit linking option, + # CMake should cover both cases the right way. + set(BMX_WIN_MANIFEST_SRC "${CMAKE_CURRENT_BINARY_DIR}/bmx_windows.generated.manifest") # /manifest file is not found when incremental is enabled (default Debug build config), so we disable it. add_link_options("$<$:/INCREMENTAL:NO>") @@ -24,6 +27,7 @@ add_subdirectory(raw2bmx) add_executable(bmxtimecode bmxtimecode.cpp + ${BMX_WIN_MANIFEST_SRC} ) target_include_directories(bmxtimecode PRIVATE diff --git a/apps/bmxparse/CMakeLists.txt b/apps/bmxparse/CMakeLists.txt index 67ce2733..0b172d39 100644 --- a/apps/bmxparse/CMakeLists.txt +++ b/apps/bmxparse/CMakeLists.txt @@ -1,5 +1,6 @@ add_executable(bmxparse bmxparse.cpp + ${BMX_WIN_MANIFEST_SRC} ) target_include_directories(bmxparse PRIVATE diff --git a/apps/bmxtranswrap/CMakeLists.txt b/apps/bmxtranswrap/CMakeLists.txt index 0228a9b0..14ee2893 100644 --- a/apps/bmxtranswrap/CMakeLists.txt +++ b/apps/bmxtranswrap/CMakeLists.txt @@ -1,6 +1,7 @@ add_executable(bmxtranswrap bmxtranswrap.cpp MXFInputTrack.cpp + ${BMX_WIN_MANIFEST_SRC} ) target_include_directories(bmxtranswrap PRIVATE diff --git a/apps/mxf2raw/CMakeLists.txt b/apps/mxf2raw/CMakeLists.txt index 7d4f7c1d..7bd04244 100644 --- a/apps/mxf2raw/CMakeLists.txt +++ b/apps/mxf2raw/CMakeLists.txt @@ -5,6 +5,7 @@ add_executable(mxf2raw AvidInfoOutput.cpp mxf2raw.cpp OutputFileManager.cpp + ${BMX_WIN_MANIFEST_SRC} ) target_include_directories(mxf2raw PRIVATE diff --git a/apps/raw2bmx/CMakeLists.txt b/apps/raw2bmx/CMakeLists.txt index fda149e7..c2f09392 100644 --- a/apps/raw2bmx/CMakeLists.txt +++ b/apps/raw2bmx/CMakeLists.txt @@ -1,6 +1,7 @@ add_executable(raw2bmx raw2bmx.cpp RawInputTrack.cpp + ${BMX_WIN_MANIFEST_SRC} ) target_include_directories(raw2bmx PRIVATE