Provided by: debhelper_12.7.3ubuntu1_all bug

NOME

       dh - sequenciador de comandos do debhelper

RESUMO

       dh sequence [--with addon[,addon ...]] [--list] [debhelper opções]

DESCRIÇÃO

       dh corre uma sequência de comandos do debhelper. As sequências suportadas correspondem às
       metas de um ficheiro debian/rules: build-arch, build-indep, build, clean, install-indep,
       install-arch, install, binary-arch, binary-indep, e binary.

METAS DE SOBREPOSIÇÃO

       Um ficheiro debian/rules que use dh pode sobrepor o comando que é executado em qualquer
       passo numa sequência, ao se definir uma meta de sobreposição.

       Para sobrepor o dh_command, adicione uma meta chamada override_dh_command ao ficheiro de
       regras. Em vez de correr normalmente dh_command, o dh 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.

       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
       override_dh_command-arch e override_dh_command-indep. (Note que para usar esta
       funcionalidade, você deve usar Build-Depend em debhelper 8.9.7 ou posterior.)

OPÇÕES

       --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 PROGRAMMING para documentação acerca da sequência de interface de
           addons.

           A Build-Depends relation on the package dh-sequence-addon implies a --with addon. This
           avoids the need for an explicit --with in debian/rules that only duplicates what is
           already declared via the build dependencies in debian/control.  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
           bootstrapping).

           Since debhelper 12.5, addons can also be activated in indep-only mode (via Build-
           Depends-Indep) or arch-only mode (via Build-Depends-Arch). Such addons are only active
           in the particular sequence (e.g. binary-indep) which simplifies dependency management
           for cross-builds.

           Please note that addons activated via Build-Depends-Indep or Build-Depends-Arch 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 Build-Depends (or
           manually via debian/rules).  Currently, such addons can only add commands to
           sequences.

       --without addon
           O inverso de --with, 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.

       --list, -l
           Lista todos os addons disponíveis.

           When called only with this option, dh can be called from any directory (i.e. it does
           not need access to files from a source package).

       --no-act
           Escreve comandos que iriam correr para uma determinada sequência, mas não os corre.

           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.

       Outras opções passadas a dh são passadas a cada comando que ele corre. Isto pode ser usado
       para definir uma opção como -v ou -X ou -N, assim como para opções mais especializadas.

EXEMPLOS

       Para ver quais comandos estão incluídos numa sequência, sem realmente fazer nada:

               dh binary-arch --no-act

       Este é um ficheiro de regras muito simples, para pacotes onde as sequências de comandos
       predefinidas funcionam sem opções adicionais.

               #!/usr/bin/make -f
               %:
                       dh $@

       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.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_strip:
                       dh_strip -Xfoo

               override_dh_auto_configure:
                       dh_auto_configure -- --with-foo --disable-bar

       Por vezes os automatismos dh_auto_configure(1) e dh_auto_build(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.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_auto_configure:
                       ./mondoconfig

               override_dh_auto_build:
                       make universe-explode-in-delight

       Outro caso comum é esperar fazer algo manualmente antes ou depois de um comando debhelper
       particular ser executado.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_fixperms:
                       dh_fixperms
                       chmod 4755 debian/foo/usr/bin/foo

       Por predefinição, as ferramentas Python não são accionadas, devido às alterações contínuas
       nessa área. Aqui está como usar o dh_python2.

               #!/usr/bin/make -f
               %:
                       dh $@ --with python2

       Aqui está como forçar o uso do sistema de compilação Module::Build do Perl, o qual pode
       ser necessário e o debhelper erradamente detectar que o pacote usa MakeMaker.

               #!/usr/bin/make -f
               %:
                       dh $@ --buildsystem=perl_build

       Aqui está um exemplo de criar uma sobreposição ao local onde os comandos dh_auto_*
       encontram a fonte do pacote, para um pacote cuja fonte está localizada num sub-directório.

               #!/usr/bin/make -f
               %:
                       dh $@ --sourcedirectory=src

       E aqui está um exemplo de como dizer aos comandos dh_auto_* para compilarem num
       sub-directório, o qual será removido em clean.

               #!/usr/bin/make -f
               %:
                       dh $@ --builddirectory=build

       Se o seu pacote poder ser compilado em paralelo, por favor use compatibilidade 10 ou passe
       --parallel ao dh. Assim o dpkg-buildpackage -j irá funcionar.

               #!/usr/bin/make -f
               %:
                       dh $@ --parallel

       Se o seu pacote não pode ser compilado correctamente usando múltiplos processos, por favor
       passe --no-parallel ao dh (ou ao comando dh_auto_* relevante):

               #!/usr/bin/make -f
               %:
                       dh $@ --no-parallel

       Aqui está um modo de prevenir que o dh corra vários comandos que você não quer que corram,
       ao definir metas de sobreposição vazias para cada comando.

               #!/usr/bin/make -f
               %:
                       dh $@

               # Comandos a não correr:
               override_dh_auto_test override_dh_compress override_dh_fixperms:

       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.

               #!/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

       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.

               override_dh_fixperms-arch:
                       dh_fixperms
                       chmod 4755 debian/foo/usr/bin/foo

INTERNOS

       Se você está curioso sobre o funcionamento interno do dh, aqui está como funciona por
       baixo da capota.

       No modo compatibilidade 10 (ou posterior), o dh cria um ficheiro stamp
       <debian/debhelper-build-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
       --without=build-stamp para  dh.  Isto faz com que compilações "não limpas" 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 fakeroot(1)).

       Dentro de uma meta de sobreposição, os comandos dh_* irão criar um ficheiro de registo
       debian/package.debhelper.log 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.

       No modo de compatibilidade 9 e anteriores, cada comando do debhelper irá gravar em
       debian/pacote.debhelper.log quando é corrido com sucesso. (O qual dh_clean apaga.)
       Portanto o dh consegue dizer quais comandos já foram corridos, para quais pacotes, e evita
       correr esses comandos de novo.

       Each time dh 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.

       Uma sequência também pode correr metas dependentes em debian/rules. Por exemplo, a
       sequência "binary" corre a meta "install".

       dh usa a variável de ambiente DH_INTERNAL_OPTIONS 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.

       Aos comandos nas sequências build-indep, install-indep e binary-indep é passada a opção -i
       para assegurar que eles apenas trabalham em pacotes independentes da arquitectura, e aos
       comandos nas sequências build-arch, install-arch e binary-arch é passada a opção -a para
       assegurar que eles apenas trabalham em pacotes dependentes da arquitectura.

VEJA TAMBÉM

       debhelper(7)

       Este programa é parte do debhelper.

AUTOR

       Joey Hess <joeyh@debian.org>

TRADUÇÃO

       Américo Monteiro

       Se encontrar algum erro na tradução deste documento, por favor comunique para Américo
       Monteiro a_monteiro@gmx.com ou Equipa Debian de Tradução Portuguesa traduz@debianpt.org.