Uploaded image for project: 'Coin'
  1. Coin
  2. COIN-601

Allow specifying per-config per-repo configure arguments

XMLWordPrintable

    • Icon: Suggestion Suggestion
    • Resolution: Unresolved
    • Icon: P2: Important P2: Important
    • None
    • None
    • None

      Currently both qmake and cmake configurations take configure arguments that are only passed to qtbase (or qt5 for top-level builds), and then no additional arguments are passed when calling qmake/cmake for other repos like qtsvg, qtdeclarative, etc.

      There should be a way to allow specifying additional flags to pass to qmake / cmake per a combination of platform_config + repository.

      For instance, maybe i need to disable a feature only on MinGW for qtimageformats, or enable a cmake feature on Linux for qtwebengine.

      One way to implement this (poorly) would be to set 2 additional env vars per each repo in qt5.yaml/default.yaml configurations (QT_HOST_IMAGE_FORMATS_CONFIGURE, QT_TARGET_IMAGE_FORMATS_CONFIGURE), and then modify the qtimageformats instructions to use those env vars depending on the configuration that is being built.

      The downside is that each repo's instruction file needs to be manually changed to check for the specifically called env var.
      So qtimageformats instructions need to check for env vars QT_HOST_QTIMAGEFORMATS_CONFIGURE, QT_TARGET_QTIMAGEFORMATS_CONFIGURE, qtwebengine's instruction file would have to check different env vars.
      This makes the instructions unwieldy, it would be better if they can be reused.

      A better approach would be if we can have a new Coin instruction, something like GetRepoNameUpperCase which would return a <FOO> (QTIMAGEFORMATS), and then we could generically build the QT_HOST_QTIMAGEFORMATS_CONFIGURE env var in the same instructions we use for qtbase.

      This way we can set the env vars in qt5.yaml as needed, and there are no requirements for per-repo instructions.

      Perhaps there's also some other better way that I haven't thought of yet, so feel free to enlighten me

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

            tosaario Toni Saario
            alexandru.croitor Alexandru Croitor
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:

                There are no open Gerrit changes