Disable rust feature option by default

The only requirement for the rust plugins is that a rust toolchain be
present on the system. This is problematic:

1. This means gst-build on Windows is broken by default if you have
   a Rust toolchain, since glib can't be used uninstalled
2. No output is printed on Windows at all while the rust plugins are
   being built. `custom_target()`'s `console:` keyword argument seems
   to be broken on some Windows shells.
3. Even on Linux/macOS having this enabled by default is problematic
   since it more than doubles the total build time.
4. The biggest issue with having it enabled by default is that it does
   not dependency tracking, so we always run `cargo`, which might
   update crates. This increases friction when you're working on
   unrelated code.
This commit is contained in:
Nirbheek Chauhan 2020-03-02 11:05:41 +05:30
parent c67034c529
commit 7f231c2d8a

View file

@ -11,7 +11,7 @@ option('vaapi', type : 'feature', value : 'auto')
option('sharp', type : 'feature', value : 'disabled') option('sharp', type : 'feature', value : 'disabled')
option('custom_subprojects', type : 'string', value : '', description : 'Comma-separated project names') option('custom_subprojects', type : 'string', value : '', description : 'Comma-separated project names')
option('gst-examples', type : 'feature', value : 'auto', description : 'Build gst-examples') option('gst-examples', type : 'feature', value : 'auto', description : 'Build gst-examples')
option('rs', type : 'feature', value : 'auto') option('rs', type : 'feature', value : 'disabled')
# Common options, automatically inherited by subprojects # Common options, automatically inherited by subprojects
option('examples', type : 'feature', value : 'auto', description : 'Build examples') option('examples', type : 'feature', value : 'auto', description : 'Build examples')