.\" -*- coding: UTF-8 -*-
'\" t
.\" Title: makepkg-template
.\" Author: [see the "Authors" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot
.\" Date: 2024-03-15
.\" Manual: Pacman Manual
.\" Source: Pacman 6.1.0
.\" Language: English
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH MAKEPKG\-TEMPLATE 1 "15 março 2024" "Pacman 6\&.1\&.0" "Manual do pacman"
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH NOME
makepkg\-template \- utilitário de manipulação de modelos de compilação do
pacotes
.SH SINOPSE
.sp
\fImakepkg\-template\fP [opções]
.SH DESCRIÇÃO
.sp
\fImakepkg\-template\fP é um script para facilitar o trabalho de manter vários
PKGBUILDs semelhantes\&. Ele permite mover a maior parte do código do
PKGBUILD para um arquivo de modelo e usa marcadores para permitir a
atualização no local dos PKGBUILDs existentes se o modelo tiver sido
alterado\&.
.sp
Os arquivos de modelo podem conter qualquer código permitido em um
PKGBUILD\&. Você pode pensar neles como arquivos externos incluídos em "\&."
ou "fonte", mas eles serão incorporados no PKGBUILD por \fImakepkg\-template\fP
para que você não dependa do arquivo de modelo ao criar o pacote\&.
.sp
Os marcadores são comentários bash na forma de:
.sp
.if n \{\
.RS 4
.\}
.nf
# template start; chave=valor; chave2=valor2; \&.\&.\&.
.fi
.if n \{\
.RE
.\}
.sp
e
.sp
.if n \{\
.RS 4
.\}
.nf
# template end;
.fi
.if n \{\
.RE
.\}
.sp
As chaves usadas atualmente são: name (obrigatório) e version\&. Os nomes
dos modelos são limitados a alfanuméricos, "@", "+", "\&.", "\-" e "_"\&. As
versões são limitadas a números e "\&."\&.
.sp
Para a criação inicial, existe um atalho de uma linha que não precisa de um
marcador final:
.sp
.if n \{\
.RS 4
.\}
.nf
# template input; chave=valor;
.fi
.if n \{\
.RE
.\}
.sp
O uso desse atalho resultará no \fImakepkg\-template\fP substituir com
marcadores de início e fim e o código de modelo na primeira execução\&.
.sp
Os arquivos de modelo devem ser armazenados em um diretório e os nomes de
arquivos devem ser "$template_name\-$version\&.template" com um link
simbólico "$template_name\&.template" apontando para o modelo mais
recente\&. Se a versão não estiver definida no marcador, \fImakepkg\-template\fP
utilizará automaticamente o destino de "$template_name\&.template", caso
contrário, a versão especificada será usada\&. Isso permite uma verificação
mais fácil de PKGBUILDs não confiáveis se o modelo for confiável\&. Você
verifica o código que não é do modelo e usa um comando semelhante a este:
.sp
.if n \{\
.RS 4
.\}
.nf
diff \-u <(makepkg\-template \-o \-) PKGBUILD
.fi
.if n \{\
.RE
.\}
.sp
Os arquivos de modelo também podem conter marcadores que levam a modelos
aninhados no PKGBUILD resultante\&. Se você usar marcadores em um modelo,
defina a versão que você usou/testou no marcador de início/entrada para que
outras pessoas possam recriar adequadamente a partir de modelos\&.
.SH OPÇÕES
.PP
\fB\-p, \-\-input\fP