Compiler Conditionals
The Haxe compiler provides a robust solution for cross-platform development where you can use operators to define what targets receive your code. This functionality is invaluable for HaxeFlixel since we are targeting native mobile / desktop and web targets, all with different capabilities.
Conditional Compilation in the Haxe Manual
A basic example may include logic like this:
#if desktop
// desktop only code
#elseif mobile
// mobile only code
#end
HAXE
Conditionals relevant to your HaxeFlixel games may include:
mobile,desktop,webios,android,windows,mac,linux,html5flash,cpp,neko,js
Multiple targets can be used together:
#if (mac || linux || android)
// code specific for these platforms
#end
HAXE
To define your own it is as easy as adding to your Project.xml:
<haxedef name="magic" />
XML
Now this will work:
#if magic
// Create a dragon
#end
HAXE
Since Haxe lets you use some logic with the conditionals you can enable something just for mobile, as in:
<haxedef name="magic" if="mobile"/>
XML