Created
December 13, 2012 10:11
-
-
Save kripton/4275466 to your computer and use it in GitHub Desktop.
Thoughts about dependencies
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
All functionlities of krad are enabled by default | |
Some of them (GUI (station manager), xmms2, jack, wayland, x11, some codecs) can be disabled during | |
configuration | |
To disable, we use either "--without-FUNCTION" or "--disable-FUNCTION" (I don't care which :) | |
The build system will fail if a function has not been disabled but the dependency is missing | |
(just like today). There shall be no automagic like "If dependency is found on the system, | |
feature "xyz" will be silently enabled, otherwise it will be silently disabled" | |
Instead of having to install the dep, there's another option now: Disable the functionality | |
So there's no change in the current behavior: You run "./waf configure" w/o options: you get | |
everything compiled in or an error if a dependency is missing | |
The user will be notified (entry in logfile) if a needed functionality was disabled at build-time | |
Example: "krad_radio sysname input something" w/o jack-support will print "Feature jack was | |
disabled at build time. Please rebuild without disabling support for jack" (or s.th. like that) | |
the current options "--x11" and "--wayland" will have to be changed to "--without-x11" and | |
"--without-wayland" and their logic inverted (they activate a default-disabled functionality) | |
My priority of things to be made optional (will be different to oneman's view ;): | |
- gtk+:3 DONE: https://github.com/krad-radio/krad_radio/pull/10 | |
- the mentioned wayland/x11-thingy (the are optional now) DONE: https://github.com/krad-radio/krad_radio/pull/11 | |
- xmms2 | |
- jack | |
- codecs like opus, vorbis, theora, vp8, flac and such (though personally I wouldn't ever disable | |
one of these) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment