When BOINC for Linux is built with vcpkg, and links all the dependencies statically, gdk-pixbuf cannot load dynamically loaded modules (like SVG loader) during runtime. To fix thism we need to modify gdk-pixbuf in a way that it uses librsvg as a built-in format. However, librsvg internally requires gdk-pixbuf during build stage, that makes a circular dependency. To avoid this, we have to include necessary librsvg symbols into boincmgr binary manually and do some dummy calls to them to force linker to include them into the final binary.
When BOINC for Linux is built with vcpkg, and links all the dependencies statically, gdk-pixbuf cannot load dynamically loaded modules (like SVG loader) during runtime. To fix thism we need to modify gdk-pixbuf in a way that it uses librsvg as a built-in format. However, librsvg internally requires gdk-pixbuf during build stage, that makes a circular dependency. To avoid this, we have to include necessary librsvg symbols into boincmgr binary manually and do some dummy calls to them to force linker to include them into the final binary.
This fixes: #5563.