other languages
SVN-BUILDPACKAGE(1) | Manuels des commandes | SVN-BUILDPACKAGE(1) |
NOM¶
svn-buildpackage - construction de paquets Debian à partir d'un dépôt SubversionSYNOPSIS¶
svn-buildpackage
[[
OPTIONS... ] [ OPTIONS de dpkg-buildpackage ]]
DESCRIPTION¶
Construit un paquet Debian à partir d'un dépôt Subversion. Le dépôt du code source doit être au format créé par svn-inject, et ce script doit être exécuté depuis le répertoire de travail (trunk/ paquet). Par défaut, le répertoire de travail est utilisé comme répertoire principal des sources (en supposant que l'intégralité du code source amont soit conservé dans le dépôt). Il est aussi possible de travailler en mode « merge ». Avec cette méthode, seul le répertoire debian (et éventuellement quelques autres fichiers modifiés) sont conservés dans le dépôt. Au moment de la construction, le tronc du dépôt est copié dans le contenu de l'archive source extraite (et peut en écraser certaines parties). Pour choisir ce modèle de travail, il faut configurer la propriété svn mergeWithUpstream sur le répertoire debian.$ svn propset mergeWithUpstream 1 debian
$ svn propset useNativeDist 1 debian
OPTIONS¶
svn-buildpackage accepte les options suivantes en ligne de commande : --svn-builder=COMMANDEIndique la commande de construction à
utiliser à la place de dpkg-buildpackage, par exemple
debuild, pdebuild, etc. Tout paramètre que
svn-buildpackage ne reconnaît pas ( --svn-*)
est considéré comme COMMANDE. Il n'y a pas de différence
entre les paramètres de la ligne de commande et ceux du fichier de
configuration. Ils sont utilisés en même temps.
Attention : les règles de protection de l'interpréteur ne
s'appliquent pas toutes ici, il vaut mieux utiliser des surcouches
(« wrapper ») pour les constructions compliquées.
L'utilisation de cette option peut empêcher --svn-lintian et
--svn-move de fonctionner. Certaines fonctionnalités risquent
d'être désactivées lorsqu'une commande personnalisée est
utilisée car l'emplacement du fichier de sortie n'est pas
prévisible.
Par défaut : utilise dpkg-buildpackage.
--svn-ignore-new | --svn-ignore
Ne s'arrête ni lors de conflits de
version, ni pour des fichiers nouveaux ou modifiés. Pour configurer ce
comportement pour des fichiers en particulier, configurer la
propriété deb:ignoreM à 1 pour ces fichiers. Voir
également la documentation de la propriété svn:ignore
dans le livre « Gestion de versions avec Subversion ».
Par défaut : s'arrête lors de conflits et pour des fichiers
nouveaux ou modifiés.
--svn-dont-clean
N'exécute pas debian/rules clean.
Par défaut : nettoie d'abord.
--svn-no-links
N'utilise pas les liens de fichier mais essaye
d'exporter ou de faire des copies en dur du répertoire de travail. C'est
pratique si le paquet ne se construit pas parce que certains fichiers,
répertoires vides, liens cassés, etc. ne peuvent être
recopiés en mode « copie de lien » par défaut.
Par défaut : utilise des liens quand c'est possible.
--svn-dont-purge
Ne supprime pas le répertoire de
construction une fois la construction terminée.
Par défaut : supprime après une construction réussie.
--svn-reuse
Si possible, réutilise un répertoire
de construction existant lors des constructions suivantes. Le répertoire
de construction n'est pas effacé après la construction, il n'est pas
renommé quand une construction commence et les fichiers sont simplement
copiés dedans. Pratique en mode mergeWithUpstream pour les gros
paquets.
Par défaut : le répertoire de construction est
supprimé.
--svn-rm-prev-dir
Si un répertoire de construction existant
est trouvé, l'efface avant la construction au lieu de le renommer. Si
--svn-reuse est également présente, elle est prioritaire.
Par défaut : renomme l'ancien répertoire avec une extension
« obsolete ».
--svn-export
Exporte simplement le répertoire de
travail, réalise les opérations de fusion nécessaires, puis
termine.
Par défaut : désactivée.
--svn-tag
Construction finale : étiquette,
construit proprement et crée une nouvelle entrée du journal de
modifications.
Par défaut : désactivée.
--svn-tag-only | --svn-only-tag
Ne construit pas le paquet, réalise
seulement la copie d'étiquette.
Par défaut : désactivée.
--svn-retag
Si un répertoire cible existant a
été trouvé lors de l'essai de création de la copie
d'étiquette, supprime d'abord le répertoire cible.
Par défaut : désactivée.
--svn-noautodch
Aucune nouvelle entrée du journal de
modifications Debian n'est ajoutée automatiquement.
Par défaut : une nouvelle entrée UNRELEASED du journal de
modifications est ajoutée à l'aide de dch.
--svn-lintian
Exécute Lintian sur le fichier de
modifications résultant une fois terminé.
Par défaut : désactivée.
--svn-move
Une fois terminé, déplace les
fichiers créés (ceux présents dans .changes) vers le
répertoire parent, par rapport à celui où
svn-buildpackage a été démarré.
Par défaut : désactivée.
--svn-move-to=...
Indique le répertoire cible vers lequel
déplacer les fichiers créés.
Par défaut : désactivée (les fichiers sont laissés
là où la commande de construction les a mis).
--svn-pkg=nomdupaquet
Remplace le nom de paquet détecté.
À utiliser avec précaution car il risque d'être configuré
trop tard pendant le processus (par exemple l'ancienne valeur risque
d'être gardée lors du développement des variables de
l'interpréteur).
Par défaut : désactivée.
--svn-arch=ARCH
Permet d'indiquer l'architecture de
construction (par exemple une construction i386 sur une machine amd64).
Par défaut : désactivée.
--svn-override=variable=valeur,autrevariable=valeur
Remplace toute variable de configuration
détectée automatiquement ou trouvée dans .svn/deb-layout.
Par défaut : désactivée.
--svn-prebuild | --svn-postbuild | --svn-pretag |
--svn-posttag
Commandes (« hook »)
à exécuter avant ou après les appels aux commandes de
construction ou d'étiquetage, par exemple télécharger les
archives sources amont depuis l'archive Debian. Du code d'interpréteur
peut être embarqué ici bien que ce ne soit pas recommandé. De
nombreuses variables pratiques sont disponibles dans l'environnement, des
explication détaillées sont fournies plus bas dans la section
VARIABLES D'ENVIRONNEMENT.
Veuillez remarquer que les « hooks » prebuild et postbuild
remplacent les actions prebuild et postbuild normales de
svn-buildpackage. Pour prebuild, cela signifie que les dépendances
de construction ne seront pas vérifiées. Pour postbuild, cela
signifie que les fichiers résultant ne seront pas déplacés, et
que Lintian ne sera pas exécuté.
Par défaut : désactivées.
--svn-noninteractive
Avec ce paramètre,
svn-buildpackage ne proposera pas d'interaction avec l'utilisateur.
Par défaut : désactivée.
--svn-savecfg
Par défaut, svn-buildpackage
créait .svn/deb-layout à chaque appel. Depuis la
version 0.6.22, ce comportement est déconseillé.
Avec ce paramètre, svn-buildpackage reproduira (partiellement) cet
ancien comportement. En contraste avec ce comportement déconseillé,
le .svn/deb-layout est considéré comme un écrasement
local ; l'ancien comportement ignorait simplement tout les renseignements
de structure versionnée si .svn/deb-layout existait.
Cette option est fournie car elle peut être utile lors de la création
d'un fichier local d'écrasement.
Par défaut : désactivée.
--svn-download-orig
Cette option oblige svn-buildpackage
à essayer de télécharger l'archive source amont avec apt
et uscan.
Par défaut : désactivée.
--svn-verbose
Mode bavard de sortie du programme.
Par défaut : désactivée.
-h | --help
Montre le message d'aide.
EXEMPLES¶
Pour des renseignements plus précis sur la façon d'utiliser svn-buildpackage, reportez-vous au HOWTO[1]. Pour commencer à travailler avec un paquet Debian natif existant à partir d'un fichier *.dsc, importez-le dans le dépôt à l'aide de la commande :svn-inject paquet_0.1.dsc svn://hôte/debian/devel/packages
svn-inject -o paquet_0.1-2.dsc svn://hôte/debian/devel/packages
svn mkdir ../tarballs svn propset svn:ignore "*" ../tarballs uscan --force-download --destdir ../tarballs
svn-buildpackage --svn-lintian -us -uc -rfakeroot
svn mkdir ../build-area # Pour placer les paquets résultant svn propset svn:ignore "*" ../build-area svn-buildpackage --svn-ignore-new --svn-builder=pdebuild
svn status # Vérifier qu'il n'y a pas de modification non propagée svn-upgrade --verbose ../package-2.0.tar.gz
FICHIER DE CONFIGURATION¶
Le comportement de svn-buildpackage peut être modifié en utilisant le fichier ~/.svn-buildpackage.conf. Des morceaux supplémentaires peuvent être ajoutés à chaque répertoire de travail de paquet en utilisant le fichier .svn/svn-buildpackage.conf. C'est principalement une liste des options longues de la ligne de commande (sans être précédées des deux tirets), un argument par ligne (sans guillemets autour des arguments de plusieurs mots). Les variables sont développées par l'interpréteur du système si des variables de l'interpréteur sont trouvées. Évitez d'utiliser le caractère « ~ » à cause de son développement peu fiable, préférez utiliser « $HOME » à la place. Exemple :svn-builder=debuild -EPATH svn-no-links svn-override=origDir=$HOME/debian/upstream/$PACKAGE # svn-ignore-new # svn-lintian
MANIPULATION DE LA STRUCTURE DU RÉPERTOIRE¶
Par défaut, svn-buildpackage attend un fichier de configuration avec une déclaration du chemin ou de l'URL : .svn/deb-layout. Les valeurs présentes peuvent être écrasées par l'option --svn-override, voir plus haut. Si un fichier de configuration n'est pas trouvé, les réglages sont détectés automatiquement en suivant les hypothèses habituelles sur les répertoires locaux et la structure du dépôt. De plus, le contenu d'un fichier personnalisé debian/svn-deblayout sera importé pendant la configuration initiale. Les responsables du paquet peuvent conserver ce fichier dans le dépôt pour indiquer les bonnes valeurs par défaut aux nouveaux utilisateurs de svn-buildpackage. Le format est le même que celui du fichier .svn/deb-layout. Plutôt que d'utiliser le fichier debian/svn-deblayout, les responsables peuvent configurer les propriétés de Subversion pour le répertoire debian/ ; toutes les propriétés de debian/ avec un nom de la forme svn-bp:PROP seront utilisées pour une configuration de PROP à la valeur indiquée en première ligne de la valeur de la propriété. Si une URL Subversion complète n'est pas donnée, la racine du dépôt précédera cette valeur.VARIABLES D'ENVIRONNEMENT¶
Les variables d'environnement suivantes sont exportées par svn-buildpackage et peuvent être utilisés dans les commandes « hook » du système de construction du paquet. PACKAGE, packageLe nom du paquet source.
SVN_BUILDPACKAGE
Version de svn-buildpackage.
TAG_VERSION, debian_version
La version Debian complète,
également utilisée pour la copie d'étiquette.
non_epoch_version
Comme debian_version mais sans la
partie « epoch ».
upstream_version
Comme debian_version mais sans
l'extension Debian.
guess_loc
Deviner le nom du paquet source amont dans
l'archive, quelque chose comme
libm/libmeta-html-perl_3.2.1.0.orig.tar.gz.
DIFFSRC
(Experimental) montre l'emplacement du fichier
de différences créé.
Toutes les propriétés de structure sont aussi exportées dans
l'environnement. Les suivantes ont une signification pour
svn-buildpackage.
buildArea
L'emplacement du répertoire de
construction.
trunkUrl
L'URL du répertoire tronc du paquet
actuel.
tagsUrl
L'URL du répertoire de base
d'étiquettes du paquet actuel.
origDir
Le répertoire local où se trouvent
les archives sources amont d'origine.
origUrl
L'URL où les archives sources amont
d'origine du paquet actuel peuvent être trouvées.
Les variables suivantes sont comprises par svn-buildpackage :
FORCETAG
Ignorer les indications de journal de
modification incomplètes et étiquette le dépôt quand
même.
FORCEEXPORT
Exporter le code source amont vers le
dépôt même si la propriété mergeWithUpstream
est configurée.
DEBIAN_FRONTEND
Si DEBIAN_FRONTEND est configuré
en « noninteractive », --svn-noninteractive est
appelé silencieusement.
RECOMMENDATIONS¶
Utilisez les alias de l'interpréteur. Voici quelques exemples pour Bash :alias svn-b="svn-buildpackage -us -uc -rfakeroot --svn-ignore" alias svn-br="svn-b --svn-dont-purge --svn-reuse" alias svn-bt="svn-buildpackage --svn-tag -rfakeroot"
VOIR AUSSI¶
/usr/share/doc/svn-buildpackage/html/fr/le manuel de svn-buildpackage
(HOWTO)
svn-inject(1)
place un paquet source Debian dans un
dépôt Subversion
svn-upgrade(1)
mise à niveau de paquet source depuis une
nouvelle version amont
svn(1)
outil client Subversion en ligne de
commande
dpkg-buildpackage(1)
outils pour les paquet source Debian
lintian(1)
vérification de paquets Debian
AUTEURS¶
Eduard BlochCette page de manuel a été
écrite par Eduard Bloch au format roff.
Goneri Le Bouder
Conversion des pages de manuel au format
SGML.
Neil Williams
Conversion des pages de manuel au format
XML DocBook et responsable Debian actuel
COPYRIGHT¶
Copyright © 2009 Eduard BlochNOTES¶
- 1.
- HOWTO
Mai 2009 | Version : 0.8.2 |