MAKEPKG.CONF(5) Manual do pacman MAKEPKG.CONF(5)

makepkg.conf - arquivo de configuração do makepkg

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

As opções de configuração para o makepkg são armazenadas em makepkg.conf. Este arquivo é carregado de forma que você possa incluir qualquer sinalizador especial do compilador que deseje usar. Isso é útil ao compilar para diferentes arquiteturas ou com diferentes otimizações. No entanto, apenas as variáveis descritas abaixo são exportadas para o ambiente de compilação.


Nota

Isso não garante que todos os Makefiles de pacotes usarão suas variáveis exportadas. Alguns deles são seguem o padrão.

O arquivo de configuração do sistema é encontrado em /etc/makepkg.conf. As opções individuais podem ser substituídas (ou adicionadas) por usuário em $XDG_CONFIG_HOME/pacman/makepkg.conf ou ~/.makepkg.conf, com o primeiro tendo prioridade.

O arquivo padrão é bem comentado, então pode ser mais fácil simplesmente seguir as instruções fornecidas para personalização.

DLAGENTS=('protocolo::/caminho/para/comando [opções]' ...)

Define os agentes de download usados para buscar arquivos fonte especificados com um URL no arquivo PKGBUILD(5). As opções também podem ser especificadas para cada comando e qualquer protocolo pode ter um agente de download. Quaisquer espaços em argumentos de opção devem ser escapados para evitar a divisão. Vários exemplos são fornecidos no makepkg.conf padrão.

Se estiver presente, %u será substituído pela URL de download. Caso contrário, a URL de download será colocado no final do comando. Se estiver presente, %o será substituído pelo nome do arquivo local, mais uma extensão “.part”, que permite ao makepkg lidar com a retomada dos downloads de arquivos.

VCSCLIENTS=('protocolo::pacote' ...)

Define os pacotes necessários para buscar arquivos fonte com controle de versão. Quando necessário, o makepkg irá verificar se esses pacotes estão instalados ou incluídos nos arrays depends ou makedepends no PKGBUILD.

CARCH="carch"

Especifica a arquitetura do seu computador; valores possíveis incluem coisas como “i686”, “x86_64”, “ppc”, etc. Isso deve ser definido automaticamente na instalação.

CHOST="chost"

Uma string como “i686-pc-linux-gnu”; não toque nisso a menos que você saiba o que está fazendo. Isso pode ser comentado pela maioria dos usuários, se desejado.

CPPFLAGS="cppflags"

Sinalizadores usados para o pré-processador C; veja CFLAGS para mais informações.

CFLAGS="cflags"

Sinalizadores usados para o compilador C. Esta é uma parte fundamental para o uso de makepkg. Normalmente, várias opções são especificadas, e a string mais comum se parece com algo assim: “-march=i686 -O2 -pipe”. Outra opção útil pode ser -mcpu no lugar de -march. Leia gcc(1) para obter mais detalhes sobre a ampla variedade de sinalizadores de compilador disponíveis.

CXXFLAGS="cxxflags"

Sinalizadores usados para o processador C++; veja CFLAGS para mais informações.

LDFLAGS="ldflags"

Sinalizadores usados para o vinculador. Várias opções podem ser especificadas com uso comum semelhante a “-Wl,--hash-style=gnu”. Leia ld(1) para obter mais detalhes sobre os sinalizadores de linker disponíveis.

LTOFLAGS="ltoflags"

Sinalizadores adicionais de compilador e vinculador adicionadas ao CFLAGS, CXXFLAGS e LDFLAGS ao compilar com otimização em tempo de vinculação (link time optimization - lto). Se vazio, “-flto” é usado.

MAKEFLAGS="makeflags"

Isso geralmente é usado para definir o número de tarefas usados; por exemplo, -j2. Outras sinalizações que fazem aceitações também podem ser passadas.

DEBUG_CFLAGS="debug_cflags"

Sinalizadores de compilador adicionais anexados a CFLAGS para uso na depuração. Normalmente, isso incluiria: “-g”. Leia gcc(1) para obter mais detalhes sobre a ampla variedade de sinalizadores de compilador disponíveis.

DEBUG_CXXFLAGS="debug_cxxflags"

Sinalizadores de depuração usados para o compilador C++; veja DEBUG_CFLAGS para mais informações.

BUILDENV=(!distcc !color !ccache check !sign)

Este array contém opções que afetam o ambiente de compilação; os padrões são mostrados aqui. Todas as opções devem sempre ser deixadas no array; para habilitar ou desabilitar uma opção, simplesmente remova ou adicione um “!” na frente da opção. Se uma opção for especificada várias vezes, o valor final terá precedência. Cada opção funciona da seguinte maneira:

distcc

Usa o compilador C/C++/ObjC distribuído para espalhar a compilação entre várias máquinas. Se estiver habilitado, DISTCC_HOSTS também deve ser especificado.

color

Colore as mensagens de saída, tornando a saída mais fácil de ler.

ccache

Use o ccache para armazenar em cache a compilação por padrão. Isso permite compilações mais rápidas se você estiver recompilando continuamente os mesmos pacotes. Ele pode ser desabilitado para pacotes individuais colocando !ccache no array de opções PKGBUILD.

check

Executa a função check() se presente no PKGBUILD. Isso pode ser habilitado ou desabilitado para pacotes individuais através do uso das opções --check e --nocheck do makepkg, respectivamente.

sign

Gera um arquivo de assinatura PGP usando GnuPG. Isso executará gpg --detach-sign --use-agent no pacote compilado para gerar um arquivo de assinatura desanexado, usando o agente GPG, se estiver disponível. O arquivo de assinatura será o nome completo do arquivo do pacote com uma extensão “.sig”.

DISTCC_HOSTS="host1 ..."

Se estiver usando DistCC, isso é usado para especificar uma lista delimitada por espaço de hosts em execução no cluster de DistCC. Além disso, você desejará modificar seu MAKEFLAGS.

BUILDDIR="/caminho/para/diretório"

Se este valor não estiver definido, os pacotes serão, por padrão, compilados em subdiretórios do diretório de onde makepkg é chamado. Esta opção permite definir o local de compilação para outro diretório. O uso incorreto de $startdir em um PKGBUILD pode fazer com que a compilação com esta opção falhe.

GPGKEY=""

Especifica uma chave a ser usada para assinatura GPG em vez da chave padrão no chaveiro. Pode ser sobrescrito com a opção --key do makepkg.

OPTIONS=(!strip docs libtool staticlibs emptydirs ...)

Este array contém opções que afetam o pacote padrão. Eles são equivalentes às opções que podem ser colocadas no PKGBUILD; os padrões são mostrados aqui. Todas as opções devem sempre ser deixadas no array; para habilitar ou desabilitar uma opção, simplesmente remova ou adicione um “!” na frente da opção. Se uma opção for especificada várias vezes, o valor final terá precedência. Cada opção funciona da seguinte maneira:

strip

Retira símbolos de binários e bibliotecas. Se você usa frequentemente um depurador em programas ou bibliotecas, pode ser útil desabilitar esta opção.

docs

Salva diretórios de documentos. Se você deseja excluir diretórios doc, especifique !docs no array. Os diretórios afetados são especificados pela variável DOC_DIRS.

libtool

Deixa arquivos libtool (.la) nos pacotes. Especifique !libtool para removê-los.

staticlibs

Deixa os arquivos de biblioteca estática (.a) nos pacotes. Especifique !staticlibs para removê-los, se eles tiverem uma contraparte compartilhada.

emptydirs

Deixa diretórios vazios nos pacotes.

zipman

Compacta as páginas do manual (man e info) com gzip. Os diretórios afetados são especificados pela variável MAN_DIRS.

purge

Remove os arquivos especificados pela variável PURGE_TARGETS do pacote.

debug

Adiciona os sinalizadores de depuração especificados pelo usuário conforme especificado em DEBUG_CFLAGS e DEBUG_CXXFLAGS aos seus sinalizadores de compilação correspondentes. Cria um pacote separado contendo os símbolos de depuração quando usado com ‘strip’.

lto

Habilita compilação de pacotes usando otimização em tempo de vinculação. Adiciona os sinalizadores especificados em LTOFLAGS a CFLAGS, CXXFLAGS e LDFLAGS (ou “-flto” if LTOFLAGS se vazio).

autodeps

Habilita a adição automática de bibliotecas aos arrays depends e provides. Os diretórios da biblioteca de pesquisa são controlados pela variável LIB_DIRS definida abaixo.

INTEGRITY_CHECK=(verificação1 ...)

Verificações de integridade de arquivo para usar. Várias verificações podem ser especificadas; isso afeta a geração e a verificação. As opções válidas atuais são: ck, md5, sha1, sha224, sha256, sha384, sha512 e b2.

STRIP_BINARIES="--strip-all"

Opções a serem usadas ao remover binários. Veja strip(1) para detalhes.

STRIP_SHARED="--strip-unneeded"

Opções a serem usadas ao remover bibliotecas compartilhadas ou executáveis PIE. Veja strip(1) para detalhes.

STRIP_STATIC="--strip-debug"

Opções a serem usadas ao remover bibliotecas estáticas. Veja strip(1) para detalhes.

MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info} ...)

Se zipman for especificado no array OPTIONS, esta variável irá instruir makepkg onde procurar para compactar as páginas de manual (man e info). Se você compilar pacotes localizados em opt/, pode ser necessário adicionar o diretório a este array. NOTA: Não adicione a barra inicial ao nome do diretório.

DOC_DIRS=(usr/{,share/}{doc,gtk-doc} ...)

Se !docs for especificado no array OPTIONS, esta variável irá instruir makepkg onde procurar para remover docs. Se você compila pacotes localizados em opt/, pode ser necessário adicionar o diretório a este array. NOTA: Não adicione a barra inicial ao nome do diretório.

LIB_DIRS=(lib:usr/lib ...)

Se autodeps for especificado no array OPTIONS, esta variável irá instruir makepkg onde buscar os arquivos fonte para adicionar ao array provides. O formato "prefixo:caminho",sendo que provides será adicionado para bibliotecas encontradas em "caminho" com a adição do prefixo especificado.

PURGE_TARGETS=(usr/{,share}/info/dir .podlist *.pod...)

Se purge for especificado no array OPTIONS, esta variável irá instruir makepkg quais arquivos remover do pacote. Isso é útil para arquivos de índice que são adicionados por vários pacotes.

DBGSRCDIR="/usr/src/debug"

Se strip e debug forem especificados no array OPTIONS, esta variável irá instruir makepkg onde colocar os arquivos fonte para binários instalados. Os binários serão modificados para vincular este diretório ao caminho de pesquisa do depurador.

PKGDEST="/caminho/para/diretório"

Se este valor não for definido, os pacotes serão, por padrão, colocados no diretório atual (localização do PKGBUILD(5)). Muitas pessoas gostam de manter todos os seus pacotes em um só lugar, portanto esta opção permite este comportamento. Um local comum é “/home/packages”.

SRCDEST="/caminho/para/diretório"

Se este valor não for definido, os arquivos fonte baixados serão armazenados apenas no diretório atual. Muitas pessoas gostam de manter todos os arquivos fonte em um local central para facilitar a limpeza, portanto, esse caminho pode ser definido aqui.

SRCPKGDEST="/caminho/para/diretório"

Se este valor não for definido, os arquivos do pacote fonte serão armazenados no diretório atual. Muitas pessoas gostam de manter todos os arquivos do pacote fonte em um local central para uma limpeza fácil, portanto, esse caminho pode ser definido aqui.

LOGDEST="/caminho/para/diretório"

Se este valor não for definido, os arquivos de log serão gravados no diretório atual. Isso centraliza a localização do log, facilitando a limpeza e compactação.

PACKAGER="John Doe <john@example.com>"

Este valor é usado ao consultar um pacote para ver quem foi o responsável pela compilação. O formato fornecido é necessário para a pesquisa da chave PGP por meio de WKD. Recomenda-se alterar isso para seu nome e endereço de e-mail.

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)"

Define o comando e as opções usados ao compactar pacotes compilados ou fontes no formato nomeado.

PKGEXT=".pkg.tar.gz", SRCEXT=".src.tar.gz"

Define a compactação usada ao fazer pacotes compilados ou fontes. Sufixos válidos são .pkg ou .src (para PKGEXT e SRCEXT respectivamente) seguidos por um entre .tar.gz, .tar.bz2, .tar.xz, .tar.zst, .tar.lzo, .tar.lrz, .tar.lz4, .tar.lz e .tar.Z ou simplesmente .tar para desabilitar compactação por completo.

PACMAN_AUTH=()

Especifica um prefixo de comando para executar o pacman como root. Se não estiver definido, o makepkg verificará a presença de sudo(8) e su(1) por sua vez, e tentará o primeiro que encontrar.

Se estiver presente, %c será substituído pela forma entre aspas do shell do comando para executar. Caso contrário, o comando a ser executado é anexado ao comando auth.

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

Consulte o site do pacman em https://archlinux.org/pacman/ para obter informações atuais sobre o pacman e suas ferramentas relacionadas.

Bugs? Você deve estar brincando; não há erros neste software. Mas se por acaso estivermos errados, envie um relatório de erro com o máximo de detalhes possível no rastreador de erros do Arch Linux na seção Pacman.

Atuais mantenedores:

•Allan McRae <allan@archlinux.org>
•Andrew Gregory <andrew.gregory.8@gmail.com>
•Morgan Adamiec <morganamilo@archlinux.org>

Principais colaboradores anteriores:

•Judd Vinet <jvinet@zeroflux.org>
•Aurelien Foret <aurelien@archlinux.org>
•Aaron Griffin <aaron@archlinux.org>
•Dan McGee <dan@archlinux.org>
•Xavier Chantry <shiningxc@gmail.com>
•Nagy Gabor <ngaba@bibl.u-szeged.hu>
•Dave Reisner <dreisner@archlinux.org>
•Eli Schwartz <eschwartz@archlinux.org>

Para outros contribuidores, use git shortlog -s no repositório pacman.git.

A tradução para português brasileiro desta página man foi criada por Rafael Fontenelle <rafaelff@gnome.org>

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores.

15 março 2024 Pacman 6.1.0