294955ecff
Rejigger Linux platform detection This change makes some very small improvements to the Linux platform detection logic. In particular, the existing logic did not work on my Archlinux machine since /lib64/ld-linux-x86-64.so.2 isn't a symlink. In that case, the detection logic should have fallen back to the slower `ldd --version` technique, but `read_link` fails outright when its argument isn't a symbolic link. So we tweak the logic to allow it to fail, and if it does, we still try the `ldd --version` approach instead of giving up completely. I also made some cosmetic improvements to the regex matching, as well as ensuring that the regexes are only compiled exactly once.