.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "DH 1" .TH DH 1 "2019-09-14" "12.6" "Debhelper" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NOME" .IX Header "NOME" dh \- sequenciador de comandos do debhelper .SH "RESUMO" .IX Header "RESUMO" \&\fBdh\fR \fIsequence\fR [\fB\-\-with\fR \fIaddon\fR[\fB,\fR\fIaddon\fR ...]] [\fB\-\-list\fR] [\fIdebhelper opções\fR] .SH "DESCRIÇÃO" .IX Header "DESCRIÇÃO" \&\fBdh\fR corre uma sequência de comandos do debhelper. As \fIsequência\fRs suportadas correspondem às metas de um ficheiro \fIdebian/rules\fR: \&\fBbuild-arch\fR, \fBbuild-indep\fR, \fBbuild\fR, \fBclean\fR, \fBinstall-indep\fR, \&\fBinstall-arch\fR, \fBinstall\fR, \fBbinary-arch\fR, \fBbinary-indep\fR, e \fBbinary\fR. .SH "METAS DE SOBREPOSIÇÃO" .IX Header "METAS DE SOBREPOSIÇÃO" Um ficheiro \fIdebian/rules\fR que use \fBdh\fR pode sobrepor o comando que é executado em qualquer passo numa sequência, ao se definir uma meta de sobreposição. .PP Para sobrepor o \fIdh_command\fR, adicione uma meta chamada \&\fBoverride_\fR\fIdh_command\fR ao ficheiro de regras. Em vez de correr normalmente \fIdh_command\fR, o \fBdh\fR irá chamar essa meta. A meta de sobreposição pode depois correr o comando com opções adicionais, ou em vez disso correr comandos completamente diferentes. Veja exemplos em baixo. .PP As metas de sobreposição também pode ser definidas para correr apenas quando se compila pacotes dependentes ou independentes da arquitectura. Use metas com nomes como \fBoverride_\fR\fIdh_command\fR\fB\-arch\fR e \&\fBoverride_\fR\fIdh_command\fR\fB\-indep\fR. (Note que para usar esta funcionalidade, você deve usar Build-Depend em debhelper 8.9.7 ou posterior.) .SH "OPÇÕES" .IX Header "OPÇÕES" .IP "\fB\-\-with\fR \fIaddon\fR[\fB,\fR\fIaddon\fR ...]" 4 .IX Item "--with addon[,addon ...]" Adiciona os comandos debhelper especificados pelo addon indicado aos lugares apropriados na sequência de comandos que é executada. Esta opção pode ser repetida mais do que uma vez, ou pode-se listar múltiplos addons separados por vírgulas. Isto é usado quando existe um pacote de terceiros que disponibiliza comandos do debhelper. Veja o ficheiro \fI\s-1PROGRAMMING\s0\fR para documentação acerca da sequência de interface de addons. .Sp A \fBBuild-Depends\fR relation on the package \fBdh\-sequence\-\fR\fIaddon\fR implies a \&\fB\-\-with\fR \fIaddon\fR. This avoids the need for an explicit \fB\-\-with\fR in \&\fIdebian/rules\fR that only duplicates what is already declared via the build dependencies in \fIdebian/control\fR. The relation can (since 12.5) be made optional via e.g. build-profiles. This enables you to easily disable an addon that is only useful with certain profiles (e.g. to facilitate bootstraping). .Sp Since debhelper 12.5, addons can also be activated in \fBindep\fR\-only mode (via \fBBuild-Depends-Indep\fR) or \fBarch\fR\-only mode (via \&\fBBuild-Depends-Arch\fR). Such addons are only active in the particular sequence (e.g. \fBbinary-indep\fR) which simplifies dependency management for cross-builds. .Sp Please note that addons activated via \fBBuild-Depends-Indep\fR or \&\fBBuild-Depends-Arch\fR are subject to additional limitations to ensure the result is deterministic even when the addon is unavailable (e.g. during clean). This implies that some addons are incompatible with these restrictions and can only be used via \fBBuild-Depends\fR (or manually via \&\fIdebian/rules\fR). Currently, such addons can only add commands to sequences. .IP "\fB\-\-without\fR \fIaddon\fR" 4 .IX Item "--without addon" O inverso de \fB\-\-with\fR, desactiva a utilização do addon indicado. Esta opção pode ser repetida mais do que uma vez, ou pode desactivar vários addons se os listar separados por vírgulas. .IP "\fB\-\-list\fR, \fB\-l\fR" 4 .IX Item "--list, -l" Lista todos os addons disponíveis. .Sp Quando chamado apenas com esta opção, o \fBdh\fR pode ser chamado a partir de qualquer directório (isto é, não precisa de acesso a ficheiros do pacote fonte). .IP "\fB\-\-no\-act\fR" 4 .IX Item "--no-act" Escreve comandos que iriam correr para uma determinada sequência, mas não os corre. .Sp Note que o dh normalmente evita correr comandos que sabe que não fazem nada. Com \-\-no\-act, é escrito em sequência a lista completa dos comandos. .PP Outras opções passadas a \fBdh\fR são passadas a cada comando que ele corre. Isto pode ser usado para definir uma opção como \fB\-v\fR ou \fB\-X\fR ou \&\fB\-N\fR, assim como para opções mais especializadas. .SH "EXEMPLOS" .IX Header "EXEMPLOS" Para ver quais comandos estão incluídos numa sequência, sem realmente fazer nada: .PP .Vb 1 \& dh binary\-arch \-\-no\-act .Ve .PP Este é um ficheiro de regras muito simples, para pacotes onde as sequências de comandos predefinidas funcionam sem opções adicionais. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ .Ve .PP Muitas vezes você vai querer passar uma opção a um comando debhelper específico. A maneira mais fácil de o fazer é adicionar uma meta de sobreposição a esse comando. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \& \& override_dh_strip: \& dh_strip \-Xfoo \& \& override_dh_auto_configure: \& dh_auto_configure \-\- \-\-with\-foo \-\-disable\-bar .Ve .PP Por vezes os automatismos \fBdh_auto_configure\fR\|(1) e \fBdh_auto_build\fR\|(1) não conseguem adivinhar que fazer com um pacote estranho. Aqui está como evitar correr outros comandos quaisquer e em vez disso correr os seus próprios comandos. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \& \& override_dh_auto_configure: \& ./mondoconfig \& \& override_dh_auto_build: \& make universe\-explode\-in\-delight .Ve .PP Outro caso comum é esperar fazer algo manualmente antes ou depois de um comando debhelper particular ser executado. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \& \& override_dh_fixperms: \& dh_fixperms \& chmod 4755 debian/foo/usr/bin/foo .Ve .PP Por predefinição, as ferramentas Python não são accionadas, devido às alterações contínuas nessa área. Aqui está como usar o \fBdh_python2\fR. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \-\-with python2 .Ve .PP Aqui está como forçar o uso do sistema de compilação \fBModule::Build\fR do Perl, o qual pode ser necessário e o debhelper erradamente detectar que o pacote usa MakeMaker. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \-\-buildsystem=perl_build .Ve .PP Aqui está um exemplo de criar uma sobreposição ao local onde os comandos \&\fBdh_auto_\fR\fI*\fR encontram a fonte do pacote, para um pacote cuja fonte está localizada num sub\-directório. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \-\-sourcedirectory=src .Ve .PP E aqui está um exemplo de como dizer aos comandos \fBdh_auto_\fR\fI*\fR para compilarem num sub\-directório, o qual será removido em \fBclean\fR. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \-\-builddirectory=build .Ve .PP Se o seu pacote poder ser compilado em paralelo, por favor use compatibilidade 10 ou passe \fB\-\-parallel\fR ao dh. Assim o \fBdpkg-buildpackage \&\-j\fR irá funcionar. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \-\-parallel .Ve .PP Se o seu pacote não pode ser compilado correctamente usando múltiplos processos, por favor passe \fB\-\-no\-parallel\fR ao dh (ou ao comando \&\fBdh_auto_\fR\fI*\fR relevante): .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \-\-no\-parallel .Ve .PP Aqui está um modo de prevenir que o \fBdh\fR corra vários comandos que você não quer que corram, ao definir metas de sobreposição vazias para cada comando. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \& \& # Comandos a não correr: \& override_dh_auto_test override_dh_compress override_dh_fixperms: .Ve .PP Pode-se separar um processo de compilação longo para um pacote de documentação separado usando sobreposições independentes da arquitectura. Estes serão saltados quando se corre as sequências build-arch e binary-arch. .PP .Vb 3 \& #!/usr/bin/make \-f \& %: \& dh $@ \& \& override_dh_auto_build\-indep: \& $(MAKE) \-C docs \& \& # Nenhum teste necessário para documentação \& override_dh_auto_test\-indep: \& \& override_dh_auto_install\-indep: \& $(MAKE) \-C docs install .Ve .PP Adicionando ao exemplo em cima, suponha que precisa de fazer chmod a um ficheiro, mas apenas quando compila o pacote dependente da arquitectura, pois ele não está presente quando compila apenas a documentação. .PP .Vb 3 \& override_dh_fixperms\-arch: \& dh_fixperms \& chmod 4755 debian/foo/usr/bin/foo .Ve .SH "INTERNOS" .IX Header "INTERNOS" Se você está curioso sobre o funcionamento interno do \fBdh\fR, aqui está como funciona por baixo da capota. .PP No modo compatibilidade 10 (ou posterior), o \fBdh\fR cria um ficheiro stamp após os passo(s) de compilação estarem completos para evitar voltar a corrê\-los. É possível evitar o ficheiro stamp ao passar \fB\-\-without=build\-stamp\fR para \fBdh\fR. Isto faz com que compilações \*(L"não limpas\*(R" se comportem mais como o que algumas pessoas esperam à custa de possivelmente correrem a compilação e testá\-la duas vezes (a segunda vez como root ou sob \fBfakeroot\fR\|(1)). .PP Dentro de uma meta de sobreposição, os comandos \fBdh_*\fR irão criar um ficheiro de registo \fIdebian/package.debhelper.log\fR para manter acompanhamento de para quais pacotes os comando(s) têm corrido. Estes ficheiros log são depois removidos assim que a meta de sobreposição estiver completa. .PP No modo de compatibilidade 9 e anteriores, cada comando do debhelper irá gravar em \fIdebian/pacote.debhelper.log\fR quando é corrido com sucesso. (O qual \fBdh_clean\fR apaga.) Portanto o \fBdh\fR consegue dizer quais comandos já foram corridos, para quais pacotes, e evita correr esses comandos de novo. .PP Each time \fBdh\fR is run (in compat 9 or earlier), it examines the log, and finds the last logged command that is in the specified sequence. It then continues with the next command in the sequence. .PP Uma sequência também pode correr metas dependentes em debian/rules. Por exemplo, a sequência \*(L"binary\*(R" corre a meta \*(L"install\*(R". .PP \&\fBdh\fR usa a variável de ambiente \fB\s-1DH_INTERNAL_OPTIONS\s0\fR para passar informação através dos comandos debhelper que são corridos dentro de metas de sobreposição. O conteúdo (e de facto a existência) desta variável de ambiente. como o nome sugere, está sujeito a alterações em qualquer altura. .PP Aos comandos nas sequências \fBbuild-indep\fR, \fBinstall-indep\fR e \&\fBbinary-indep\fR é passada a opção \fB\-i\fR para assegurar que eles apenas trabalham em pacotes independentes da arquitectura, e aos comandos nas sequências \fBbuild-arch\fR, \fBinstall-arch\fR e \fBbinary-arch\fR é passada a opção \&\fB\-a\fR para assegurar que eles apenas trabalham em pacotes dependentes da arquitectura. .SH "VEJA TAMBÉM" .IX Header "VEJA TAMBÉM" \&\fBdebhelper\fR\|(7) .PP Este programa é parte do debhelper. .SH "AUTOR" .IX Header "AUTOR" Joey Hess .SH "TRADUÇÃO" .IX Header "TRADUÇÃO" Américo Monteiro .PP Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro \fIa_monteiro@gmx.com\fR ou Equipa Debian de Tradução Portuguesa \fItraduz@debianpt.org\fR.