[Moonlight-list] 'make detect' is dead, long live to make

Sebastien Pouliot sebastien.pouliot at gmail.com
Fri Apr 8 15:32:59 EDT 2011


Hello,

A new detect.exe tool has replaced the detect-sc.exe, detect-ssc.exe and
merge.exe tools. If that does not mean anything to you then don't worry
this change should be meaningless too ;-)

Pro
        * there's no need to execute 'make detect' (and re-build)
        anymore when adding/modifying critical code (like new pinvokes);
        
        * it's more likely to work if you're not using the "right" mono
        revision (or have some local changes in there) but that won't
        help if there were manual override changes, i.e. stick to the
        README :-)
        
Cons
        * it takes a bit more time to build since everything needs to be
        re-computed each time [1];
        
        * the removal of the automatic/*.auto.s[s] files makes the
        process is a bit more opaque when something breaks [2]


Sebastien

p.s. moon-unit is happy and I'll be monitoring the bots over the weekend


[1] the build was changed (quite a few times actually ;-) to avoid
'tuning' several times (two 'make tuning' for the circular dependency of
SW/SWB + install + extra moon assemblies) so the extra time is not
really visible (and you should save a few extra, make detect-required
builds too)

[2] You can, at build-time, get more details by running 'detect'
manually using the --a (annotations) option [3]. This will produce
commented *.secattr files, so you'll know (in even more details that
before) why some types/methods got their security attributes. Also you
can still set the "MONO_LOG_LEVEL=warning MONO_LOG_MASK=security"
environment variables to find CoreCLR issues at runtime.

[3] To help debugging the change the --a option is enabled at the moment
(but will likely not stay for default builds)



More information about the Moonlight-list mailing list