[Qbs] How to download and uncompress files with Qbs directly?
Oswald Buddenhagen
oswald.buddenhagen at gmx.de
Mon Aug 5 12:21:46 CEST 2019
On Mon, Aug 05, 2019 at 08:25:35AM +0200, Richard Weickelt wrote:
> > Does Qbs support downloading and uncompressing files directly?
>
> Not directly, because it is a build automation tool and not a package
> manager.
>
that's not an argument at all. "support" often enough means "call
appropriate tools".
> > For example, I need to use Eigen 3.3.7
> > <http://bitbucket.org/eigen/eigen/get/3.3.7.tar.bz2> in my project, and
> > install it in the build folders of my projects. How to achieve my goal?
>
> If you have a pkg-config file for Your library, then Qbs can generate a
> module on-the-fly. See https://doc.qt.io/qbs/module-providers.html
>
already locally present packages are not the task at hand.
> Another automated and platform-independent library interface would be Conan
> or vpgkg. Have you searched for packages on bintray?
>
these are some of the services that would need wrapping.
> If all that is not an option, then you might implement your own download &
> install solution.
>
i would recommend that "your own" be something contributable upstream,
to get https://bugreports.qt.io/browse/QBS-62 resolved.
note that a key feature for configuration management is the ability to
pin the sources and versions of modules, which is why the "grown-ups"
from the java world (at least maven and bazel, and i presume also
gradle) support it. conversely, linux distributors *hate* it - they want
abstract package names and ranges of acceptable versions, based on
binary compatibility promises. a good implementation would permit strict
and relaxed operation with the same project files, and per-module
overrides from the outside to support selective unbundling (see also
QBS-61).
> You could potentially abuse Qbs probes for this.
>
i suspect the module provider framework would be a better basis.
More information about the Qbs
mailing list