Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt Creator and other tools
  4. cmake tests and libs separate view in qt creator
Forum Updated to NodeBB v4.3 + New Features

cmake tests and libs separate view in qt creator

Scheduled Pinned Locked Moved Unsolved Qt Creator and other tools
21 Posts 4 Posters 2.1k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Online
    C Online
    Christian Ehrlicher
    Lifetime Qt Champion
    wrote on 16 Jul 2024, 07:38 last edited by
    #8

    I don't see what add_custom_target should have to do with how QtCreator is showing the targets... You have to wait until QtCreator supports the SOURCES property.

    Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
    Visit the Qt Academy at https://academy.qt.io/catalog

    S 1 Reply Last reply 16 Jul 2024, 07:44
    0
    • C Christian Ehrlicher
      16 Jul 2024, 07:38

      I don't see what add_custom_target should have to do with how QtCreator is showing the targets... You have to wait until QtCreator supports the SOURCES property.

      S Offline
      S Offline
      Sandon
      wrote on 16 Jul 2024, 07:44 last edited by Sandon
      #9

      @Christian-Ehrlicher Well, you'll never know. Many times there are tricks to make things work.
      I was also thinking to open two projects, one for the libraries and another for the tests, but again, it does not feel like the right approach.

      It is really disappointing not to have this simple feature.

      C 1 Reply Last reply 16 Jul 2024, 07:46
      0
      • S Sandon
        16 Jul 2024, 07:44

        @Christian-Ehrlicher Well, you'll never know. Many times there are tricks to make things work.
        I was also thinking to open two projects, one for the libraries and another for the tests, but again, it does not feel like the right approach.

        It is really disappointing not to have this simple feature.

        C Online
        C Online
        Christian Ehrlicher
        Lifetime Qt Champion
        wrote on 16 Jul 2024, 07:46 last edited by
        #10

        @Sandon said in cmake tests and libs separate view in qt creator:

        this simple feature.

        Feel free to provide a patch when you are so confident that this is a simple task. QtCreator is open source.

        Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
        Visit the Qt Academy at https://academy.qt.io/catalog

        S 1 Reply Last reply 16 Jul 2024, 07:54
        0
        • C Christian Ehrlicher
          16 Jul 2024, 07:46

          @Sandon said in cmake tests and libs separate view in qt creator:

          this simple feature.

          Feel free to provide a patch when you are so confident that this is a simple task. QtCreator is open source.

          S Offline
          S Offline
          Sandon
          wrote on 16 Jul 2024, 07:54 last edited by
          #11

          @Christian-Ehrlicher I wish had more time, but yes.. good reply

          1 Reply Last reply
          0
          • C Offline
            C Offline
            cristian-adam
            wrote on 16 Jul 2024, 13:26 last edited by
            #12

            CMake already has the SOURCES property, you just need to use cmake generator expressions to use it.

            Take this example:

            cmake_minimum_required(VERSION 3.16)
            
            project(WidgetsApp VERSION 0.1 LANGUAGES CXX)
            
            add_subdirectory(app)
            add_subdirectory(tests)
            
            add_custom_target(MyApp
                SOURCES $<LIST:TRANSFORM,$<LIST:FILTER,$<TARGET_PROPERTY:WidgetsApp,SOURCES>,EXCLUDE,.*_autogen/.*>,PREPEND,app/>
            )
            

            global_custom_targets.png

            C 1 Reply Last reply 16 Jul 2024, 14:29
            3
            • C cristian-adam
              16 Jul 2024, 13:26

              CMake already has the SOURCES property, you just need to use cmake generator expressions to use it.

              Take this example:

              cmake_minimum_required(VERSION 3.16)
              
              project(WidgetsApp VERSION 0.1 LANGUAGES CXX)
              
              add_subdirectory(app)
              add_subdirectory(tests)
              
              add_custom_target(MyApp
                  SOURCES $<LIST:TRANSFORM,$<LIST:FILTER,$<TARGET_PROPERTY:WidgetsApp,SOURCES>,EXCLUDE,.*_autogen/.*>,PREPEND,app/>
              )
              

              global_custom_targets.png

              C Online
              C Online
              Christian Ehrlicher
              Lifetime Qt Champion
              wrote on 16 Jul 2024, 14:29 last edited by
              #13

              @cristian-adam this looks more like a hack to me... 🙂

              Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
              Visit the Qt Academy at https://academy.qt.io/catalog

              1 Reply Last reply
              0
              • C Online
                C Online
                Christian Ehrlicher
                Lifetime Qt Champion
                wrote on 16 Jul 2024, 14:36 last edited by Christian Ehrlicher
                #14

                I just saw that I mixed SOURCES And FOLDERS properties - I meant FOLDERS, sorry for the confusion.
                https://cmake.org/cmake/help/latest/prop_tgt/FOLDER.html

                Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                Visit the Qt Academy at https://academy.qt.io/catalog

                1 Reply Last reply
                1
                • S Offline
                  S Offline
                  Sandon
                  wrote on 16 Jul 2024, 14:53 last edited by Sandon
                  #15

                  @Christian-Ehrlicher thank you very much! This is quite new to me, so it will take time to understand and rewrite it in a way that works for what I need.. but it could be the "hack/trick" I was looking for.

                  Edit: after reading it carefully, I am still not sure if this applies to my case. Going to read the documentation. Basically I will need a way to read specific CMakeFiles and associate them to a specific target.

                  1 Reply Last reply
                  0
                  • C Offline
                    C Offline
                    cristian-adam
                    wrote on 16 Jul 2024, 15:51 last edited by
                    #16

                    Regarding FOLDER, yes, I'll have to fix https://bugreports.qt.io/browse/QTCREATORBUG-28873 first.

                    Currently Qt Creator is abusing FOLDER to make a target runnable. See https://doc.qt.io/qtcreator/creator-run-settings.html#cmake-run-targets

                    Well, actually, I could keep the qtc_runnable special handling, and have original intent. One wouldn't be able to have both.

                    1 Reply Last reply
                    1
                    • S Offline
                      S Offline
                      Sandon
                      wrote on 17 Jul 2024, 07:56 last edited by
                      #17

                      @cristian-adam thank you for your reply.

                      Do you think is it possible to achieve what I asked with current Qt creator capabilities?

                      C 1 Reply Last reply 18 Jul 2024, 17:43
                      0
                      • S Sandon
                        17 Jul 2024, 07:56

                        @cristian-adam thank you for your reply.

                        Do you think is it possible to achieve what I asked with current Qt creator capabilities?

                        C Offline
                        C Offline
                        cristian-adam
                        wrote on 18 Jul 2024, 17:43 last edited by
                        #18

                        @Sandon said in cmake tests and libs separate view in qt creator:

                        @cristian-adam thank you for your reply.

                        Do you think is it possible to achieve what I asked with current Qt creator capabilities?

                        Nope. I have a fix for https://bugreports.qt.io/browse/QTCREATORBUG-28873, you can take an artifact from https://github.com/cristianadam/qt-creator/actions/runs/9979288965 and try it out.

                        After the code review is done, you can have a Qt Creator 15 snapshot from https://download.qt.io/development_releases/qtcreator/ when they are available.

                        1 Reply Last reply
                        0
                        • C Offline
                          C Offline
                          cristian-adam
                          wrote on 18 Jul 2024, 17:44 last edited by
                          #19

                          Alternatively you can fork Qt Creator on github, apply the patch from https://codereview.qt-project.org/c/qt-creator/qt-creator/+/576805 and push a release tag on github.

                          This will get you a Qt Creator 14 release with the patch in.

                          1 Reply Last reply
                          0
                          • C Offline
                            C Offline
                            cristian-adam
                            wrote on 18 Jul 2024, 17:46 last edited by
                            #20

                            Qt Creator is open source, Qt Creator is written in C++, and you don't have to do much in order to get a build on GitHub.

                            1 Reply Last reply
                            0
                            • S Offline
                              S Offline
                              Sandon
                              wrote on 19 Jul 2024, 07:00 last edited by
                              #21

                              @cristian-adam that's awesome mate, great job. I look forward to try it out. Thanks again!

                              1 Reply Last reply
                              0

                              17/21

                              17 Jul 2024, 07:56

                              • Login

                              • Login or register to search.
                              17 out of 21
                              • First post
                                17/21
                                Last post
                              0
                              • Categories
                              • Recent
                              • Tags
                              • Popular
                              • Users
                              • Groups
                              • Search
                              • Get Qt Extensions
                              • Unsolved