All is fine now, except that the CCFLAGS of previous mingw build is restored for the msvc build. I guess this is unavoidable and a "del env.cache" solves the problem anyway.
I implemented load_option=-opt1,opt2 and load_option=opt1,opt2 . The first one means do not load opt1, opt2,, the second one means load only opt1, opt2 etc. load_options=yes/no still works. They are useful only for interactive use though. You see, I solved the problem before you bring it up. :-)
By the way, can I mix "build_dir=msvc" and "mode=release" options?
The answer is maybe since I have not tried. It seems to me that mode=release will give you the right options, and build_dir will override build directory.
Or can I build msvc and mingw in the same directory (release)?
No. The options are different so you will be forced to re-compile both.
As I know nothing about msvc options, I don't really know if optimization are enabled by default for msvc... A message stating so would be welcome.
Now, debug/release mode now have hard-coded options that you can not change. Your CCFLAGS will override default flags. If you are not sure about default options, use optimization='/O3'. Bo