The first step is to make a compatible toolchain for the platform, usually this is a matter of getting the correct paths and compile flags, and is generally fast when it is a GCC/clang style compiler.
The second step is to get the Haxe C++ standard library code compiling, as well as the rendering/sound/native backend we use to run Lime on each platform. If it is similar to an existing target (for example, it is POSIX and supports OpenGL, dlopen, pthread) then it could be very fast to support, but if it requires custom windowing, or cannot support OpenGL, OpenAL, threads or other features, it takes more work to support the platform.
Third, we also want to support a platform from a tool perspective, "update", "build", "test", "run" should do the appropriate packaging and install processes for the platform and for connecting to a device.
Theoretically if the above is finished, the Haxe API + our API is available on the platform.
Nice! That could definitely be nice for Stage3D compatibility :)