CMake is a bad example, you can build latest CMake and run it on Debian Jessie. It will work perfectly. CMake is the thing you can build on really old compilers.
Open source is better because if you need the device driver then you can step up to maintain it yourself. It doesn't mean someone else will magically do it for you. I've used devices with very obscure incantations to get some random person's hack to run on Linux that worked natively on Windows.