The translation is temporarily closed for contributions due to maintenance, please come back later.
English Portuguese (Brazil)
This section describes how to quickly create a new port. For applications where this quick method is not adequate, the full <quote>Slow Porting</quote> process is described in <xref linkend="slow-porting"/>. Esta seção descreve como criar rapidamente um novo port. Para aplicativos em que esse método rápido não for adequado, o processo <quote>Slow Porting</quote> está descrito no <xref linkend="slow-porting"/>.
This setting enables the <quote>developer mode</quote> that displays deprecation warnings and activates some further quality checks on calling <command>make</command>. Esta configuração habilita o <quote>modo de desenvolvedor</quote> que exibe avisos sobre a descontinuidade de comandos e ativa algumas verificações de qualidade adicionais nas execuções do comando <command>make</command>.
Usage of <varname>PLIST_FILES</varname> should not be abused. When looking for the origin of a file, people usually try to <application>grep</application> through the <filename>pkg-plist</filename> files in the ports tree. Listing files in <varname>PLIST_FILES</varname> in the <filename>Makefile</filename> makes that search more difficult. Uso de <varname>PLIST_FILES</varname> não deve ser abusado. Ao procurar pela origem de um arquivo, as pessoas geralmente tentam usar o <application>grep</application> através do <filename>pkg-plist</filename> nos arquivos na árvore de ports. Listar os arquivos na variável <varname>PLIST_FILES</varname> dentro do <filename>Makefile</filename> torna esta busca mais difícil.
As <varname>PLIST_FILES</varname> is a <citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></citerefentry> variable, any entry with spaces must be quoted. For example, if using keywords described in <citerefentry><refentrytitle>pkg-create</refentrytitle><manvolnum>8</manvolnum></citerefentry> and <xref linkend="plist-keywords"/>, the entry must be quoted. Como <varname>PLIST_FILES</varname> é uma variavel do <citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></citerefentry>, qualquer entrada com espaços deve ser envolvida por aspas. Por exemplo, se estiver usando palavras-chave descritas em <citerefentry><refentrytitle>pkg-create</refentrytitle><manvolnum>8</manvolnum></citerefentry> e na <xref linkend="plist-keywords"/>, a entrada deve ser citada.
Make sure that <command>make package</command> can be run as a normal user (that is, not as <systemitem class="username">root</systemitem>). If that fails, the software may need to be patched. See also <xref linkend="uses-fakeroot"/> and <xref linkend="uses-uidfix"/>. Certifique-se de que o comando <command>make package</command> pode ser executado como um usuário normal (ou seja, não como <systemitem class="username">root</systemitem>). Se isso falhar, talvez seja necessário corrigir o software. Veja a <xref linkend="uses-fakeroot"/> e também a <xref linkend="uses-uidfix"/>.
Quite often, software being ported uses the CR/LF convention in source files. This may cause problems with further patching, compiler warnings, or script execution (like <literal>/bin/sh^M not found</literal>.) To quickly convert all files from CR/LF to just LF, add this entry to the port <filename>Makefile</filename>: Muitas vezes, o software sendo portado usa a convenção CR/LF nos arquivos fonte. Isso pode causar problemas com correções adicionais, avisos do compilador ou execução de scripts (como <literal>/bin/sh^M não encontrado</literal>.) Para converter rapidamente todos os arquivos de CR/LF para apenas LF, adicione essa entrada ao <filename>Makefile</filename> do port:
All sites within a given group are sorted according to <varname>MASTER_SORT_AWK</varname>. All groups within <varname>MASTER_SITES</varname> and <varname>PATCH_SITES</varname> are sorted as well. Todos os sites dentro de um determinado grupo são ordernados de acordo com <varname>MASTER_SORT_AWK</varname>. Todos os grupos dentro de <varname>MASTER_SITES</varname> e <varname>PATCH_SITES</varname> são ordenados também.
Blanket approval for most ports applies to fixes like infrastructure changes, or trivial and <emphasis>tested</emphasis> build and runtime fixes. The current list is available in <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/committers-guide/ports.html#ports-qa-misc-blanket-approval">Ports section of the Committer's Guide</link>. Aprovação implícita para a maioria dos ports se aplicam para correções como mudanças de infraestrutura, trivialidades e correções <emphasis>testadas</emphasis> de compilação e execução. A lista atual está disponibilizada em <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/articles/committers-guide/ports.html#ports-qa-misc-blanket-approval">Seção Ports do Guia dos Committers</link>.
When the permissions of the GPLv2 and the UNKNOWN licenses are mixed, the port ends up with <literal>dist-mirror dist-sell pkg-mirror pkg-sell auto-accept dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept</literal>. The <literal>no-<replaceable>permissions</replaceable></literal> cancel the <replaceable>permissions</replaceable>. The resulting list of permissions are <replaceable>dist-mirror pkg-mirror auto-accept</replaceable>. The distribution files and the packages will not be available on the installer images. Quando as permissões das licenças GPLv2 e UNKNOWN são misturadas, o port termina com <literal>dist-mirror dist-sell pkg-mirror pkg-sell auto-accept dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept</literal>. O <literal>no-<replaceable>permissions</replaceable></literal> cancela as <replaceable>permissions</replaceable>. A lista resultante de permissões é <replaceable>dist-mirror pkg-mirror auto-accept</replaceable>. Os arquivos de distribuição e os pacotes não estarão disponíveis nas imagens do instalador.
The problem with trying to automatically add dependencies is that files and settings outside an individual port can change at any time. For example: an index is built, then a batch of ports are installed. But one of the ports installs the tested file. The index is now incorrect, because an installed port unexpectedly has a new dependency. The index may still be wrong even after rebuilding if other ports also determine their need for dependencies based on the existence of other files. O problema em tentar adicionar dependências automaticamente é que os arquivos e configurações fora de um port individual podem ser alterados a qualquer momento. Por exemplo: um índice é construído, depois um lote de ports é instalado. Mas um dos ports instala o arquivo testado. O índice então fica incorreto, porque um port instalado inesperadamente tem uma nova dependência. O índice ainda pode estar errado mesmo após a recriação, se outros ports também determinarem a necessidade de dependências com base na existência de outros arquivos.
Two macros exist for this situation. The advantage of using these macros instead of <command>cp</command> is that they guarantee proper file ownership and permissions on target files. The first macro, <varname>COPYTREE_BIN</varname>, will set all the installed files to be executable, thus being suitable for installing into <filename>PREFIX/bin</filename>. The second macro, <varname>COPYTREE_SHARE</varname>, does not set executable permissions on files, and is therefore suitable for installing files under <filename>PREFIX/share</filename> target. Existem duas macros para essa situação. A vantagem de usar essas macros em vez de <command>cp</command> é que elas garantem a propriedade e permissão adequada dos arquivos nos arquivos de destino. A primeira macro, <varname>COPYTREE_BIN</varname>, irá definir todos os arquivos instalados como sendo executáveis, sendo assim, adequado para instalações em <filename>PREFIX/bin</filename>. A segunda macro,<varname>COPYTREE_SHARE</varname>, não define permissões de execução nos arquivos e, portanto, é adequado para instalar arquivos sob o destino <filename>PREFIX/share</filename>.
Some ports expect <command>sed</command> to behave like <application>GNU sed</application> and use features that <citerefentry><refentrytitle>sed</refentrytitle><manvolnum>1</manvolnum></citerefentry> does not provide. <application>GNU sed</application> is available from <package role="port">textproc/gsed</package> on FreeBSD. Alguns ports esperam que o <command>sed</command> se comporte como o <application>GNU sed</application> e utilizam recursos que o <citerefentry><refentrytitle>sed</refentrytitle><manvolnum>1</manvolnum></citerefentry> não possui. <application>GNU sed</application> está disponível em <package role="port">textproc/gsed</package> no FreeBSD.
Using <varname>BINARY_ALIAS</varname> to Provide Aliases for Hardcoded <command>python3</command> Commands Usando <varname>BINARY_ALIAS</varname> Para Fornecer Aliases para Comandos <command>python3</command> Codificado
Please double-check, often this is not necessary at all or can be avoided through <literal>-rpath</literal> or setting <envar>LD_RUN_PATH</envar> during linking (see <package role="port">lang/mosml</package> for an example), or through a shell-wrapper which sets <varname>LD_LIBRARY_PATH</varname> before invoking the binary, like <package role="port">www/seamonkey</package> does. Por favor, verifique novamente, muitas vezes isso não é necessário ou é algo que pode ser evitado através do uso da opção <literal>-rpath</literal> ou da configuração da variável <envar>LD_RUN_PATH</envar> durante a fase de vinculação (consulte <package role="port">lang/mosml</package> para um exemplo), ou através de um shell-wrapper que defina o <varname>LD_LIBRARY_PATH</varname> antes de executar o binário, como por exemplo o <package role="port">www/seamonkey</package> faz.
However, the port's <varname>DISTFILES</varname> may be freely mirrored on FTP/HTTP. They may also be distributed on a CD-ROM (or similar media) unless <varname>NO_CDROM</varname> is set as well. No entanto, o <varname>DISTFILES</varname> do port pode ser livremente espelhado no FTP/HTTP. Eles também podem ser distribuídos em um CD-ROM (ou mídia similar), a menos que a variável <varname>NO_CDROM</varname> esteja definida também.
Do not set <varname>NO_CDROM</varname> or <varname>NO_PACKAGE</varname> along with <varname>RESTRICTED</varname>, since the latter variable implies the former ones. Não defina as variáveis <varname>NO_CDROM</varname> ou <varname>NO_PACKAGE</varname> juntamente com a variável <varname>RESTRICT</varname>, uma vez que esta última variável implica as anteriores.
<varname>MAKE_CMD</varname> can be used to reference the specific command configured by the <literal>USES</literal> setting in the port's <filename>Makefile</filename>. Only use <varname>MAKE_CMD</varname> within the application <filename>Makefile</filename>s in <varname>WRKSRC</varname> to call the <command>make</command> implementation expected by the ported software. A variável <varname>MAKE_CMD</varname> pode ser usada para referenciar o comando específico configurado pelo <literal>USES</literal> no <filename>Makefile</filename> do port. Use o <varname>MAKE_CMD</varname> apenas dentro dos <filename>Makefile</filename>s do aplicativo no <varname>WRKSRC</varname> para chamar o comando <command>make</command> para a implementação esperada pelo software portado.
If the port is an X application that uses <application>imake</application> to create <filename>Makefile</filename>s from <filename>Imakefile</filename>s, set <literal>USES= imake</literal>.. See the <link linkend="uses-imake"><literal>USES=imake</literal></link> section of <xref linkend="uses"/> for more details. Se o port é um aplicativo X que usa o <application>Imake</application> para criar o <filename>Makefile</filename> do <filename>Imakefile</filename>, defina <literal>USES=imake</literal>. Veja a seção sobre <link linkend="uses-imake"><literal>USES=imake</literal></link> no <xref linkend="uses"/> para mais detalhes.
If the port uses the <command>configure</command> script to generate <filename>Makefile</filename> from <filename>Makefile.in</filename>, set <literal>GNU_CONFIGURE=yes</literal>. To give extra arguments to the <command>configure</command> script (the default argument is <literal>--prefix=${PREFIX} --infodir=${PREFIX}/${INFO_PATH} --mandir=${MANPREFIX}/man --build=${CONFIGURE_TARGET}</literal>), set those extra arguments in <varname>CONFIGURE_ARGS</varname>. Extra environment variables can be passed using <varname>CONFIGURE_ENV</varname>. Se o port usa o script <command>configure</command> para gerar <filename>Makefile</filename>s a partir do <filename>Makefile.in</filename> defina <literal>GNU_CONFIGURE=yes</literal>. Para dar argumentos extras ao script <command>configure</command> (o argumento padrão é <literal>--prefix=${PREFIX} --infodir=${PREFIX}/${INFO_PATH} --mandir = ${MANPREFIX}/man --build = ${CONFIGURE_TARGET}</literal>), defina estes argumentos extras em <varname>CONFIGURE_ARGS</varname>. Variáveis ​​de ambiente extras podem ser passadas usando <varname>CONFIGURE_ENV</varname>.
This snippet demonstrates the use of <application>CMake</application> for a port. <varname>CMAKE_SOURCE_PATH</varname> is not usually required, but can be set when the sources are not located in the top directory, or if only a subset of the project is intended to be built by the port. Este trecho demonstra o uso do <application>CMake</application> para um port. O <varname>CMAKE_SOURCE_PATH</varname> geralmente não é necessário, mas pode ser definido quando os fontes não estão localizados no diretório superior ou se apenas um subconjunto do projeto for compilado pelo port.