I have found a problem in CW 3.1 in combination with the S60_3rd_MR sdk.
CW puts *.rsg file inside the BUILD folder: %EPOCROOT%Epoc32\Build\<project path and stuff>\WINSCW.
But when the underlying .rss file is changed, the .rsg file in the BUILD folder is not changed. This is in itself not a problem, because the rsg file is supposed to be included from epoc32\include, that's why it is inside <> and not inside "" when the rsg file is included. The rsg file in epoc32\include is changed, btw.
The same problem happens with mbg files.
The defect is that the BUILD folder is also put by CW in the user paths. Look at Edit > WINSCD UDEB Settings, Target - Access paths. I.e it is as if one has put the BUILD folder in a USERINCLUDE in the mmp file. What this means is this: CW is now including the rsg file from the BUILD path instead of from epoc32\include, even though the code states clearly that the rgs file must be included from one of the systeminclude paths (because it is between <>).
Building from the command line fixes this, but then, building from the command line doesn't make the CW ide think the project is up to date, the ide wants to compile again. So for each change in an rsg file you must compile twice, once from the command line and once from the IDE.
I would like to see a very quick fix for this. At this moment CW 3.1 cannot be reliably used to build executables, because changes in the resource file are not being taken into account.
Sander van der Wal