2017-01-16 3 views
0

Notre build contient beaucoup de tests exécutés dans le cadre du processus de construction pour s'assurer que rien d'important n'est brisé par les changements de quelqu'un. Ce sont des applications de ligne de commande simples, pas d'interface graphique.Force CMake add_custom_commands à ne pas prendre le focus souris/keybouard sur Mac OS X

Sur Mac OS X, lors de la création à partir de Qt Creator, chacun de ces programmes lance une nouvelle fenêtre de terminal, qui prend en charge les focus. Cela interrompt tout ce que je suis en train de taper pendant que cette compilation est en cours, ce qui est énervant.

Existe-t-il une option dans CMake (ou Mac OS ou Qt Creator) qui force ces commandes personnalisées à ne pas effectuer le focus?

+1

que j'ai jamais vécu cela. CMake s'exécute à partir du terminal, vous devez donc utiliser une configuration différente. Avez-vous essayé d'exécuter cmake directement à partir de Terminal? Vous devrez fournir plus d'informations sur ce que vous faites. –

+0

@Cinder Je construis à partir de Qt Creator, qui appelle 'cmake --build', qui invoque tout simplement' add_custom_command (... POST_BUILD ...) '. – rubenvb

+0

Génère-t-il des terminaux si vous exécutez la construction à partir de Terminal au lieu de QtCreator? –

Répondre

0

Vous pouvez éviter d'ouvrir un terminal pour chaque test à exécuter. Ceci est un paramètre lié au projet dans QtCreator.

  1. Ouvrez votre projet dans QtCreator.
  2. Sélectionnez "Projets" sur le côté gauche
  3. Sélectionnez "Exécuter"
  4. Il y a l'option "Exécuter dans le Terminal"

Screenshot QtCreator

+0

Le problème est que la fonctionnalité Qt Creator's Run n'est pas impliquée. C'est l'outil de compilation (cmake/make) qui exécute les tests, lors d'une compilation. – rubenvb