[Scummvm-devel] RE : Re: RE : Re: Memory/speed loss in scumm engine
Max Horn
max at quendi.de
Thu Apr 3 12:01:20 CEST 2008
Am Do, 3.04.2008, 00:31, schrieb Neil Millstone:
>
[...]
> So, the problem must have been introduced in revision 30473. This is a
> seemingly minor change to the build system. The build system on the DS
> port is odd, having had some hacks to work around some bugs in Devkitpro
> in the past, and my knowledge of makefiles is pretty poor. But looking
> at the diff, I changed all occurances of the following:
>
> .cpp.o:
>
> to:
>
> %.o:%.cpp
>
> And all my problems went away! I really don't know why, but that seems
> to have fixed both the big binary issue and the speed issues.
>
Ahhh, that explains a lot :). The reason is the precedence of "catch all"
rules like the above. The modern pattern based "%.o: %.cpp" has a higher
priority than the old style ".cpp.o". As a result, after the change to the
base build system, the custom DS build rule was not invoked anymore.
The fact that the DS ports uses a hacked up compile rule which differs
from our usual one is likely to cause more problems in the future. it
would be helpful to all, I guess, if we could find a way to get rid of it.
But right now, I see none :/
Oh, and it still compiles every source file twice. Is that really
necessary? One of the patches I sent to Neil long ago merged the two lines
(it's trivial to do), so that you got both the advanced dependency
tracking *and* the filter for the optimization settings.
Cheers,
Max
More information about the Scummvm-devel
mailing list