#56959 closed enhancement (wontfix)
librsvg: building requires rust compiler
Reported by: | 07151129 | Owned by: | dbevans (David B. Evans) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | pixilla (Bradley Giesbrecht), Dave-Allured (Dave Allured) | |
Port: | librsvg |
Description
Newer versions of librsvg (≥ 2.40.0) require rust compiler and cargo for building. This is a rather large dependency including llvm which is not always desirable to have installed, especially if it is not needed otherwise. Many ports depend on librsvg and thus suddenly depend on rust/cargo/llvm for building, even if there is no rust code in their codebase.
Because the newer versions of librsvg are ABI-compatible with the old version that only required a working C compiler, it would be nice if the old version was provided as a variant.
Change History (7)
comment:1 Changed 6 years ago by jmroot (Joshua Root)
Cc: | pixilla added; pixilla@… removed |
---|---|
Owner: | changed from devans@… to dbevans |
comment:2 Changed 6 years ago by Dave-Allured (Dave Allured)
Cc: | Dave-Allured added |
---|
comment:3 Changed 6 years ago by mf2k (Frank Schima)
Type: | defect → enhancement |
---|
comment:4 Changed 6 years ago by dbevans (David B. Evans)
As you say current versions of librsvg contain increasing amounts of rust code and there's not much chance the upstream developers are going to give it up. There are significant enhancements in the last few versions and so if we want to keep librsvg up-to-date with other GNOME ports then we need to learn to love rust and cargo. There appears momentum for other GNOME ports to use rust the future so ignoring rust is probably not a good strategy.
Note that rust is currently not building on 10.10 and earlier so I librsvg already falls back to 2.40.20 on those platforms. However, I'm not really in favor of doing that where rust does build.
I'm going to close this as won't fix but there nothing to stop you checking out a copy of the old 2.40.20 version from git and building it yourself if you really can't stomach rust and its dependencies.
comment:5 Changed 6 years ago by dbevans (David B. Evans)
Resolution: | → wontfix |
---|---|
Status: | assigned → closed |
comment:6 Changed 6 years ago by 07151129
Surely we can "love rust and cargo" without arbitrarily forcing users to install it? Many programs that have absolutely nothing to do with GNOME (such as ffmpeg) now have this heavyweight dependency, even if otherwise they don't need rust at all. Building and installing the old version myself defeats the purpose of using the remote ports tree. After all, for some ports there are variants for older versions (e.g. ld64); I don't see why having an older version fallback would force you to ignore rust.
comment:7 Changed 17 months ago by barracuda156
Yeah, this is an insane demand to build a simple graphic library. Very poorly-thought-through decision of librsvg upstream.
We generally don't allow variants to change the installed version. What is normally done is to create a sub-port with the older version.