MAKEPKG.CONF(5)

NOM
makepkg.conf - fichier de configuration de makepkg

SYNOPSIS

/etc/makepkg.conf, $XDG_CONFIG_HOME/pacman/makepkg.conf, ~/.makepkg.conf

DESCRIPTION

Les options de configuration de makepkg sont stockées dans makepkg.conf. Ce fichier est paramétrable, donc vous pouvez ajouter les flags de compilation que vous souhaitez. Il est pratique pour compiler sur différentes architectures ou différentes optimisations.

    Note

    Cela ne garantie pas que tous les Makefiles vont utiliser les variables d'export. Certains ne sont pas standards.

The system-wide configuration file is found in /etc/makepkg.conf. Individual options can be overridden (or added to) on a per-user basis in $XDG_CONFIG_HOME/pacman/makepkg.conf or ~/.makepkg.conf, with the former taking priority.

Le fichier par défaut est relativement bien commenté, donc il est assez simple de suivre les indications pour la personnalisation.

OPTIONS

DLAGENTS=('protocol::/chemin/vers/repertoire [options]' ...)
    Sets the download agents used to fetch source files specified with a URL in the PKGBUILD(5) file. Options can be specified for each command as well, and any protocol can have a download agent. Any spaces in option arguments are required to be escaped to avoid being split. Several examples are provided in the default makepkg.conf. Si il est présent, %u sera remplacé par l'URL de téléchargement. Autrement, l'URL de téléchargement est placée à la fin de la commande. Si il est présent, un appel de %o sera remplacé par le nom local du fichier avec une extension “.part”, qui est supprimé quand le fichier est correctement récupéré.

VCSCLIENTS=('protocol::paquet' ...)
    Sets the packages required to fetch version controlled source files. When required, makepkg will check that these packages are installed or are included in the depends or makedepends arrays in the PKGBUILD.

CARCH="carch"
    Précise votre architecture matériel, plusieurs valeurs sont possibles “i686”, “x86_64”, “ppc”, etc. Cela peut être automatisé à l'installation.

CHOST="chost"
    La valeur peut être “i686-pc-linux-gnu”· ne pas modifier sans savoir ce que vous faites. Cela peut être commenté par la plupart des utilisateurs si vous le souhaitez.

CPPFLAGS="cppflags"
    Flags used for the C preprocessor; see CFLAGS for more information.

CFLAGS="cflags"
    Paramètre utilisé pour le compilateur C. C'est une clef essentielle à makepkg. Habituellement plusieurs options sont indiquées et la valeur la plus utilisée ressemble le plus souvent à ceci : “-march=i686 -O2 -pipe”. Une autre option utile peut être de remplacer -march par -mcpu. Lire gcc(1) pour de plus amples informations sur les paramètres de compilation possible.

CXXFLAGS="cxxflags"
    Paramètre utilisé par le compilateur C++, voir CFLAGS pour plus d'info.

RUSTFLAGS="rustflags"
    Flags used for the Rust compiler, similar in spirit to CFLAGS. Read rustc(1) for more details on the available flags.

LDFLAGS="ldflags"
    Paramètre utilisé par le linker. Différentes options peuvent être précisé comme ceci “-Wl,--hash-style=gnu”. Lisez ld(1) pour plus de détails sur les flags du linker.

MAKEFLAGS="makeflags"
    Ceci est utilisé pour mettre le nombre de tâches utilisées; par exemple, -j2. D'autres paramètres acceptés par make peuvent être passés.

DEBUG_CFLAGS="debug_cflags"
    Additional compiler flags appended to CFLAGS for use in debugging. Usually this would include: “-g”. Read gcc(1) for more details on the wide variety of compiler flags available.

DEBUG_CXXFLAGS="debug_cxxflags"
    Debug flags used for the C++ compiler; see DEBUG_CFLAGS for more info.

DEBUG_RUSTFLAGS="debug_rustflags"
    Additional compiler flags appended to RUSTFLAGS for use in debugging. Usually this would include: “-C debuginfo=2”. Read rustc(1) for more details on the available flags.

BUILDENV=(!distcc !color !ccache check !sign)
    This array contains options that affect the build environment; the defaults are shown here. All options should always be left in the array; to enable or disable an option, simply remove or add an “!” at the front of the option. If an option is specified multiple times, the final value takes precedence. Each option works as follows:

    distcc
        Utilise le compilateur C/C++/ObjC pour répartir la compilation sur différentes machines. Si c'est activé, DISTCC_HOSTS doit être spécifié.

    color
        Colore les messages de sortie rendant la lecture plus agréable.

    ccache
        Utilise ccache pour le cache de compilation par défaut. Cela permet de compiler plus rapidement si vous compilez souvent les mêmes paquetages. Il peut être désactivé pour les paquets individuels en mettant !ccache dans le champ du PKGBUILD.

    check
        Run the check() function if present in the PKGBUILD. This can be enabled or disabled for individual packages through the use of makepkg’s --check and --nocheck options, respectively.

    sign
        Generate a PGP signature file using GnuPG. This will execute gpg --detach-sign --use-agent on the built package to generate a detached signature file, using the GPG agent, if it is available. The signature file will be the entire file name of the package with a “.sig” extension.

DISTCC_HOSTS="host1 ..."
    Si vous utilisez DistCC, ceci est utilisé pour définir les hôtes du cluster DistCC. En complément vous deverez modifier votre MAKEFLAGS.

BUILDDIR="/chemin/vers/repertoire"
    If this value is not set, packages will, by default, be built in subdirectories of the directory that makepkg is called from. This option allows setting the build location to another directory. Incorrect use of $startdir in a PKGBUILD may cause building with this option to fail.

GPGKEY=""
    Specify a key to use for GPG signing instead of the default key in the keyring. Can be overridden with makepkg’s --key option.

OPTIONS=(!strip docs libtool staticlibs emptydirs !zipman !purge !debug)
    This array contains options that affect default packaging. They are equivalent to options that can be placed in the PKGBUILD; the defaults are shown here. All options should always be left in the array; to enable or disable an option, simply remove or add an “!” at the front of the option. If an option is specified multiple times, the final value takes precedence. Each option works as follows:

    strip
        Stripping du binaire et des bibliothèques. Si vous utilisez fréquemment un débuggeur pour les programmes ou les bibliothèques, il peut vous être utile de désactiver cette option.

    docs
        Conserve les répertoires doc. Si vous souhaitez supprimer les répertoires doc, précisez le dans le champs !docs. Les répertoires concernés sont précisé dans la variable DOC_DIRS.

    libtool
        Conserve les fichiers libtool (.la) dans le paquetage. Précisez !libtool pour les supprimer.

    staticlibs
        Leave static library (.a) files in packages. Specify !staticlibs to remove them, if they have a shared counterpart.

    emptydirs
        Conserve les répertoires vides dans le paquetage.

    zipman
        Compresse les pages de manuels (man et info) avec gzip. Les répertoires concernés sont précisé dans la variable MAN_DIRS.

    purge
        Supprime les fichiers spécifiés dans la variable PURGE_TARGETS pour le paquetage.

    debug
        Add the user-specified debug flags as specified in DEBUG_CFLAGS and DEBUG_CXXFLAGS to their counterpart buildflags. Creates a separate package containing the debug symbols when used with ‘strip’.

INTEGRITY_CHECK=(check1 ...)
    Fichier de vérification de l'intégrité à utiliser. Différents vérifications peuvent être spécifiée. Les options valides sont : md5, sha1, sha224, sha256, sha384, sha512, et b2.

STRIP_BINARIES="--strip-all"
    Options to be used when stripping binaries. See strip(1) for details.

STRIP_SHARED="--strip-unneeded"
    Options to be used when stripping shared libraries or PIE executables. See strip(1) for details.

STRIP_STATIC="--strip-debug"
    Options to be used when stripping static libraries. See strip(1) for details.

MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info} ...)
    Si zipman est spécifié dans le champ OPTIONS, cette variable précise à makepkg de compresser les pages de manuels (man et info). Si vous construisez un paquetage localisé dans opt/, vous devez ajouter le répertoire dans cette variable. NOTE : Ne pas ajouter le slash racine ('/') dans le nom du répertoire.

DOC_DIRS=(usr/{,share/}{doc,gtk-doc} ...)
    Si !docs est écrit dans le champ OPTIONS, cette variable va demander à makepkg de supprimer les docs. Si vous construisez des paquetages situés dans /opt, vous devriez ajouter le répertoire dans le champ. NOTE : ne pas ajouter le slash racine dans le nom du répertoire.

PURGE_TARGETS=(usr/{,share}/info/dir .podlist *.pod...)
    Si purge est précisé dans le champs OPTIONS, cette variable précise à makepkg quels fichiers supprimer du paquetage. Cela est utile pour les fichiers index ajoutés par de nombreux paquetages.

DBGSRCDIR="/usr/src/debug"
    If strip and debug are specified in the OPTIONS array, this variable will instruct makepkg where to place source files for installed binaries. The binaries will be modified to link this directory for the debugger search path.

PKGDEST="/chemin/vers/repertoire"
    Si cette valeur n'est pas renseignée, le paquetage sera placé dans le répertoire courant (localisé par le PKGBUILD(5). Beaucoup de gens conservent tous leurs paquetages au même endroit et cette option offre cette possibilité. Un emplacement courant est “/home/packages”.

SRCDEST="/chemin/vers/repertoire"
    Si cette valeur n'est pas renseignée, les sources téléchargées seront stockées dans le répertoire courant. Beaucoup de gens aime centraliser la localisation des sources pour simplifier leur nettoyage et cette option offre cette possibilité.

SRCPKGDEST="/chemin/vers/repertoire"
    If this value is not set, source package files will be stored in in the current directory. Many people like to keep all source package files in a central location for easy cleanup, so this path can be set here.

LOGDEST="/chemin/vers/repertoire"
    If this value is not set, log files are written to the current directory. This centralizes the log location, facilitating cleanup and compression.

PACKAGER="Paul Martin <paul@example.com>"
    This value is used when querying a package to see who was the builder. The given format is required for PGP key lookup through WKD. It is recommended to change this to your name and email address.

COMPRESSGZ="(gzip -c -f -n)", COMPRESSBZ2="(bzip2 -c -f)", COMPRESSXZ="(xz -c -z -)", COMPRESSZST="(zstd -c -z -)", COMPRESSLZO"(lzop -q)", COMPRESSLRZ="(lrzip -q)", COMPRESSLZ4="(lz4 -q)", COMPRESSZ="(compress -c -f)", COMPRESSLZ="(lzip -c -f)"
    Sets the command and options used when compressing compiled or source packages in the named format.

PKGEXT=".pkg.tar.gz", SRCEXT=".src.tar.gz"
    Sets the compression used when making compiled or source packages. Valid suffixes are .tar.gz, .tar.bz2, .tar.xz, .tar.zst, .tar.lzo, .tar.lrz, .tar.lz4, .tar.lz and .tar.Z, or simply .tar to disable compression entirely.

VOIR AUSSI

makepkg(8), pacman(8), PKGBUILD(5)

Consulter le site internet de pacman à l'adresse https://www.archlinux.org/pacman/ pour de nouvelles informations sur pacman et ses outils associés.

BOGUES

Bogues ? C'est une blague ; il n'y a pas de bogues dans ce logiciel. Mais s'il y en a, envoyez un rapport de bogue contenant autant de détails que possible dans la section Pacman du système de suivi de bogues de Arch Linux.

AUTEURS

Développeurs actuels :

    • Allan McRae <allan@archlinux.org>

    • Andrew Gregory <andrew.gregory.8@gmail.com>

    • Dan McGee <dan@archlinux.org>

    • Dave Reisner <dreisner@archlinux.org>

Contributeurs antérieurs majeurs :

    • Judd Vinet <jvinet@zeroflux.org>

    • Aurelien Foret <aurelien@archlinux.org>

    • Aaron Griffin <aaron@archlinux.org>

    • Xavier Chantry <shiningxc@gmail.com>

    • Nagy Gabor <ngaba@bibl.u-szeged.hu>

Pour des contributeurs supplémentaires, utiliser git shortlog -s sur le dépôt pacman.git.

TRADUCTION
La traduction française de cette page de manuel a été créée par Marc Poiroud <marci1@archlinux.fr> Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à <debian-l10n-french@lists.debian.org>.