Multiplatform with macros