Still no answer or even a hint?
OK so if I open my project.pbxproj file, I see this:
46C1007916BF786A00F74D54 /* cocos2dx_support */ = {
isa = PBXGroup;
children = (
1A9CE9171765A2C2000E3062 /* CCBProxy.cpp */,
1A9CE9181765A2C2000E3062 /* CCBProxy.h */,
46C1007A16BF786A00F74D54 /* CCLuaBridge.cpp */,
46C1007B16BF786A00F74D54 /* CCLuaBridge.h */,
46C1007C16BF786A00F74D54 /* CCLuaEngine.cpp */,
46C1007D16BF786A00F74D54 /* CCLuaEngine.h */,
46C1007E16BF786A00F74D54 /* CCLuaStack.cpp */,
46C1007F16BF786A00F74D54 /* CCLuaStack.h */,
46C1008016BF786A00F74D54 /* CCLuaValue.cpp */,
46C1008116BF786A00F74D54 /* CCLuaValue.h */,
46C1008216BF786A00F74D54 /* Cocos2dxLuaLoader.cpp */,
46C1008316BF786A00F74D54 /* Cocos2dxLuaLoader.h */,
1A9CE9191765A2C2000E3062 /* Lua_extensions_CCB.cpp */,
1A9CE91A1765A2C2000E3062 /* Lua_extensions_CCB.h */,
1A9CE91B1765A2C2000E3062 /* Lua_web_socket.cpp */,
1A9CE91C1765A2C2000E3062 /* Lua_web_socket.h */,
46C1008416BF786A00F74D54 /* LuaCocos2d.cpp */,
46C1008516BF786A00F74D54 /* LuaCocos2d.h */,
46C1008616BF786A00F74D54 /* platform */,
46C1008A16BF786A00F74D54 /* tolua_fix.c */,
46C1008B16BF786A00F74D54 /* tolua_fix.h */,
);
path = cocos2dx_support;
sourceTree = "";
};
That directory actually includes these files:
CCBProxy.cpp
CCBProxy.h
CCLuaBridge.cpp
CCLuaBridge.h
CCLuaEngine.cpp
CCLuaEngine.h
CCLuaStack.cpp
CCLuaStack.h
CCLuaValue.cpp
CCLuaValue.h
Cocos2dxLuaLoader.cpp
Cocos2dxLuaLoader.h
LuaCocos2d.cpp
LuaCocos2d.h
Lua_extensions_CCB.cpp
Lua_extensions_CCB.h
Lua_web_socket.cpp
Lua_web_socket.h
lua_cocos2dx_extensions_manual.cpp
lua_cocos2dx_extensions_manual.h
platform
tolua_fix.c
tolua_fix.h
So clearly it’s not there in the project.
I am guessing it is because my project was generated for 2.1.5 (under cocos2d-x-2.1.5/projects/myproject) and I merely copied into 2.2 (as cocos2d-x-2.2/projects/myproject) so it doesn’t know about the new files.
However, I would have thought that the way it would work is myproject’s build files would have referenced cocos2dx build files (say under cocos2d-x-2.1.5/cocos2dx) and when I copied my project into the new location it would instead reference an updated cocos2dx build file (say under cocos2d-x-2.2/cocos2dx) because it would be a relative path.
After all, wouldn’t that be the reason the project generator scripts make them under cocos2d-x/projects in the first place, to use a relative path to reference the coco2dx build files? And wouldn’t requiring these projects to be regenerated everything you do a minor version upgrade be crazy?
Can someone please explain to me how the build system works? Because clearly my assumptions are fuzzy.