Suivant: , Précédent: , Monter: Consignes d’empaquetage   [Table des matières][Index]


22.4.6 Paquets Emacs

Les paquets Emacs devraient plutôt utiliser le système de construction Emacs (voir emacs-build-system), pour l’uniformité et les bénéfices apportés par ses phases de construction, comme la génération automatique du fichier autoloads et la compilation des sources. Comme il n’y a pas de manière standardisée de lancer une suite de tests pour les paquets Emacs, les tests sont désactivés par défaut. Lorsqu’une suite de tests est disponible, elle devrait être activée en mettant l’argument #:tests? à #true. Par défaut, la commande pour lancer les tests est make check, mais on peut spécifier une autre commande via l’argument #:test-command. L’argument #:test-command attend une liste contenant une commande et ses arguments, à invoquer pendant la phase check.

Les dépendances Elisp des paquets Emacs sont en général fournie dans propagated-inputs lorsqu’elles sont requises à l’exécution. Comme pour les autres paquets, les dépendances de test et de construction doivent être spécifiées dans native-inputs.

Les paquets Emacs dépendent parfois de répertoires de ressources qui devraient être installés avec les fichiers Elisp. L’argument #:include peut être utilisé pour cela, en spécifiant une liste d’expression régulières. La bonne pratique pour utiliser l’argument #:include est d’étendre plutôt que de remplacer sa valeur par défaut (accessible via la variable %default-include). Par exemple, un paquet d’extension yasnippet inclut en général un répertoire snippets, qui pourrait être copié vers le répertoire d’installation avec :

#:include (cons "^snippets/" %default-include)

Lorsque vous rencontrez des problèmes, il est utile de vérifier la présence de l’en-tête d’extension Package-Requires dans le fichier source principal du paquet, et si les dépendances et leurs versions qui y sont listées sont satisfaites.


Suivant: Modules Python, Précédent: Substituts ou Phases, Monter: Consignes d’empaquetage   [Table des matières][Index]