deb-substvars
variáveis de substituição de fonte Debian
- Provided by: dpkg-dev (Version: 1.21.1ubuntu2.6)
- Source: dpkg
- Report a bug
variáveis de substituição de fonte Debian
debian/substvars, debian/binary-package.substvars
Antes de dpkg-source, dpkg-gencontrol e dpkg-genchanges escreverem a sua informação de controle (no ficheiro de de controle de fonte .dsc para dpkg-source e para a saída standard para dpkg-gencontrol e dpkg-genchanges) eles executam algumas substituições de variáveis no ficheiro resultante.
A substituição de variável tem o formato ${variable-name}. Nomes de varáveis consistem de alfanuméricos (a-zA-Z0-9), hífens (-) dois pontos (:) e começam com um alfanumérico, e são sensíveis a maiúsculas/minúsculas, apesar de poderem referir a outras entidades, que são preservadoras de maiúsculas/minúsculas. Substituições de variáveis são executadas repetidamente até que não sobre nenhuma, o texto completo do campo após a substituição é re-sondado para se procurar por mais substituições.
After all the substitutions have been done each occurrence of the string ${} (which is not a legal substitution) is replaced with a $ sign. This can be used as an escape sequence such as ${}{VARIABLE} which will end up as ${VARIABLE} on the output.
Enquanto uma substituição de variável é feita em todos os campos de controle, alguns desse campos são usados e necessários durante a compilação quando a substituição ainda não aconteceu. É por isso que não pode usar vaiáveis nos campos Package, Source e Architecture.
A substituição de variável acontece no conteúdo dos campos após terem sido analisados, mas se você quer que uma variável expanda por várias linhas você não precisa de incluir um espaço após a mudança de linha. Isto é feito implicitamente quando o campo é emitido. Por exemplo, se a variável ${Description} for definida para "foo is bar.${Nova-linha}foo is great." e se você tiver o seguinte campo:
Description: foo application
${Description}
.
More text.
Irá resultar em:
Description: foo application foo is bar. foo is great. . More text.
As variáveis podem ser definidas usando a opção comum -V. Elas podem também ser especificadas no ficheiro debian/substvars (ou em qualquer outro ficheiro especificado usando a opção -T). Este ficheiro consiste de linhas do formato name=value. São ignorados os espaços em branco no final de cada linha, as linhas vazias, e as linhas começadas com o símbolo # (comentários).
Adicionalmente, estão disponíveis as seguintes variáveis standard:
Nota: Tenha em conta que isto só pode ser uma aproximação, pois o tamanho real usado no sistema instalado irá depender grandemente do sistema de ficheiros usado e dos seu parâmetros, o que pode acabar a usar mais ou menos espaço que aquele especificado neste campo.
Se uma variável for referida mas não definida, irá gerar um aviso e é assumido um valor vazio.
dpkg(1), dpkg-vendor(1), dpkg-genchanges(1), dpkg-gencontrol(1), dpkg-shlibdeps(1), dpkg-source(1).
Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro <a_monteiro@gmx.com>.