Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-90237

Enforced compiler flags not consistent between languages/linker types

    XMLWordPrintable

Details

    • ecc2a28cab4652cf21cb8752e136cf90cbe6008b (qt/qtbase/dev)

    Description

      This is a follow-up to issues first discovered and raised in https://codereview.qt-project.org/c/qt/qtbase/+/329068

      In qtbase/cmake/QtFlagHandlingHelpers.cmake, there are a range of internal functions that manipulate compiler and linker flags. Specifically, they set flags related to optimisation and debugging settings. The following observations were made:

      • qt_internal_get_enabled_languages_for_flag_manipulation() only adds C, CXX, OBJC and OBJCXX languages. This means flags for ASM are not updated and end up being inconsistent with the specified languages.
      • In qt_internal_set_up_config_optimizations_like_in_qmake(), for MSVC the linker flags are adjusted to remove any /INCREMENTAL* flags for all target link types, but when adding back the relevant flag for debug builds, they are only added for EXE and SHARED. The intention was to skip STATIC, but it also inadvertently skips MODULE.

      Attachments

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

        Activity

          People

            crscott Craig Scott
            crscott Craig Scott
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes