You can set the build target to universal in XCode. Not at a Mac, so I'm not sure exactly where you might find that.
You don't need to worry about your endianness until you are persisting data. If you have an 4-byte integer literal 7 in your code the compiler will store it as:
0x00000007 for little-endian (x86)
0x07000000 for big-endian (PPC)
You'll never need to know about this. When you do have to worry is if you write 1000 4-byte integer values to a file on disk. If you will never move such a file between two machines, you still have no problem, it will be written in the native endianness of the system, so when it is read back you have no problem. Where you do have a problem is if this is moved to a system with the other endianness. When it is read back, the values will all be different in memory. So a 4-byte integer 7 written on big-endian, and read on little-endian will be interpreted as 117440512 and vice-versa.
One way around this is to persist data in a relational-database, so you'll have a library that is specific to each system that deals with this for you. There are other ways to handle this. One is to do it yourself, by testing the system endianness, and always storing in one or the other, and converting where necessary. For 4000 bytes, this isn't a big deal. For 3GB of data, this would become very time consuming.
This is not a very fun problem. We moved a lot of legacy Fortran and C from HP-UX on PA-RISC and moved it to Linux on x86 recently. Between the OS changes and the endianness changes this took quite a while. This problem is a good argument for VMs running your code. For example, the JVM is big-endian, but it's big-endian no matter what the endianness is of the host system.
-Lee