Added conditional macros to detect the operating system