clang -c -g -arch x86_64h -arch x86_64 -arch i386 fat-test.c
libtool -static -o libfat-test.a fat-test.o
- To reduce the size of the fat .o:
+ to generate a dylib instead:
+ clang -arch ... -arch ... -arch ... -dynamiclib fat-test.o -o fat-test.dylib
+
+ To reduce the size of the fat binary:
lipo -thin i386 -o fat-test.i386.o fat-test.o
lipo -thin x86_64 -o fat-test.x86_64.o fat-test.o
lipo -thin x86_64h -o fat-test.x86_64h.o fat-test.o
int x86_64h_var;
#elif defined(__x86_64__)
int x86_64_var;
-#else
+#elif defined(__i386__)
int i386_var;
+#elif defined(__ARM_ARCH_7S__)
+int armv7s_var;
+#elif defined(__ARM_ARCH_7A__)
+int armv7_var;
+#elif defined(__ARM64_ARCH_8__)
+int arm64_var;
+#else
+#error "Unknown architecture"
#endif