File tree Expand file tree Collapse file tree 1 file changed +14
-1
lines changed Expand file tree Collapse file tree 1 file changed +14
-1
lines changed Original file line number Diff line number Diff line change @@ -523,14 +523,27 @@ def mypycify(
523523 # This flag is needed for gcc but does not exist on clang.
524524 cflags += ['-Wno-unused-but-set-variable' ]
525525 elif compiler .compiler_type == 'msvc' :
526- if opt_level == '3' :
526+ # msvc doesn't have levels, '/O2' is 'on' and '/Od' is disable
527+ if opt_level == '0' :
528+ opt_level = 'd'
529+ elif opt_level in ('1' , '2' , '3' ):
527530 opt_level = '2'
531+ if debug_level == '0' :
532+ cflags += ['/DEBUG:NONE' ]
533+ elif debug_level == '1' :
534+ cflags += ['/DEBUG:FASTLINK' ]
535+ elif debug_level in ('2' , '3' ):
536+ cflags += [
537+ '/DEBUG:FULL' ,
538+ '/Z7' , # full symbolic debugging information
539+ ]
528540 cflags += [
529541 '/O{}' .format (opt_level ),
530542 '/wd4102' , # unreferenced label
531543 '/wd4101' , # unreferenced local variable
532544 '/wd4146' , # negating unsigned int
533545 ]
546+
534547 if multi_file :
535548 # Disable whole program optimization in multi-file mode so
536549 # that we actually get the compilation speed and memory
You can’t perform that action at this time.
0 commit comments