added ifdef support/system recognition