Comment ajouter des cibles dans un qmake Makefile?
Aujourd'hui quand je joue avec Qt j'utilise qmake pour générer le Makefile,
et cela fonctionne très bien.
Cependant parfois, j'ai envie d'ajouter plus de choses pour le Makefile,
sans avoir à modifier le Makefile.
Disons que nous sommes à côté du code source ont une Doxygen répertoire,
et là, j'ai besoin d'exécuter certains doxygen commandes pour générer la documentation.
Donc ce serait bien d'avoir cela comme une cible dans le Makefile principal.
Mais en tant que par défaut qmake ne comprends pas ce genre de trucs supplémentaires.
Si je peux ajouter quelque chose à dire qmake pour inclure un secondaire Makefile dans le "doxygen" dir,
ou peut-être ajouter "extra cibles" directement dans le qmake config?
Merci
Johan
Peut-être quelque chose comme:
OriginalL'auteur Johan | 2010-09-23
Vous devez vous connecter pour publier un commentaire.
Je suis en train de travailler cette même question, et pour l'instant j'ai eu un succès limité à l'aide de la QMAKE_EXTRA_TARGETS variable pour construire la documentation de la cible comme suit:
où Doxyfile a la base doxygen paramètres de configuration de moins le symbole d'ENTRÉE qui je suis ajoutant via des "echo" pour n'inclure que les insatisfaits Makefile dépendances $(SOURCES).
Cette approche semble fonctionner pour qu'il ne recrée la documentation pour les fichiers source qui ont changé qui est bon, mais j'ai rencontré un autre problème dans mon qmake fichier de projet est construit avec la debug_and_release option de configuration de sorte qu'il génère Makefile Makefile.Le débogage et le Makefile.La publication, mais les SOURCES ne sont définies que dans le debug et release Makefiles m'obligeant à me explicitement faire un
make -f Makefile.Debug docs
au lieu de la plus simple et intuitifmake docs
pour construire la documentation.Personne n'a jamais abordé le problème de cette QMAKE_EXTRA_TARGETS point de vue avant?
OriginalL'auteur
C'est une vieille question, mais je vais ajouter une réponse de toute façon.
Bien qu'il semble y avoir aucun soutien général pour les règles personnalisées en qmake, il y a une façon simple de le faire, en supposant que GNU make. Il suffit de créer un fichier appelé makefile (tout en minuscules):
où les deux dernières lignes sont mes règle personnalisée.
GNU make va utiliser le makefile, pas de Makefile, si les deux existent.
BTW, la nouvelle règle permet de résoudre le problème avec "make -j8 nettoyer tous". Cette commande va commencer à faire tous avant qu'il ait fini de faire nettoyer. La ré règles de garanties de séquentialité.
OriginalL'auteur
Que sur les sans-papiers options mentionnées ici http://paulf.free.fr/undocumented_qmake.html
En vertu de l'Ajout d'un doxygen cible les éléments suivants peuvent être trouvés:
Cela pourrait être une solution ?
OriginalL'auteur
Ce Qt post de blog répond à la question de QMAKE_EXTRA_COMPILERS et QMAKE_EXTRA_TARGETS assez définitivement.
Très bientôt, nous allons être introduit à QBS.. le nouveau Qt Construire Suite à venir à partir de Digia et de l'intervalle Qt de la communauté.. j'espère que c'est vraiment bien pensé (et bien documenté, d'ailleurs).
OriginalL'auteur