https://bugs.kde.org/show_bug.cgi?id=482745

            Bug ID: 482745
           Summary: Support Ninja Multi-Config CMake generator
    Classification: Applications
           Product: kdevelop
           Version: 5.7.211203
          Platform: Other
                OS: All
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Build tools: CMake
          Assignee: kdevelop-bugs-n...@kde.org
          Reporter: krizdjali+kdeb...@gmail.com
  Target Milestone: ---

SUMMARY
CMake has supported the Ninja Multi-Config generator for quite a long time now.
It's documented here
https://cmake.org/cmake/help/latest/generator/Ninja%20Multi-Config.html. Like
the plain Ninja generator, it creates files for ninja, but instead of setting
up just one configuration like the Makefiles generators, it can set up several
like the Visual Studio or Xcode generators. As well as making it quicker and
more convenient to switch between configurations, it has other advantages like
only downloading a single shared copy of dependencies acquired with
FetchContent.

Right now (at least using the version available for Ubuntu Jammy via apt or the
newer one via snap), if you point it at an existing project using Ninja
Multi-Config, it'll behave as if it's working, but if you try and build the
project, instead of letting you pick the configuration, it'll just build
whichever configuration(s) are set as the default via
`CMAKE_DEFAULT_BUILD_TYPE`/`CMAKE_DEFAULT_CONFIGS`, and you need to change
these variables and reconfigure. That means it's not totally unusable right
now, but it could work better - right now KDE's being upstaged by both Visual
Studio and VS Code on this front, but obviously VS is Windows-only and VS Code
is a pain for C++ on Linux as its GDB in integration is ridiculously slow and
frequently freezes, so neither are a viable alternative.

*Note: the form seems to be set up for bug reports rather than feature
requests, so I apologise if I've posted this to the wrong place.*

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to