Differences between C targets using CMake

I wanted to work on a project that would do some 3D related stuff, and probably require some tight performance, so I figured I'd work in C, as I've worked a lot with C in the past, and am familiar with CMake. I was looking at the example, which has two targets, one for the simulator and one for the device. When looking at the example projects, I noticed that the "3D library" example doesn't use all of the source files for both targets. When is a file needed for one target and not the other?

The additional code in the 3D Library example is only included in the non-arm version to make it easier to edit in Xcode (or another other IDE). If you use CMake to generate the IDE project file it will also include those files in the source code browser. Does that make sense?

So the additional code isn't needed for either version, it's just added in so that it can be viewed in the IDE while working on the project?

Yup, exactly right. Headers aren't compiled and the Lua is compiled by pdc (not the C compiler).

Makes sense. I was wondering if there was a way to add headers to the project without listing them as source lol. Thanks so much for the explaination!