On 18/01/2007 20:55, Bram Moolenaar wrote:
Mike Williams wrote:

Attached is a patch to use VC8 specific optimization options. FTR, VC8 no longer supports the /Gn processor code generation directive, and the makefile now uses link time code generation when not optimizing for space.
Although MS keeps changing the arguments, the new ones mostly get used
again in future versions.  Thus this check:

 + !if "$(_NMAKE_VER)" != "8.00.50727.42"

Should probably check if the version is greater than or smaller than
this specific number.  At least do the comparing with this specific
number once and pass the result to further "if"s.
Proposal #2 - now derives VC version from _NMAKE_VER. Updated a couple of checks for VC4 so the file is a bit more more self documenting.

Thanks, looks much better.

I wonder what "<" actually does.  Is it a textual compare?  Perhaps you
can try out if using ">" or "<" works to avoid these magic build
numbers.  Some people must have different builds (otherwise they
wouldn't include these numbers, right?).

The doc states that strings should be compared with == and != but empirically (at least with VC8 ;-) ) the ordering relational operators seem to work. It is possible they don't in older versions, in which case they would need to be the equality operators only. Perhaps those with VC4/5/6/7 can try out the patch and see if it works or not.

The numbers identify specific versions of VC. I believe early releases (MS's CTP, public betas etc.) have different numbers but I cannot find any reference list to discern a definitive pattern.

HTH

Mike
--
If you're trying to drive me crazy, you're too late!

Reply via email to