@@ -731,23 +731,6 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
731
731
if (is_root_project) {
732
732
cmd (" cmake_minimum_required" )(" VERSION" , project.cmake_version ).endl ();
733
733
734
- if (project.project_msvc_runtime != parser::msvc_last) {
735
- comment (" Enable support for MSVC_RUNTIME_LIBRARY" );
736
- cmd (" cmake_policy" )(" SET" , " CMP0091" , " NEW" );
737
-
738
- switch (project.project_msvc_runtime ) {
739
- case parser::msvc_dynamic:
740
- cmd (" set" )(" CMAKE_MSVC_RUNTIME_LIBRARY" , " MultiThreaded$<$<CONFIG:Debug>:Debug>DLL" );
741
- break ;
742
- case parser::msvc_static:
743
- cmd (" set" )(" CMAKE_MSVC_RUNTIME_LIBRARY" , " MultiThreaded$<$<CONFIG:Debug>:Debug>" );
744
- break ;
745
- default :
746
- break ;
747
- }
748
- endl ();
749
- }
750
-
751
734
// clang-format on
752
735
if (!project.allow_in_tree ) {
753
736
// clang-format off
@@ -778,6 +761,26 @@ void generate_cmake(const char *path, const parser::Project *parent_project) {
778
761
cmd (" endif" )().endl ();
779
762
// clang-format on
780
763
764
+ if (project.project_msvc_runtime != parser::msvc_last) {
765
+ comment (" Enable support for MSVC_RUNTIME_LIBRARY" );
766
+ cmd (" cmake_policy" )(" SET" , " CMP0091" , " NEW" );
767
+
768
+ // clang-format off
769
+ cmd (" if" )(" NOT" , " DEFINED" , " CMAKE_MSVC_RUNTIME_LIBRARY" );
770
+ switch (project.project_msvc_runtime ) {
771
+ case parser::msvc_dynamic:
772
+ cmd (" set" )(" CMAKE_MSVC_RUNTIME_LIBRARY" , " MultiThreaded$<$<CONFIG:Debug>:Debug>DLL" );
773
+ break ;
774
+ case parser::msvc_static:
775
+ cmd (" set" )(" CMAKE_MSVC_RUNTIME_LIBRARY" , " MultiThreaded$<$<CONFIG:Debug>:Debug>" );
776
+ break ;
777
+ default :
778
+ break ;
779
+ }
780
+ cmd (" endif" )().endl ();
781
+ // clang-format on
782
+ }
783
+
781
784
fs::path cmkr_include (project.cmkr_include );
782
785
if (!project.cmkr_include .empty () && !fs::exists (cmkr_include) && cmkr_include.is_relative ()) {
783
786
create_file (cmkr_include, resources::cmkr);
0 commit comments