summaryrefslogtreecommitdiff
path: root/i3status.c
diff options
context:
space:
mode:
authorMichael Stapelberg <michael@stapelberg.de>2019-07-29 20:57:48 +0200
committerMichael Stapelberg <michael@stapelberg.de>2019-07-29 21:07:40 +0200
commit23da59920c4c911ee08498eb283b69bdef80fd65 (patch)
tree59a9a8bac909e243eabdb2c58e48ec8e5c79f566 /i3status.c
parent40aeb7bc44aa0fc8373acb8b57debb1c285e7009 (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.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/i3status.c b/i3status.c
index 0898da3..1ab8400 100644
--- a/i3status.c
+++ b/i3status.c
@@ -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: