Differentiate between two Xcode targets with Swift

In Xcode, go into the build configuration for a target. Find the section called Swift Compiler – Custom Flags, which contains a setting called Other Swift Flags.

Add a command-line flag for the compiler to add a flag, pretty much just like you’d do with the C compiler.

Swift Compiler Flags

Now you’ve got -D Something being passed to the Swift compiler. In your Swift code, you can now do this:

#if Something
    let foo = "bar"
#endif

It looks a lot like the C preprocessor, but unlike C, all code in all conditional sections has to be syntactically correct or the program won’t compile. So, you can set a flag on each target in the build settings and use them in your code.

Leave a Comment