Clean compile deletes the obj folder so everything is rebuilt from scratch....
In standard use you dont need clean compile....
That second statement might be mistaken as covering more than it does.
For example if you compile, say, the u2 release (after patching in u1 & u2 diffs of course) then a week later patch in the u3 release, you do need to do a "
make clean" before you compile again. That's pretty "standard", IMO.
When no need to clean:
-first time compiling in a previously empty folder (aka a folder that doesn't have an objs folder)
-edits only to the *.c files
When need to clean:
-most edits in the makefile or other *.mak files (except for stuff like -werror)
-change the compile optimize level (see prior line)
-any of the *.h files are changed since last compile (for mame + mingw at least)
As a general rule, you need to make clean whenever you make a change that changes the output of some part being compiled that isn't recompiled automatically on a normal make. Knowing when and which these occur is harder, so for many people the rules as above, or a simple "don't make clean unless I get a compile error".
