diff options
author | Michael Stapelberg <michael@stapelberg.de> | 2019-07-29 20:57:48 +0200 |
---|---|---|
committer | Michael Stapelberg <michael@stapelberg.de> | 2019-07-29 21:07:40 +0200 |
commit | 23da59920c4c911ee08498eb283b69bdef80fd65 (patch) | |
tree | 59a9a8bac909e243eabdb2c58e48ec8e5c79f566 /i3status.c | |
parent | 40aeb7bc44aa0fc8373acb8b57debb1c285e7009 (diff) |
make pulseaudio an optional dependency, follow best practices
For my thoughts about optional dependencies, see
https://michael.stapelberg.ch/posts/2019-05-23-optional-dependencies/
This commit follows the best practices outlined in that article:
1. The travis config was modified to verify both code paths build and link/don’t
link against pulseaudio.
2. If pulseaudio is missing, the build fails until packagers explicitly pass a
--disable flag. In practice, I think the only situation when this flag should
be set is in source-based linux distributions where users can express
package-level compilation preferences (e.g. Gentoo USE flags).
3. The --version output now reflects the status of the optional dependency.
fixes #359
Diffstat (limited to 'i3status.c')
-rw-r--r-- | i3status.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -565,7 +565,13 @@ int main(int argc, char *argv[]) { return 0; break; case 'v': - printf("i3status " VERSION " © 2008 Michael Stapelberg and contributors\n"); + printf("i3status " VERSION " © 2008 Michael Stapelberg and contributors\n" +#if HAS_PULSEAUDIO + "Built with pulseaudio support\n" +#else + "Built without pulseaudio support\n" +#endif + ); return 0; break; case 0: |