Uploaded image for project: 'Qbs ("Cubes")'
  1. Qbs ("Cubes")
  2. QBS-1107

add module provider factories

    XMLWordPrintable

Details

    • c2833b1a009bc7c382b30d94109b9b7a25a404a6 (qbs/qbs/master)

    Description

      Here's an interesting feature idea: module provider plugins.

      I wanted to convert the Qt modules to a Probe-based infrastructure (well, I still do), but as previously discussed this would obviously lose the ability to detect arbitrary Qt modules. So I came up with the following idea: add a new plugin class called "module provider". Every time a module is looked up in the search path, the search paths of all loaded module provider plugins are also searched. The plugin can, for example, write its module files to a temporary directory and then return that path. This is essentially the same thing as qbs internally invoking qbs-setup-qt internally every time it is run (perhaps with some caching scheme).

      This would allow us to eliminate the qbs-setup-qt tool and its annoying requirement to be manually.

      Part of removing qbs-setup-qt would still involve rewriting it to be Probe-based, but the automatic module recognition feature could be reintroduced using this module provider plugin concept. Alternatively, we could opt for laziness and do the module provider plugin mechanism first, which would be easier. Then rewriting for Probe-based modules wouldn't necessarily be necessary, although it would be nicer and arguably easier to modify.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              kandeler Christian Kandeler
              jakepetroules Jake Petroules (DO NOT ASSIGN ISSUES)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes