add optional YCM support for MacOS/Linux