CHANGELOG: - Signal handling has been improved. Instead of signalfd, the traditional signal() is now used. This not only more reliable, but also more portable. As such, the compile time option to disable signal handling as been removed. - When wlclock crashes, it will now print a backtrace when compiled on Linux with glibc. - The layer surface configuration is now only set once, during surface creation. This is a workaround for broken compositors sending configure events for every layer surface configuration update, which could result in an endless loop. Also this is more idiomatic, so this is a nice improvement regardless. - A bug in the Wayland flushing code in the event loop that could lead to wlclock being stuck in an endless loop has been fixed. Thanks Isaac for noticing, I had copy-pasted that code to a lot of projects and in one of them the error condition actually happened. - Command flag handling for non-glibc systems has been fixed. Thanks Nulo for reporting. - A lot of code cleanup has happened. I initially wrote this project when I knew very little about Wayland and, in fact, organizing a project of this "large".