Sur cette page

qt_policy

Modifier le comportement par défaut de l'API CMake de Qt.

La commande est définie dans le composant Core du paquetage Qt6, qui peut être chargé comme suit :

find_package(Qt6 REQUIRED COMPONENTS Core)

Cette commande a été introduite dans Qt 6.5.

Synopsis

qt_policy(
    [SET <policy_name> behavior]
    [GET <policy_name> <variable>]
)

Si les commandes sans version sont désactivées, utilisez qt6_policy() à la place. Elle prend en charge le même ensemble d'arguments que cette commande.

Description de la commande

Cette commande a deux modes :

  • Lorsque le mot-clé SET est utilisé, cette commande peut être utilisée pour accepter les changements de comportement dans l'API CMake de Qt, ou pour les refuser explicitement.
  • Lorsque le mot-clé GET est utilisé, <variable> est défini comme le comportement actuel de la politique, c'est-à-dire OLD ou NEW.

<policy_name> doit être le nom d'une des politiques Qt CMake. Les noms de politiques ont la forme QTP<NNNN> où <NNNN> est un entier spécifiant l'index de la politique. L'utilisation d'un nom de politique non valide entraîne une erreur.

Le code prenant en charge les anciennes versions de Qt XML peut vérifier l'existence d'une politique en vérifiant la valeur de la variable QT_KNOWN_POLICY_<policy_name> avant d'obtenir la valeur de <policy_name> ou de définir son comportement.

if(QT_KNOWN_POLICY_<policy_name>)
    qt_policy(SET <policy_name> NEW)
endif()

Vous pouvez attribuer à behavior l'une des options suivantes :

  • NEW pour accepter le nouveau comportement
  • OLD pour refuser explicitement le nouveau comportement

Remarque : le comportement OLD d'une politique est obsolète et pourrait être supprimé à l'avenir.

Politiques disponibles

QTP0001

':/qt/qml/' est le préfixe de ressource par défaut pour les modules QML

QTP0002

Les propriétés de cible qui spécifient des chemins spécifiques à Android peuvent contenir des expressions de générateur.

QTP0003

Tenir compte de la valeur BUILD_SHARED_LIBS lors de la création de bibliothèques Qt.

QTP0004

Les répertoires supplémentaires contenant des fichiers QML dans un module QML nécessitent des fichiers qmldir supplémentaires

QTP0005

Les mots-clés de dépendance Qt_add_qml_module acceptent les cibles CMake.

Voir aussi qt_standard_project_setup.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.