From owner-svn-doc-all@freebsd.org Sat Nov 9 13:35:40 2019 Return-Path: Delivered-To: svn-doc-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 4A5051AA0A1; Sat, 9 Nov 2019 13:35:40 +0000 (UTC) (envelope-from dbaio@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 479J701dS9z3Gpl; Sat, 9 Nov 2019 13:35:40 +0000 (UTC) (envelope-from dbaio@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 1BBEAF75E; Sat, 9 Nov 2019 13:35:40 +0000 (UTC) (envelope-from dbaio@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xA9DZdL6056187; Sat, 9 Nov 2019 13:35:39 GMT (envelope-from dbaio@FreeBSD.org) Received: (from dbaio@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xA9DZc7Z056183; Sat, 9 Nov 2019 13:35:38 GMT (envelope-from dbaio@FreeBSD.org) Message-Id: <201911091335.xA9DZc7Z056183@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dbaio set sender to dbaio@FreeBSD.org using -f From: "Danilo G. Baio" Date: Sat, 9 Nov 2019 13:35:38 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r53570 - head/pt_BR.ISO8859-1/books/porters-handbook X-SVN-Group: doc-head X-SVN-Commit-Author: dbaio X-SVN-Commit-Paths: head/pt_BR.ISO8859-1/books/porters-handbook X-SVN-Commit-Revision: 53570 X-SVN-Commit-Repository: doc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire doc trees \(except for " user" , " projects" , and " translations" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Nov 2019 13:35:40 -0000 Author: dbaio (ports committer) Date: Sat Nov 9 13:35:38 2019 New Revision: 53570 URL: https://svnweb.freebsd.org/changeset/doc/53570 Log: pt_BR/books/porters-handbook: Sync with en_US r53525 Fix several failing strings reported by Weblate (Quality checks). Approved by: ebrandi Obtained from: https://weblate.eastus.cloudapp.azure.com/projects/freebsd-doc/boooks_porters-handbook/pt_BR/ Differential Revision: https://reviews.freebsd.org/D22270 Modified: head/pt_BR.ISO8859-1/books/porters-handbook/book.xml head/pt_BR.ISO8859-1/books/porters-handbook/pt_BR.po Modified: head/pt_BR.ISO8859-1/books/porters-handbook/book.xml ============================================================================== --- head/pt_BR.ISO8859-1/books/porters-handbook/book.xml Sat Nov 9 10:42:15 2019 (r53569) +++ head/pt_BR.ISO8859-1/books/porters-handbook/book.xml Sat Nov 9 13:35:38 2019 (r53570) @@ -348,7 +348,7 @@ lib/X11/oneko/mouse.xpm Em seguida, crie um patch1 ou um arquivo shar1. Assumindo que o port é chamado oneko e está na categoria games. - Criando um <filename>.diff</filename> para um Novo Port. + Criando um <filename>.diff</filename> para um Novo Port Adicione todos os arquivos com svn add. Utilize o cd e vá para a base da árvore de ports, para que os caminhos completos dos arquivos alterados sejam incluídos no diff, então gere o diff com svn diff. Por exemplo: @@ -362,7 +362,7 @@ lib/X11/oneko/mouse.xpm - Criando um <filename>.shar</filename> para um Novo Port. + Criando um <filename>.shar</filename> para um Novo Port Utilize o cd e vá para o diretório acima de onde o diretório do port está localizado e use shar para criar o arquivo: @@ -376,7 +376,7 @@ lib/X11/oneko/mouse.xpm Dar uma boa descrição no resumo do relatório de problema facilita muito o trabalho dos commiters de ports. Preferimos algo como New port: category/portname breve descrição do port para novos ports. Usar este esquema torna mais fácil e rápido começar o trabalho para fazer o commit de um novo port. - Depois de enviar o port, por favor, seja paciente. O tempo necessário para incluir um novo port no FreeBSD pode variar de alguns dias até alguns meses. Um formulário simples de pesquisa no banco de dados do Relatório de Problemas está disponível em + Depois de enviar o port, por favor, seja paciente. O tempo necessário para incluir um novo port no FreeBSD pode variar de alguns dias até alguns meses. Um formulário simples de pesquisa no banco de dados do Relatório de Problemas está disponível em . Para obter uma listagem dos PRs abertos para os ports, selecione Open e Ports & Packages no formulário de pesquisa, clique em [ Search ]. @@ -409,7 +409,7 @@ lib/X11/oneko/mouse.xpm - O target extract é executado. Ele procura pelo arquivo de distribuição do port (normalmente um tarball compactado) em DISTDIR e irá descompactá-lo em um subdiretório temporário especificado por WRKDIR (padrão é work) + O target extract é executado. Ele procura pelo arquivo de distribuição do port (normalmente um tarball compactado) em DISTDIR e irá descompactá-lo em um subdiretório temporário especificado por WRKDIR (padrão é work). @@ -560,8 +560,12 @@ lib/X11/oneko/mouse.xpm Substituições simples podem ser realizadas diretamente do Makefile do port usando o modo in-loco do sed1. Isso é útil quando as alterações usam o valor de uma variável: post-patch: - @${REINPLACE_CMD} -e 's|for Linux|for FreeBSD|g' ${WRKSRC}/README + @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' ${WRKSRC}/Makefile + + Use o sed1 apenas para substituir conteúdo de variáveis. Você deve usar arquivos patch em vez do sed1 para substituir conteúdo estático. + + 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 /bin/sh^M não encontrado.) Para converter rapidamente todos os arquivos de CR/LF para apenas LF, adicione essa entrada ao Makefile do port: USES= dos2unix @@ -731,7 +735,7 @@ FOO_EXTRA_PATCHES= ${PATCHDIR}/foo-patches - 1.2 e 1.2 são iguais, pois têm a mesma versão. + 1.2 e 1.2 são iguais, pois têm a mesma versão. @@ -757,7 +761,7 @@ FOO_EXTRA_PATCHES= ${PATCHDIR}/foo-patches - Exemplos de <varname>DISTVERSION</varname> e de Derivações <varname>PORTVERSION</varname>. + Exemplos de <varname>DISTVERSION</varname> e de Derivações <varname>PORTVERSION</varname> @@ -960,7 +964,7 @@ PORTVERSION= 1.2p4Em situações como essa, PORTEPOCH deve ser incrementado. E se PORTEPOCH é diferente de zero, ele é anexado ao nome do pacote conforme descrito na seção 0 acima. PORTEPOCH nunca deve ser diminuído ou redefinido para zero, porque isso faria com que a comparação com um pacote de uma época anterior falhasse. Por exemplo, o pacote não seria detectado como desatualizado. O novo número da versão, 1.0.1 no exemplo acima, ainda é numericamente menor que a versão anterior, 20000801, mas o sufixo 1 é tratado especialmente por ferramentas automatizadas e considerado maior que o sufixo 0 implícito no pacote anterior. - Remover ou resetar o PORTEPOCH incorretamente conduz ao luto eterno. Se a discussão acima não foi clara o suficiente, por favor consulte a Lista de discussão de ports do FreeBSD + Remover ou resetar o PORTEPOCH incorretamente conduz ao luto eterno. Se a discussão acima não foi clara o suficiente, por favor consulte a Lista de discussão de ports do FreeBSD.É esperado que PORTEPOCH não seja utilizado na maioria dos ports, e que seja feito o uso sensato do DISTVERSION, ou que o PORTVERSION seja usado com cuidado também, isso muitas vezes pode evitar que uma versão futura do software altere a estrutura da versão. No entanto, é necessário que os porters do FreeBSD tenham cuidado quando uma versão do fornecedor é feita sem um número de versão oficial - como um código de release snapshot. A tentação é rotular a release com a data de lançamento, o que causará problemas como no exemplo acima, quando um novo release oficial é feito. @@ -1106,7 +1110,7 @@ PORTEPOCH= 111.0.1 - Esta é a versão 1 do mule e a versão 2 já existe. + Esta é a versão 1 do mule e a versão 2 já existe @@ -1276,7 +1280,7 @@ PORTEPOCH= 1 arabic - Suporte ao idioma árabe" + Suporte ao idioma árabe". @@ -1462,7 +1466,7 @@ PORTEPOCH= 1 ipv6 * - Software relacionado ao IPv6 + Software relacionado ao IPv6. @@ -1581,13 +1585,6 @@ PORTEPOCH= 1 - palm - - Suporte de software para a série Palm ™. - - - - parallel * Aplicativos que lidam com o paralelismo na computação. @@ -1614,7 +1611,7 @@ PORTEPOCH= 1 polish - Suporte ao idioma polonês" + Suporte ao idioma polonês". @@ -1669,7 +1666,7 @@ PORTEPOCH= 1 science - Ports científicos que não se encaixam em outras categorias, como astro, biologia e matemática + Ports científicos que não se encaixam em outras categorias, como astro, biologia e matemática. @@ -1706,7 +1703,7 @@ PORTEPOCH= 1 textproc Utilitários de processamento de texto. - Não inclui ferramentas de editoração eletrônica, que vão para print + Não inclui ferramentas de editoração eletrônica, que vão para print. @@ -1858,7 +1855,7 @@ PORTEPOCH= 1 Nossa prática atual tem sido a de evitar a criação de uma nova categoria física, a menos que um grande número de ports logicamente pertençam a ela, ou os ports que pertenceriam a ela sejam um grupo logicamente distinto de interesse geral limitado (por exemplo, categorias relacionadas com as línguas humanas faladas), ou de preferência ambas. - A razão para isto é que tal mudança cria uma quantidade grande de trabalho tanto para os committers quanto para todos os usuários que rastreiam alterações na coleção de ports. Além disso, propostas de alteração de categorias parecem naturalmente atrair controvérsias. (Talvez isso seja porque não há um consenso claro sobre quando uma categoria é grande o suficiente, nem quando as categorias devem ser apenas para propósitos de busca (e, portanto, qual número de categorias seria um número ideal), e assim por diante.). + A razão para isto é que tal mudança cria uma quantidade grande de trabalho tanto para os committers quanto para todos os usuários que rastreiam alterações na coleção de ports. Além disso, propostas de alteração de categorias parecem naturalmente atrair controvérsias. (Talvez isso seja porque não há um consenso claro sobre quando uma categoria é grande o suficiente, nem quando as categorias devem ser apenas para propósitos de busca (e, portanto, qual número de categorias seria um número ideal), e assim por diante.) Aqui está o procedimento: @@ -1876,7 +1873,7 @@ PORTEPOCH= 1 - Makefiles para os novos ports, uma vez que sejam recopiados + Makefiles para os novos ports, uma vez que sejam recopiados @@ -1888,7 +1885,7 @@ PORTEPOCH= 1 - Makefiles para ports que dependem dos ports antigos + Makefiles para ports que dependem dos ports antigos @@ -2074,7 +2071,7 @@ MASTER_SITE_SUBDIR= make Estes valores e variáveis ​​são definidos em Mk/bsd.sites.mk. Novas entradas são adicionadas com frequência, portanto, verifique a versão mais recente deste arquivo antes de enviar um port. - Para qualquer variável MASTER_SITE_FOO , a versão abreviada FOO pode ser utilizada. Por exemplo, use: + Para qualquer variável MASTER_SITE_FOO , a versão abreviada FOO pode ser utilizada. Por exemplo, use: MASTER_SITES= FOO @@ -2139,7 +2136,7 @@ MASTER_SITE_SUBDIR= make - Macros Mágicas de MASTER_SITES + Macros Mágicas de MASTER_SITES Várias macros mágicas existem para sites populares com uma estrutura de diretórios previsível. Para isso, basta usar a abreviação e o sistema escolherá um subdiretório automaticamente. Para um port nomeado Stardict, de versão 1.2.3 e hospedado no SourceForge, adicione esta linha: @@ -2391,7 +2388,7 @@ GH_TAGNAME= 6dbb17b MASTER_SITES será automaticamente definido para GH GHC e WRKSRC para ${WRKDIR}/pkg-6dbb17b. - 20140411 é a data do commit referenciada em GH_TAGNAME, não a data em que é editado o Makefile, ou a data em que o commit é feito. + 20140411 é a data do commit referenciada em GH_TAGNAME, não a data em que é editado o Makefile, ou a data em que o commit é feito. @@ -2420,7 +2417,7 @@ DISTVERSION= g20140411 USE_GITHUB= yes GH_TAGNAME= c472d66b - Isso cria um esquema de controle de versão que é incrementado com o tempo e que ainda é menor do que a versão 0 (veja para mais informações do pkg-version8): + Isso cria um esquema de controle de versão que é incrementado com o tempo e que ainda é menor do que a versão 0 (veja para mais informações do pkg-version8): % pkg version -t g20140411 0 < @@ -2436,7 +2433,7 @@ GH_TAGNAME= c472d66b % git describe --tags f0038b1 v0.7.3-14-gf0038b1 - v0.7.3-14-gf0038b1pode ser dividido em três partes: + v0.7.3-14-gf0038b1pode ser dividido em três partes: @@ -2493,9 +2490,9 @@ v0.7.3-0-gc66c71d Baixando Múltiplos Arquivos do GitHub - O framework USE_GITHUB também suporta a obtenção de vários arquivos de distribuição de diferentes locais no GitHub. Ele funciona de uma forma muito semelhante ao + O framework USE_GITHUB também suporta a obtenção de vários arquivos de distribuição de diferentes locais no GitHub. Ele funciona de uma forma muito semelhante ao . - Vários valores são adicionados a GH_ACCOUNT, GH_PROJECT e GH_TAGNAME. Cada valor diferente é atribuído a um grupo. O valor principal pode não ter nenhum grupo ou grupo :DEFAULT. Um valor pode ser omitido se for o mesmo que o padrão listado em + Vários valores são adicionados a GH_ACCOUNT, GH_PROJECT e GH_TAGNAME. Cada valor diferente é atribuído a um grupo. O valor principal pode não ter nenhum grupo ou grupo :DEFAULT. Um valor pode ser omitido se for o mesmo que o padrão listado em . GH_TUPLE também pode ser usado quando há muitos arquivos de distribuição. Isso ajuda a manter as informações de conta, projeto, tagname e grupo no mesmo lugar. @@ -2520,7 +2517,7 @@ v0.7.3-0-gc66c71d - Uso de <varname>USE_GITHUB</varname> com Vários Arquivos de Distribuição + Uso de <varname>USE_GITHUB</varname> com Vários Arquivos de Distribuição De tempos em tempos é necessário baixar mais de um arquivo de distribuição. Por exemplo, quando o repositório git do upstream usa submódulos. Isso pode ser feito facilmente usando grupos nas variáveis GH_*: @@ -2569,7 +2566,7 @@ CONFIGURE_ARGS= --with-contrib=${WRKSRC_contrib}O problema com submódulos é que cada um é um repositório separado. Como tal, cada um deve ser buscado separadamente. - Usando finances/moneymanagerex como exemplo, seu repositório GitHub é . Tem um arquivo .gitmodules na raiz. Este arquivo descreve todos os sub módulos usados ​​neste repositório e lista os repositórios adicionais necessários. Este arquivo irá dizer quais repositórios adicionais são necessários: + Usando finances/moneymanagerex como exemplo, seu repositório GitHub é . Tem um arquivo .gitmodules na raiz. Este arquivo descreve todos os sub módulos usados neste repositório e lista os repositórios adicionais necessários. Este arquivo irá dizer quais repositórios adicionais são necessários: [submodule "lib/wxsqlite3"] path = lib/wxsqlite3 @@ -2639,7 +2636,7 @@ GH_TUPLE= utelle:wxsqlite3:v3.4.0:wxsqlite3/lib/wxsqli <varname>USE_GITLAB</varname> - Semelhante ao GitHub, se o arquivo de distribuição vier de gitlab.com ou se estiver hospedado com o software GitLab, essas variáveis ​​estão disponíveis para uso e talvez precisem ser definidas. + Semelhante ao GitHub, se o arquivo de distribuição vier de gitlab.com ou se estiver hospedado com o software GitLab, essas variáveis estão disponíveis para uso e talvez precisem ser definidas.
<varname>USE_GITLAB</varname> Descrição @@ -2661,7 +2658,7 @@ GH_TUPLE= utelle:wxsqlite3:v3.4.0:wxsqlite3/lib/wxsqli GL_ACCOUNT - Nome da conta do usuário do GitLab hospedando o projeto + Nome da conta do usuário do GitLab hospedando o projeto ${PORTNAME} @@ -2709,7 +2706,7 @@ GL_COMMIT= e90302e342bfd27bc8c9132ab9d0ea3d8723fd03

Uso Mais Completo de <varname>USE_GITLAB</varname> - Um uso mais completo do exemplo acima é se o port não tiver controle de versão e foobar do usuário foo no projeto bar em um GitLab auto hospedado em https://gitlab.example.com, o Makefile acaba ficando assim para buscar os arquivos de distribuição: + Um uso mais completo do exemplo acima é se o port não tiver controle de versão e foobar do usuário foo no projeto bar em um GitLab auto hospedado em https://gitlab.example.com, o Makefile acaba ficando assim para buscar os arquivos de distribuição:PORTNAME= foobar DISTVERSION= g20170906 @@ -2782,7 +2779,7 @@ CONFIGURE_ARGS= --with-contrib=${WRKSRC_contrib}Todos os arquivos de distribuição são extraídos no ${WRKDIR} em seus respectivos subdiretórios. O arquivo padrão ainda é extraído no ${WRKSRC}, nesse caso, ${WRKDIR}/foo-c189207a55da45305c884fe2b50e086fcad4724b-c189207a55da45305c884fe2b50e086fcad4724b. Cada arquivo de distribuição adicional é extraído em ${WRKSRC_group}. Aqui, para o grupo icons, é chamado ${WRKSRC_icons} e contém ${WRKDIR}/foo-icons-ae7368cab1ca7ca754b38d49da064df87968ffe4-ae7368cab1ca7ca754b38d49da064df87968ffe4. O arquivo com o grupo contrib é chamado ${WRKSRC_contrib} e contém ${WRKDIR}/foo-contrib-9e4dd76ad9b38f33fdb417a4c01935958d5acd2a-9e4dd76ad9b38f33fdb417a4c01935958d5acd2a. - O sistema de compilação do software espera encontrar os ícones em um subdiretório ext/icons em seus fontes, então GL_SUBDIR é usado.GL_SUBDIR garante que ext existe, mas não que ext/icons também exista. Então isso acontece: + O sistema de compilação do software espera encontrar os ícones em um subdiretório ext/icons em seus fontes, então GL_SUBDIR é usado.GL_SUBDIR garante que ext existe, mas não que ext/icons também exista. Então isso acontece: post-extract: @${MV} ${WRKSRC_icons} ${WRKSRC}/ext/icons @@ -2791,7 +2788,7 @@ CONFIGURE_ARGS= --with-contrib=${WRKSRC_contrib} Uso de <varname>USE_GITLAB</varname> com Vários Arquivos de Distribuição Usando <varname>GL_TUPLE</varname> - Isto é funcionalmente equivalente a mas usando GL_TUPLE: + Isto é funcionalmente equivalente a mas usando GL_TUPLE: PORTNAME= foo DISTVERSION= 1.0.2 @@ -2828,9 +2825,9 @@ EXTRACT_SUFX= .tar.gzip <varname>DISTFILES</varname> - Às vezes os nomes dos arquivos a serem baixados não têm semelhança com o nome do port. Por exemplo, pode ser chamado source.tar.gz ou similar. Em outros casos, o código-fonte do aplicativo pode estar em vários arquivos diferentes, e todos eles devem ser baixados. + Às vezes os nomes dos arquivos a serem baixados não têm semelhança com o nome do port. Por exemplo, pode ser chamado source.tar.gz ou similar. Em outros casos, o código-fonte do aplicativo pode estar em vários arquivos diferentes, e todos eles devem ser baixados. - Se este for o caso, defina DISTFILES para ser uma lista separada por espaços de todos os arquivos que devem ser baixados. + Se este for o caso, defina DISTFILES para ser uma lista separada por espaços de todos os arquivos que devem ser baixados. DISTFILES= source1.tar.gz source2.tar.gz @@ -2859,14 +2856,14 @@ EXTRACT_ONLY= source.tar.gzNão se preocupe se os patches estiverem compactados; eles serão descompactados automaticamente se os nomes dos arquivos terminarem com .Z, .gz, .bz2 ou .xz. - Se o patch for distribuído com alguns outros arquivos, como documentação, em um arquivo compactado, o uso de PATCHFILES não será possível. Se for esse o caso, adicione o nome e a localização do arquivo do patch em DISTFILES e MASTER_SITES. Então, use EXTRA_PATCHES para apontar para esses arquivos e o bsd.port.mk irá aplicá-los automaticamente. Em particular, não copie os arquivos de patch em ${PATCHDIR}. Esse diretório pode não ter permissão de escrita. + Se o patch for distribuído com alguns outros arquivos, como documentação, em um arquivo compactado, o uso de PATCHFILES não será possível. Se for esse o caso, adicione o nome e a localização do arquivo do patch em DISTFILES e MASTER_SITES. Então, use EXTRA_PATCHES para apontar para esses arquivos e o bsd.port.mk irá aplicá-los automaticamente. Em particular, não copie os arquivos de patch em ${PATCHDIR}. Esse diretório pode não ter permissão de escrita. Se houver vários patches e eles precisarem de valores mistos para o parâmetro strip, ele poderá ser adicionado ao lado do nome do patch em PATCHFILES, por exemplo: PATCHFILES= patch1 patch2:-p1 - Isto não entra em conflito com o recurso de agrupamento de sites principais, adicionando um grupo também funciona: + Isto não entra em conflito com o recurso de agrupamento de sites principais, adicionando um grupo também funciona: PATCHFILES= patch2:-p1:source2 @@ -2881,7 +2878,7 @@ EXTRACT_ONLY= source.tar.gz(Considere isto como um tópico avançado; a princípio, aqueles que são novos neste documento podem desejar pular esta seção). - Esta seção contém informações sobre o mecanismo de busca conhecido como MASTER_SITES:n e MASTER_SITES_NN. Vamos nos referir a este mecanismo como MASTER_SITES:n + Esta seção contém informações sobre o mecanismo de busca conhecido como MASTER_SITES:n e MASTER_SITES_NN. Vamos nos referir a este mecanismo como MASTER_SITES:n.Um pouco de background primeiro. O OpenBSD tem um ótimo recurso dentro do DISTFILES e PATCHFILES que permite que arquivos e pacthes sejam pós fixados com identificadores :n. Aqui, n pode ser qualquer palavra que contenha [0-9a-zA-Z_] e signifique uma designação de grupo. Por exemplo: @@ -2906,11 +2903,11 @@ EXTRACT_ONLY= source.tar.gzEsta seção explica como preparar rapidamente a busca de vários arquivos de distribuição e patches de diferentes sites e subdiretórios. Descrevemos aqui um caso de uso de MASTER_SITES:n. Isso será suficiente para a maioria dos cenários. Informações mais detalhadas estão disponíveis em . - Alguns aplicativos consistem em vários arquivos de distribuição que devem ser baixados de vários sites diferentes. Por exemplo, Ghostscript consiste no núcleo do programa e, em seguida, um grande número de arquivos de driver que são usados ​​dependendo da impressora do usuário. Alguns desses arquivos de driver são fornecidos com o núcleo, mas muitos outros devem ser baixados de uma variedade de sites diferentes. + Alguns aplicativos consistem em vários arquivos de distribuição que devem ser baixados de vários sites diferentes. Por exemplo, Ghostscript consiste no núcleo do programa e, em seguida, um grande número de arquivos de driver que são usados dependendo da impressora do usuário. Alguns desses arquivos de driver são fornecidos com o núcleo, mas muitos outros devem ser baixados de uma variedade de sites diferentes.Para suportar isso, cada entrada no DISTFILES pode ser seguida por dois pontos e um nome de grupo. Cada site listado em MASTER_SITES é então seguido por dois pontos, e o grupo que indica quais arquivos de distribuição são baixados deste site. - Por exemplo, considere um aplicativo com a divisão do código fonte em duas partes, source1.tar.gz e source2.tar.gz, que deve ser baixado de dois sites diferentes. O Makefile do port incluiria linhas como + Por exemplo, considere um aplicativo com a divisão do código fonte em duas partes, source1.tar.gz e source2.tar.gz, que deve ser baixado de dois sites diferentes. O Makefile do port incluiria linhas como . @@ -2985,15 +2982,15 @@ DISTFILES= source1.tar.gz:source1 \ - Todos os sites dentro de um determinado grupo são ordernados de acordo com MASTER_SORT_AWK. Todos os grupos dentro de MASTER_SITES e PATCH_SITES são ordenados também. + Todos os sites dentro de um determinado grupo são ordernados de acordo com MASTER_SORT_AWK. Todos os grupos dentro de MASTER_SITES e PATCH_SITES são ordenados também. - A semântica de grupo pode ser usada em qualquer uma das variáveis MASTER_SITES, PATCH_SITES, MASTER_SITE_SUBDIR, PATCH_SITE_SUBDIR, DISTFILES e PATCHFILES de acordo com esta sintaxe: + A semântica de grupo pode ser usada em qualquer uma das variáveis MASTER_SITES, PATCH_SITES, MASTER_SITE_SUBDIR, PATCH_SITE_SUBDIR, DISTFILES e PATCHFILES de acordo com esta sintaxe: - Todos elementos MASTER_SITES, PATCH_SITES, MASTER_SITE_SUBDIR e PATCH_SITE_SUBDIR devem ser terminados com o caractere barra /. Se algum elemento pertencer a algum grupo, o grupo de pós-fixação :n deve vir logo após o terminador /. O mecanismo MASTER_SITES:n depende da existência do terminador / para evitar confundir elementos onde um :n é uma parte válida do elemento com ocorrências em que :n denota grupo n. Para fins de compatibilidade, uma vez que o terminador / não for necessário antes em ambos elementos MASTER_SITE_SUBDIR e PATCH_SITE_SUBDIR, se o caractere precedente imediato da pós-fixação não for / então :n s erá considerada uma parte válida do elemento em vez de uma pós-fixação de grupo, mesmo que um elemento n seja pós-fixado. Veja ambos e + Todos elementos MASTER_SITES, PATCH_SITES, MASTER_SITE_SUBDIR e PATCH_SITE_SUBDIR devem ser terminados com o caractere barra /. Se algum elemento pertencer a algum grupo, o grupo de pós-fixação :n deve vir logo após o terminador /. O mecanismo MASTER_SITES:n depende da existência do terminador / para evitar confundir elementos onde um :n é uma parte válida do elemento com ocorrências em que :n denota grupo n. Para fins de compatibilidade, uma vez que o terminador / não for necessário antes em ambos elementos MASTER_SITE_SUBDIR e PATCH_SITE_SUBDIR, se o caractere precedente imediato da pós-fixação não for / então :n s erá considerada uma parte válida do elemento em vez de uma pós-fixação de grupo, mesmo que um elemento n seja pós-fixado. Veja ambos e . @@ -3067,7 +3064,7 @@ MASTER_SITE_SUBDIR= directory-trial:1 directory-n/:gro - arquivo2 será baixado exatamente como o arquivo1 já que ambos pertencem ao mesmo grupo + arquivo2 será baixado exatamente como o arquivo1 já que ambos pertencem ao mesmo grupo @@ -3153,7 +3150,7 @@ MASTER_SITE_SUBDIR= directory-trial:1 directory-n/:gro - arquivo5 será obtido a partir de + arquivo5 será obtido a partir de @@ -3201,7 +3198,7 @@ MASTER_SITE_SUBDIR= directory-trial:1 directory-n/:gro MASTER_SITES= http://site1/SF/something/1.0:sourceforge,TEST DISTFILES= something.tar.gz:sourceforge - something.tar.gz será obtido por todos os sites do SourceForge. + something.tar.gz será obtido por todos os sites do SourceForge. @@ -3271,7 +3268,7 @@ PATCHFILES= patch1:testNão deixe o /usr/ports/distfiles bagunçado. Se um port exigir que muitos arquivos sejam baixados, ou que contenha um arquivo que tenha um nome que possa entrar em conflito com outros ports (por exemplo, Makefile), defina DIST_SUBDIR com o nome do port (${PORTNAME} ou ${PKGNAMEPREFIX}${PORTNAME}). Isso vai mudar o DISTDIR do padrão /usr/ports/distfiles para /usr/ports/distfiles/${DIST_SUBDIR},e assim, será colocado tudo o que é necessário para o port nesse subdiretório. - Ele também examinará o subdiretório com o mesmo nome no site principal de backup em http://distcache.FreeBSD.org (Configurar o DISTDIR explicitamente no Makefile não fará isso funcionar, então por favor use DIST_SUBDIR. + Ele também examinará o subdiretório com o mesmo nome no site principal de backup em http://distcache.FreeBSD.org (Configurar o DISTDIR explicitamente no Makefile não fará isso funcionar, então por favor use DIST_SUBDIR.) Isso não afeta o MASTER_SITES definido no Makefile. @@ -3291,7 +3288,7 @@ PATCHFILES= patch1:test Um mantenedor se voluntaria para manter um port em bom estado de funcionamento. Os mantenedores têm a responsabilidade primária por seus ports, mas não possuem propriedade exclusiva. Os ports existem para o benefício da comunidade e, na realidade, pertencem à comunidade. O que isso significa é que outras pessoas além do mantenedor, também podem fazer alterações em um port. Grandes mudanças na Coleção de Ports podem exigir mudanças em muitos ports. A Equipe de Gerenciamento do Ports do FreeBSD ou membros de outras equipes podem modificar ports para corrigir problemas de dependência ou outros problemas, como um bump de versão para uma atualização de biblioteca compartilhada. - Alguns tipos de correções tem aprovação implícita da Equipe de Gerenciamento de Ports portmgr@FreeBSD.org, permitindo que qualquer committer conserte essas categorias de problemas em qualquer port. Essas correções não precisam de aprovação do mantenedor. A aprovação implícita não se aplica a ports que são mantidos por times como autotools@FreeBSD.org, x11@FreeBSD.org, gnome@FreeBSD.org ou kde@FreeBSD.org. Esses times usam repositórios externos e podem ter alterações que entrariam em conflito com mudanças que normalmente seriam abrangidas pela aprovação implícita. + Alguns tipos de correções tem aprovação implícita da Equipe de Gerenciamento do Ports portmgr@FreeBSD.org, permitindo que qualquer committer conserte essas categorias de problemas em qualquer port. Essas correções não precisam da aprovação do mantenedor. Aprovação implícita para a maioria dos ports se aplicam para correções como mudanças de infraestrutura, trivialidades e correções testadas de compilação e execução. A lista atual está disponibilizada em Seção Ports do Guia dos Committers. @@ -3300,7 +3297,7 @@ PATCHFILES= patch1:test Reservamo-nos o direito de modificar as submissões do mantenedor para melhor adequar as políticas e os estilos existentes da Coleção de Ports sem aprovação explicita do remetente ou do mantenedor. Além disso, grandes alterações de infraestrutura podem resultar na modificação de um port sem o consentimento do mantenedor. Estes tipos de alterações nunca irão afetar a funcionalidade do port. - A Equipe de Gerenciamento de Ports portmgr@FreeBSD.org reserva o direito de revogar ou substituir a propriedade de mantenedor de qualquer pessoa por qualquer motivo, e a Equipe de Oficiais de Segurança security-officer@FreeBSD.org reserva o direito de revogar ou substituir a propriedade de mantenedor por razões de segurança. + A Equipe de Gerenciamento de Ports portmgr@FreeBSD.org reserva o direito de revogar ou substituir a propriedade de mantenedor de qualquer pessoa por qualquer motivo, e a Equipe de Oficiais de Segurança security-officer@FreeBSD.org reserva o direito de revogar ou substituir a propriedade de mantenedor por razões de segurança. @@ -3314,7 +3311,7 @@ PATCHFILES= patch1:test - Não inclua o nome do pacote ou o número da versão do software. + Não inclua o nome do pacote ou o número da versão do software. @@ -4138,7 +4135,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING no-pkg-sell - A venda de pacotes é proibida. Isso é equivalente a definir NO_CDROM. O pacote não estará presente nas imagens do instalador. + A venda de pacotes é proibida. Isso é equivalente a definir NO_CDROM. O pacote não estará presente nas imagens do instalador. @@ -4146,7 +4143,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING auto-accept - A licença é aceita por padrão. Os prompts para aceitar uma licença não são exibidos a menos que o usuário tenha definido LICENSES_ASK. Use isto, a menos que a licença indique que o usuário deve aceitar os termos da licença. + A licença é aceita por padrão. Os prompts para aceitar uma licença não são exibidos a menos que o usuário tenha definido LICENSES_ASK. Use isto, a menos que a licença indique que o usuário deve aceitar os termos da licença. @@ -4195,7 +4192,7 @@ LICENSE_NAME_WARSOW= Warsow Content License LICENSE_FILE_WARSOW= ${WRKSRC}/docs/license.txt LICENSE_PERMS_WARSOW= dist-mirror pkg-mirror auto-accept - Quando as permissões das licenças GPLv2 e UNKNOWN são misturadas, o port termina com dist-mirror dist-sell pkg-mirror pkg-sell auto-accept dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept. O no-permissions cancela as permissions. A lista resultante de permissões é dist-mirror pkg-mirror auto-accept. Os arquivos de distribuição e os pacotes não estarão disponíveis nas imagens do instalador. + Quando as permissões das licenças GPLv2 e UNKNOWN são misturadas, o port termina com dist-mirror dist-sell pkg-mirror pkg-sell auto-accept dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept. O no-permissions cancela as permissions. A lista resultante de permissões é dist-mirror pkg-mirror auto-accept. Os arquivos de distribuição e os pacotes não estarão disponíveis nas imagens do instalador. @@ -4341,7 +4338,7 @@ LICENSE_FILE_GPLv1= ${WRKSRC}/Copying Múltiplas Licenças - Quando parte de um port tem uma licença, e outra parte tem uma licença diferente, use multi: + Quando parte de um port tem uma licença, e outra parte tem uma licença diferente, use multi: LICENSE= GPLv2 LGPL21+ LICENSE_COMB= multi @@ -4357,7 +4354,7 @@ LICENSE_COMB= multi PORTSCOUT define condições especiais dentro das quais o scanner distfile do Portscout é restrito. - Situações em que o PORTSCOUT é configurado: + Situações em que o PORTSCOUT é configurado: @@ -4367,13 +4364,13 @@ LICENSE_COMB= multi - Quando versões específicas ou revisões maiores e menores específicas de um distfile devem ser verificadas. Por exemplo, se somente a versão 0.6.4 deve ser monitorado porque versões mais recentes têm problemas de compatibilidade com o FreeBSD, adicione: + Quando versões específicas ou revisões maiores e menores específicas de um distfile devem ser verificadas. Por exemplo, se somente a versão 0.6.4 deve ser monitorado porque versões mais recentes têm problemas de compatibilidade com o FreeBSD, adicione: PORTSCOUT= limit:^0\.6\.4 - Quando os URLs que listam as versões disponíveis diferem dos URLs de download. Por exemplo, para limitar as verificações de versão do arquivo distfile à página de download para o port databases/pgtune, adicione: + Quando os URLs que listam as versões disponíveis diferem dos URLs de download. Por exemplo, para limitar as verificações de versão do arquivo distfile à página de download para o port databases/pgtune, adicione: PORTSCOUT= site:http://pgfoundry.org/frs/?group_id=1000416 @@ -4385,6 +4382,10 @@ LICENSE_COMB= multi Muitos ports dependem de outros ports. Esta é uma característica muito conveniente da maioria dos sistemas operacionais Unix-like, incluindo FreeBSD. Vários ports podem compartilhar uma dependência comum, ao invés de agrupar essa dependência com cada port ou pacote que precisa dela. Há sete variáveis ​​que podem ser usadas para garantir que todos os bits necessários estejam na máquina do usuário. Existem também algumas variáveis ​​de dependência pré-suportadas para casos comuns, além de algumas outras para controlar o comportamento das dependências. + + Quando o software possui dependências extras que fornecem recursos extras, as dependências básicas listadas em *_DEPENDS devem incluir as dependências extras que beneficiariam a maioria dos usuários. As dependências básicas nunca devem ser um conjunto de dependências mínima. O objetivo não é incluir todas as dependências possíveis. Inclua apenas aquelas que beneficiarão a maioria das pessoas. + + <varname>LIB_DEPENDS</varname> @@ -4394,34 +4395,34 @@ LICENSE_COMB= multi irá verificar se há uma biblioteca jpeg compartilhada com qualquer versão no subdiretório graphics/jpeg da árvore de ports para compilar e instalar se não for encontrado. - A dependência é verificada duas vezes, uma vez dentro do target build e depois dentro do target install. Além disso, o nome da dependência é colocado no pacote para que o pkg-install (veja pkg-install8) a instale automaticamente se a mesma não estiver no sistema do usuário. + A dependência é verificada duas vezes, uma vez dentro do target build e depois dentro do target install. Além disso, o nome da dependência é colocado no pacote para que o pkg-install (veja pkg-install8) a instale automaticamente se a mesma não estiver no sistema do usuário. <varname>RUN_DEPENDS</varname> - Esta variável especifica arquivos executáveis ​​ou arquivos para os quais este port depende durante o tempo de execução. É uma lista de tuplas path:dir:target onde path é o nome do executável ou arquivo,dir é o diretório no qual encontrá-lo, caso não esteja disponível, e o target é o target para chamar nesse diretório. E se o path começar com uma barra (/), ele será tratado como um arquivo e sua existência é testada com test -e; caso contrário, é assumido como um executável e which -s é usado para determinar se o programa existe no caminho de pesquisa. + Esta variável especifica arquivos executáveis ou arquivos para os quais este port depende durante o tempo de execução. É uma lista de tuplas path:dir:target onde path é o nome do executável ou arquivo,dir é o diretório no qual encontrá-lo, caso não esteja disponível, e o target é o target para chamar nesse diretório. E se o path começar com uma barra (/), ele será tratado como um arquivo e sua existência é testada com test -e; caso contrário, é assumido como um executável e which -s é usado para determinar se o programa existe no caminho de pesquisa. Por exemplo, RUN_DEPENDS= ${LOCALBASE}/news/bin/innd:news/inn \ xmlcatmgr:textproc/xmlcatmgr - irá verificar se o arquivo ou diretório /usr/local/news/bin/innd existe, e compilar e instalá-lo a partir do subdiretório news/inn da árvore de ports, caso não seja encontrado. Ele também verá se um executável chamado xmlcatmgr está no caminho de pesquisa em textproc/xmlcatmgr para compilar e instalar se não for encontrado. + irá verificar se o arquivo ou diretório /usr/local/news/bin/innd existe, e compilar e instalá-lo a partir do subdiretório news/inn da árvore de ports, caso não seja encontrado. Ele também verá se um executável chamado xmlcatmgr está no caminho de pesquisa em textproc/xmlcatmgr para compilar e instalar se não for encontrado. Nesse caso, innd é na verdade um executável; se um executável estiver em um local que não deve estar no caminho de pesquisa, use o nome do caminho completo. - A pesquisa oficial PATH usado no cluster de construção de ports é + A pesquisa oficial PATH usado no cluster de construção de ports é /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin A dependência é verificada a partir do target install. Além disso, o nome da dependência é colocado no pacote para que o pkg-install (veja pkg-install8) a instale automaticamente se a mesma não estiver no sistema do usuário. A parte target pode ser omitida se for igual a DEPENDS_TARGET. - Uma situação bastante comum é quando RUN_DEPENDS é literalmente o mesmo que BUILD_DEPENDS, especialmente se o software portado é escrito em uma linguagem de script ou se requer o mesmo ambiente de compilação e tempo de execução. Neste caso, é tentador e intuitivo atribuir diretamente um ao outro: + Uma situação bastante comum é quando RUN_DEPENDS é literalmente o mesmo que BUILD_DEPENDS, especialmente se o software portado é escrito em uma linguagem de script ou se requer o mesmo ambiente de compilação e tempo de execução. Neste caso, é tentador e intuitivo atribuir diretamente um ao outro: RUN_DEPENDS= ${BUILD_DEPENDS} @@ -4458,7 +4459,7 @@ RUN_DEPENDS= ${MY_DEPENDS} FETCH_DEPENDS= ncftp2:net/ncftp2 - irá procurar por um executável chamado ncftp2 e ir para o subdiretório net/ncftp2 da árvore de ports para compilar e instalar se não for encontrado. + irá procurar por um executável chamado ncftp2 e ir para o subdiretório net/ncftp2 da árvore de ports para compilar e instalar se não for encontrado. A dependência é verificada a partir do target fetch. A parte target pode ser omitida se for igual a DEPENDS_TARGET. @@ -4486,7 +4487,7 @@ RUN_DEPENDS= ${MY_DEPENDS} PATCH_DEPENDS= ${NONEXISTENT}:java/jfc:extract - vai descer para o subdiretório java/jfc da árvore de ports para extraí-lo. + vai descer para o subdiretório java/jfc da árvore de ports para extraí-lo. A dependência é verificada a partir do target patch. A parte target pode ser omitida se for igual a DEPENDS_TARGET. @@ -4511,7 +4512,7 @@ RUN_DEPENDS= ${MY_DEPENDS} Diversas variáveis ​​existem para definir dependências comuns compartilhadas por muitos ports. O uso é opcional, mas ajuda a reduzir a verbosidade dos Makefiles de port . Cada um deles é denominado como USES_*. Essas variáveis ​​podem ser usadas apenas no Makefile do port e ports/Mk/bsd.*.mk. Elas não são destinadas a opções configuráveis ​​pelo usuário - use PORT_OPTIONS para esse propósito. - É sempre incorreto definir qualquer USE_* dentro de /etc/make.conf. Por exemplo, definindo + É sempre incorreto definir qualquer USE_* dentro de /etc/make.conf. Por exemplo, definindo USE_GCC=X.Y @@ -4568,7 +4569,7 @@ RUN_DEPENDS= ${MY_DEPENDS} BUILD_DEPENDS= ${NONEXISTENT}:graphics/jpeg:extract - sempre descerá para o port jpeg e extrai-lo. + sempre descerá para o port jpeg e extrai-lo. @@ -5013,6 +5014,7 @@ SUB_LIST+= OPT1="@comment " NO_OPT1="" Quando a opção OPT é selecionada, para cada par key=value em OPT_USE, value é anexado ao USE_KEY correspondente. E se value tiver espaços, substitua-os por vírgulas e eles serão alterados de volta para espaços durante o processamento. OPT_USE_OFF funciona da mesma maneira, quando OPT não for selecionada. Por exemplo: OPTIONS_DEFINE= OPT1 +OPT1_USES= xorg OPT1_USE= mysql=yes xorg=x11,xextproto,xext,xrandr OPT1_USE_OFF= openssl=yes @@ -5024,6 +5026,7 @@ OPT1_USE_OFF= openssl=yes .if ${PORT_OPTIONS:MOPT1} USE_MYSQL= yes +USES+= xorg USE_XORG= x11 xextproto xext xrandr .else USE_OPENSSL= yes @@ -5111,7 +5114,7 @@ CONFIGURE_ARGS+= --no-test .endif - Na maioria das vezes, os assistentes em e fornecem uma funcionalidade mais curta e abrangente. + Na maioria das vezes, os assistentes em e fornecem uma funcionalidade mais curta e abrangente. @@ -5141,7 +5144,7 @@ CMAKE_ARGS+= -DOPTIMIZE:BOOL=true .endif - Veja para um assistente mais curto quando o valor for booleano. + Veja para um assistente mais curto quando o valor for booleano. @@ -5293,7 +5296,7 @@ QMAKE_ARGS+= -DPRODUCTION:BOOL=true Fornece uma maneira de adicionar dependências entre as opções. - Quando OPT for selecionada, todas as opções listadas nesta variável também serão selecionadas. Usando o OPT_CONFIGURE_ENABLE descrito anteriormente para demonstrar: + Quando OPT for selecionada, todas as opções listadas nesta variável também serão selecionadas. Usando o OPT_CONFIGURE_ENABLE descrito anteriormente para demonstrar: OPTIONS_DEFINE= OPT1 OPT2 OPT1_IMPLIES= OPT2 @@ -5327,6 +5330,7 @@ CONFIGURE_ARGS+= --disable-opt2 OPTIONS_DEFINE= X11 GNOME OPTIONS_DEFAULT= X11 +X11_USES= xorg X11_USE= xorg=xi,xextproto GNOME_USE= gnome=gtk30 GNOME_IMPLIES= X11 @@ -5354,12 +5358,12 @@ OPT1_PREVENTS_MSG= OPT1 and OPT2 enable conflicting op BROKEN= Option OPT1 conflicts with OPT2 (select only one) .endif - A única diferença é que o primeiro irá apresentar um erro depois de executar make config, sugerindo alterar as opções selecionadas. + A única diferença é que o primeiro irá apresentar um erro depois de executar make config, sugerindo alterar as opções selecionadas. Uso Simples de <varname><replaceable>OPT</replaceable>_PREVENTS</varname> - Este port tem as opções X509 e SCTP. Ambas as opções adicionam patches, mas os patches entram em conflito uns com os outros, então eles não podem ser selecionados ao mesmo tempo. + Este port tem as opções X509 e SCTP. Ambas as opções adicionam patches, mas os patches entram em conflito uns com os outros, então eles não podem ser selecionados ao mesmo tempo. OPTIONS_DEFINE= X509 SCTP @@ -5417,7 +5421,7 @@ BIN3_BUILD= no OPT_VARS= foo="bar baz" - Isso se deve ao jeito que a variável de expansão make1 lida com espaço em branco. Quando a opção OPT_VARS=foo=bar baz é expandida, a variável acaba contendo duas strings, foo=bar e baz. Mas quem está submetendo o código provavelmente pretendia que houvesse apenas uma string, foo=bar baz. Inserir o valor entre aspas impede que o espaço em branco seja usado como um delimitador. + Isso se deve ao jeito que a variável de expansão make1 lida com espaço em branco. Quando a opção OPT_VARS=foo=bar baz é expandida, a variável acaba contendo duas strings, foo=bar e baz. Mas quem está submetendo o código provavelmente pretendia que houvesse apenas uma string, foo=bar baz. Inserir o valor entre aspas impede que o espaço em branco seja usado como um delimitador. Além disso, não adicione espaços extras após o símbolo var= e antes do valor, pois assim também seria dividido o valor em duas strings. Isso não irá funcionar: @@ -5695,7 +5699,7 @@ CFLAGS+= -DTEST Algumas dessas variáveis, pelo menos ALL_TARGET, DISTFILES e INSTALL_TARGET, tem seus valores padrão definidos depois das opções serem processadas. - Com estas linhas no Makefile: + Com estas linhas no Makefile: ALL_TARGET= all @@ -5811,14 +5815,11 @@ DOCS_ALL_TARGET= doc OPTIONS_DEFINE= OPT1 -post-patch: - @${REINPLACE_CMD} -e 's/echo/true/' ${WRKSRC}/Makefile - post-patch-OPT1-on: - @${REINPLACE_CMD} -e '/opt1/d' ${WRKSRC}/Makefile + @${REINPLACE_CMD} -e '/opt1/s|/usr/bin/|${EXAMPLESDIR}/|' ${WRKSRC}/Makefile post-patch-OPT1-off: - @${REINPLACE_CMD} -e '/opt1/s|/usr/bin/|${LOCALBASE}/bin/|' ${WRKSRC}/Makefile + @${REINPLACE_CMD} -e '/opt1/s|/usr/bin/|${PREFIX}/bin/|' ${WRKSRC}/Makefile é equivalente a: @@ -5827,11 +5828,10 @@ post-patch-OPT1-off: .include <bsd.port.options.mk> post-patch: - @${REINPLACE_CMD} -e 's/echo/true/' ${WRKSRC}/Makefile .if ${PORT_OPTIONS:MOPT1} - @${REINPLACE_CMD} -e '/opt1/d' ${WRKSRC}/Makefile + @${REINPLACE_CMD} -e '/opt1/s|/usr/bin/|${EXAMPLESDIR}/|' ${WRKSRC}/Makefile .else - @${REINPLACE_CMD} -e '/opt1/s|/usr/bin/|${LOCALBASE}/bin/|' ${WRKSRC}/Makefile + @${REINPLACE_CMD} -e '/opt1/s|/usr/bin/|${PREFIX}/bin/|' ${WRKSRC}/Makefile .endif @@ -5845,7 +5845,7 @@ post-patch: PORTNAME= foo DISTVERSION= 1.0 - então os arquivos de distribuição do port contêm um diretório de nível superior, foo-1.0, e o resto dos arquivos estão localizados nesse diretório. + então os arquivos de distribuição do port contêm um diretório de nível superior, foo-1.0, e o resto dos arquivos estão localizados nesse diretório. Diversas variáveis ​​podem ser substituídas se não for esse o caso. @@ -5891,7 +5891,7 @@ DISTVERSION= 1.0 As variáveis ​​de conflito definem automaticamente a variável IGNORE, que é mais amplamente documentada em . - Ao remover um dos vários ports conflitados, é aconselhável reter CONFLICTS nos outros ports por alguns meses para atender usuários que apenas fazem atualizações de vez em quando. + Ao remover um dos vários ports conflitados, é aconselhável reter CONFLICTS nos outros ports por alguns meses para atender usuários que apenas fazem atualizações de vez em quando. @@ -5913,7 +5913,7 @@ DISTVERSION= 1.0 CONFLICTS - Se o port não puder ser compilado quando um certo port estiver instalado e o pacote final não puder coexistir com o outro pacote. A checagem CONFLICTS é feita antes do estágio de compilação e antes do estágio de instalação. + Se o port não puder ser compilado quando um certo port estiver instalado e o pacote final não puder coexistir com o outro pacote. A checagem CONFLICTS é feita antes do estágio de compilação e antes do estágio de instalação. @@ -5930,7 +5930,7 @@ bind99 % make -C dns/bind910 -V PKGBASE bind910 - Então adicione ao Makefile do dns/bind99: + Então adicione ao Makefile do dns/bind99: CONFLICTS_INSTALL= bind910 @@ -6042,7 +6042,7 @@ bind910 ${MKDIR} ${STAGEDIR}${EXAMPLESDIR} (cd ${WRKSRC}/examples && ${COPYTREE_SHARE} .${STAGEDIR}${EXAMPLESDIR}) - Este exemplo irá instalar o conteúdo do diretório exemples do distfile do fornecedor para o local de exemplos apropriado do port. + Este exemplo irá instalar o conteúdo do diretório exemples do distfile do fornecedor para o local de exemplos apropriado do port. post-install: ${MKDIR} ${STAGEDIR}${DATADIR}/summer @@ -6050,7 +6050,7 @@ bind910 E este exemplo irá instalar os dados dos meses de verão no subdiretório summer de um DATADIR. - Argumentos find adicionais podem ser passados ​​através do terceiro argumento para COPYTREE_*. Por exemplo, para instalar todos os arquivos do primeiro exemplo, exceto Makefiles, é possível usar esses comandos. + Argumentos find adicionais podem ser passados através do terceiro argumento para COPYTREE_*. Por exemplo, para instalar todos os arquivos do primeiro exemplo, exceto Makefiles, é possível usar esses comandos. post-install: ${MKDIR} ${STAGEDIR}${EXAMPLESDIR} @@ -6075,7 +6075,7 @@ bind910 Por outro lado, se houver uma opção DOCS no port, instale a documentação em um taget post-install-DOCS-on. Esses targets são descritos em . - Aqui estão algumas variáveis ​​úteis e como elas são expandidas por padrão quando usadas no Makefile: + Aqui estão algumas variáveis úteis e como elas são expandidas por padrão quando usadas no Makefile: @@ -6095,7 +6095,7 @@ bind910 - EXEMPLESDIR é expandido para PREFIX/share/examples/PORTNAME. + EXEMPLESDIR é expandido para PREFIX/share/examples/PORTNAME. @@ -6107,7 +6107,7 @@ bind910 A opção DOCS controla apenas a documentação adicional instalada em DOCSDIR. Não se aplica a páginas de manual e páginas de informações padrão. Arquivos instalados em EXEMPLESDIR são controlados pela opção EXEMPLES. - Essas variáveis ​​são exportadas para PLIST_SUB. Quando possível, seus valores aparecerão como nomes de caminho relativos ao PREFIX. Isso é, por padrão share/doc/PORTNAME será substituído por %%DOCSDIR%% na lista de empacotamento e assim por diante. (Saiba mais sobre substituições pkg-plist aqui. + Essas variáveis são exportadas para PLIST_SUB. Quando possível, seus valores aparecerão como nomes de caminho relativos ao PREFIX. Isso é, por padrão share/doc/PORTNAME será substituído por %%DOCSDIR%% na lista de empacotamento e assim por diante. (Saiba mais sobre substituições pkg-plist aqui.)Todos os arquivos e diretórios de documentação instalados condicionalmente são incluídos no pkg-plist com o prefixo %%PORTDOCS%%, por exemplo: @@ -6257,7 +6257,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} - Segurança + Segurança Se vulnerabilidades forem encontradas na biblioteca e arrumadas no upstream, elas podem não ser consertadas na biblioteca empacotada com o port. Uma razão pode ser que o autor não esteja ciente do problema. Isto significa que o mantenedor do port deve consertá-las, ou atualizar para uma versão não vulnerável e enviar um patch para o autor. Isso tudo leva tempo, o que resulta em software vulnerável por mais tempo do que o necessário. Isso, por sua vez, torna mais difícil coordenar uma correção sem vazamento desnecessário de informações sobre a vulnerabilidade. @@ -6294,7 +6294,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} Licenciamento - Ao agrupar projetos de diferentes fontes, os problemas de licença podem surgir com mais facilidade, especialmente quando as licenças são incompatíveis. + Ao agrupar projetos de diferentes fontes, os problemas de licença podem surgir com mais facilidade, especialmente quando as licenças são incompatíveis. @@ -6302,7 +6302,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} Desperdício de recursos - Bibliotecas empacotadas desperdiçam recursos em vários níveis. Demora mais para compilar o aplicativo real, especialmente se essas bibliotecas já estiverem presentes no sistema. Em tempo de execução, elas podem ocupar memória desnecessária quando a biblioteca do sistema já está carregada por um programa e a biblioteca agrupada é carregada por outro programa. + Bibliotecas empacotadas desperdiçam recursos em vários níveis. Demora mais para compilar o aplicativo real, especialmente se essas bibliotecas já estiverem presentes no sistema. Em tempo de execução, elas podem ocupar memória desnecessária quando a biblioteca do sistema já está carregada por um programa e a biblioteca agrupada é carregada por outro programa. @@ -6321,7 +6321,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} Sempre que possível, use a versão separada da biblioteca adicionando um LIB_DEPENDS para o port. Se esse port ainda não existir, considere criá-lo. - Use bibliotecas agrupadas somente se o upstream tiver um bom histórico de segurança e se o uso de versões não agrupadas originarem patches excessivamente complexos + Use bibliotecas agrupadas somente se o upstream tiver um bom histórico de segurança e se o uso de versões não agrupadas originarem patches excessivamente complexos. Em alguns casos muito especiais, por exemplo, emuladores, como o Wine, um port tem que agrupar bibliotecas, porque elas estão em uma arquitetura diferente ou foram modificadas para se adequarem ao uso do software. Nesse caso, essas bibliotecas não devem ser expostas a outros ports para vinculação. Adicione BUNDLE_LIBS=yes no Makefile do port. Isso vai dizer ao pkg8 para não computar as bibliotecas fornecidas. Pergunte sempre à equipe de gerenciamento do ports portmgr@FreeBSD.org antes de adicionar isso a um port. @@ -6336,7 +6336,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} USE_LDCONFIG= yes - O diretório padrão pode ser substituído configurando a variável USE_LDCONFIG para uma lista de diretórios nos quais as bibliotecas compartilhadas devem ser instaladas. Por exemplo, se o port instalar bibliotecas compartilhadas em PREFIX/lib/foo e PREFIXO/lib/bar utilize isso no Makefile: + O diretório padrão pode ser substituído configurando a variável USE_LDCONFIG para uma lista de diretórios nos quais as bibliotecas compartilhadas devem ser instaladas. Por exemplo, se o port instalar bibliotecas compartilhadas em PREFIX/lib/foo e PREFIXO/lib/bar utilize isso no Makefile: USE_LDCONFIG= ${PREFIX}/lib/foo ${PREFIX}/lib/bar @@ -6344,9 +6344,9 @@ BINARY_ALIAS= python3=${PYTHON_CMD} Ao instalar bibliotecas de 32 bits em um sistema de 64 bits, use USE_LDCONFIG32 como alternativa. - Se o software usa o autotools, e especificamente, o libtool, adicione USES=libtool + Se o software usa o autotools, e especificamente, o libtool, adicione USES=libtool. - Quando o número da versão da biblioteca principal aumenta na atualização para a nova versão do port, todos os outros ports que se vinculam à biblioteca afetada devem ter seu PORTREVISION incrementado, para forçar a recompilação com a nova versão da biblioteca. + Quando o número da versão da biblioteca principal aumenta na atualização para a nova versão do port, todos os outros ports que se vinculam à biblioteca afetada devem ter seu PORTREVISION incrementado, para forçar a recompilação com a nova versão da biblioteca. @@ -6355,7 +6355,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} As licenças variam e algumas delas impõem restrições sobre como o aplicativo pode ser empacotado, se pode ser vendido com fins lucrativos e assim por diante. - É de responsabilidade de um mantenedor de um port ler os termos de licenciamento do software e certificar-se de que o projeto do FreeBSD não será responsabilizado por violá-los, redistribuindo o código fonte ou os binários compilados via FTP/HTTP ou CD-ROM. Se estiver em dúvida, entre em contato com a Lista de discussão de ports do FreeBSD + É de responsabilidade de um mantenedor de um port ler os termos de licenciamento do software e certificar-se de que o projeto do FreeBSD não será responsabilizado por violá-los, redistribuindo o código fonte ou os binários compilados via FTP/HTTP ou CD-ROM. Se estiver em dúvida, entre em contato com a Lista de discussão de ports do FreeBSD. Em situações como esta, as variáveis ​​descritas nas próximas seções podem ser definidas. @@ -6365,19 +6365,19 @@ BINARY_ALIAS= python3=${PYTHON_CMD} Esta variável indica que não podemos gerar um pacote binário da aplicação. Por exemplo, a licença pode proibir a redistribuição binária, ou pode proibir a distribuição de pacotes criados a partir de código adaptado. - No entanto, o DISTFILES 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 NO_CDROM esteja definida também. + No entanto, o DISTFILES 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 NO_CDROM esteja definida também. - Se o pacote binário geralmente não é útil, e o aplicativo sempre deve ser compilado a partir do código-fonte, use o NO_PACKAGE. Por exemplo, se o aplicativo tiver informações de configuração específicas do site codificadas nele em tempo de compilação, defina o NO_PACKAGE + Se o pacote binário geralmente não é útil, e o aplicativo sempre deve ser compilado a partir do código-fonte, use o NO_PACKAGE. Por exemplo, se o aplicativo tiver informações de configuração específicas do site codificadas nele em tempo de compilação, defina o NO_PACKAGE. - Defina a variável NO_PACKAGE para uma string descrevendo o motivo pelo qual o pacote não pode ser gerado. + Defina a variável NO_PACKAGE para uma string descrevendo o motivo pelo qual o pacote não pode ser gerado. <varname>NO_CDROM</varname> - Esta variável sozinha indica que, embora tenhamos permissão para gerar pacotes binários, não podemos colocar nem esses pacotes nem o DISTFILES em um CD-ROM (ou mídia similar) para revenda. No entanto, os pacotes binários e os DISTFILES do ports ainda estarão disponíveis via FTP/HTTP. + Esta variável sozinha indica que, embora tenhamos permissão para gerar pacotes binários, não podemos colocar nem esses pacotes nem o DISTFILES em um CD-ROM (ou mídia similar) para revenda. No entanto, os pacotes binários e os DISTFILES do ports ainda estarão disponíveis via FTP/HTTP. - Se esta variável for definida junto com NO_PACKAGE, então apenas o DISTFILES do port estará disponível e somente via FTP/HTTP. + Se esta variável for definida junto com NO_PACKAGE, então apenas o DISTFILES do port estará disponível e somente via FTP/HTTP. Defina a variável NO_CDROM para uma string descrevendo o motivo pelo qual o port não pode ser redistribuído em CD-ROM. Por exemplo, use isto se a licença do port for somente para uso não comercial. @@ -6385,7 +6385,7 @@ BINARY_ALIAS= python3=${PYTHON_CMD} <varname>NOFETCHFILES</varname> - Arquivos definidos em NOFETCHFILES não podem ser obtidos de nenhum dos MASTER_SITES. Um exemplo de tal tipo de arquivo é quando o arquivo é fornecido apenas em CD-ROM pelo fornecedor. + Arquivos definidos em NOFETCHFILES não podem ser obtidos de nenhum dos MASTER_SITES. Um exemplo de tal tipo de arquivo é quando o arquivo é fornecido apenas em CD-ROM pelo fornecedor. Ferramentas que verificam a disponibilidade desses arquivos nos MASTER_SITES devem ignorar estes arquivos e não informar nada sobre eles. @@ -6403,14 +6403,14 @@ BINARY_ALIAS= python3=${PYTHON_CMD} <varname>RESTRICTED_FILES</varname> - Quando a variável RESTRICT ou a NO_CDROM está definida, o valor padrão normalmente contém ${DISTFILES}${PATCHFILES} caso contrário, ela fica vazia. Se apenas alguns dos arquivos da distribuição forem restritos, defina essa variável para listá-los. + Quando a variável RESTRICT ou a NO_CDROM está definida, o valor padrão normalmente contém ${DISTFILES}${PATCHFILES} caso contrário, ela fica vazia. Se apenas alguns dos arquivos da distribuição forem restritos, defina essa variável para listá-los. <varname>LEGAL_TEXT</varname> - Se o port tem preocupações legais as quais não foram abordadas pelas variáveis ​​acima, defina a variável LEGAL_TEXT para uma string explicando a preocupação. Por exemplo, se o FreeBSD obteve uma permissão especial para redistribuir o binário, esta variável deve indicar isso. + Se o port tem preocupações legais as quais não foram abordadas pelas variáveis acima, defina a variável LEGAL_TEXT para uma string explicando a preocupação. Por exemplo, se o FreeBSD obteve uma permissão especial para redistribuir o binário, esta variável deve indicar isso. @@ -6440,12 +6440,12 @@ IGNORE= may not be redistributed because of licensing Compilando Ports em Paralelo - O framework de ports do FreeBSD suporta compilação paralela usando múltiplos subprocessos do comando make, o que permite que os sistemas SMP utilizem todo o poder disponível da CPU, permitindo que as compilações dos ports sejam mais rápidas e eficazes. + O framework de ports do FreeBSD suporta compilação paralela usando múltiplos subprocessos do comando make, o que permite que os sistemas SMP utilizem todo o poder disponível da CPU, permitindo que as compilações dos ports sejam mais rápidas e eficazes. Isso é alcançado passando-se a flag -jX para o make1 executando no código do fornecedor. Este é o comportamento de compilação padrão dos ports. Infelizmente, nem todos os ports lidam bem com compilações paralelas e pode ser necessário desabilitar explicitamente esse recurso adicionando a variável MAKE_JOBS_UNSAFE=yes. Ela é usada quando um port é conhecido por não funcionar com a opção -jX devido a race conditions e problemas de compilação intermitentes. - Ao definir a variável MAKE_JOBS_UNSAFE, é muito importante explicar com um comentário no Makefile, ou pelo menos na mensagem de commit, porque o port não pode ser compilado quando ela está ativa. Caso contrário, é quase impossível corrigir o problema ou testar se ele foi corrigido ao efetuar o commit de uma atualização em uma data posterior. + Ao definir a variável MAKE_JOBS_UNSAFE, é muito importante explicar com um comentário no Makefile, ou pelo menos na mensagem de commit, porque o port não pode ser compilado quando ela está ativa. Caso contrário, é quase impossível corrigir o problema ou testar se ele foi corrigido ao efetuar o commit de uma atualização em uma data posterior. @@ -6482,7 +6482,7 @@ IGNORE= may not be redistributed because of licensing GNU_CONFIGURE - O port usa o script configure para preparar a construção. + O port usa o script configure para preparar a construção. @@ -6497,7 +6497,7 @@ IGNORE= may not be redistributed because of licensing CONFIGURE_ENV - Variáveis ​​de ambiente adicionais a serem definidas para execução de script configure. + Variáveis de ambiente adicionais a serem definidas para execução de script configure. @@ -6512,7 +6512,7 @@ IGNORE= may not be redistributed because of licensing Usando o <command>cmake</command> - Para ports que usam CMake, defina USES=cmake + Para ports que usam CMake, defina USES=cmake.
Variáveis ​​para ports que usam o <command>cmake</command> @@ -6586,7 +6586,7 @@ IGNORE= may not be redistributed because of licensing Exemplo de <literal>USES=cmake</literal> - Este trecho demonstra o uso do CMake para um port. O CMAKE_SOURCE_PATH 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. + Este trecho demonstra o uso do CMake para um port. O CMAKE_SOURCE_PATH 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. USES= cmake CMAKE_SOURCE_PATH= ${WRKSRC}/subproject @@ -6605,7 +6605,7 @@ CMAKE_OFF= VAR3 CMAKE_ARGS= -DVAR1:BOOL=TRUE -DVAR2:BOOL=TRUE -DVAR3:BOOL=FALSE - Isto é apenas para os valores padrão desativados do CMAKE_ARGS. Os helpers descritos em usam a mesma semântica, mas para valores opcionais. + Isto é apenas para os valores padrão desativados do CMAKE_ARGS. Os helpers descritos em usam a mesma semântica, mas para valores opcionais. @@ -6613,19 +6613,19 @@ CMAKE_OFF= VAR3 Usando <command>scons</command> - Se o port usa SCons, definir USES=scons + Se o port usa SCons, definir USES=scons. - Para fazer os SConstruct de terceiros respeitarem tudo o que é passado para SCons no ambiente (isto é, o mais importante, CC/CXX/CFLAGS/CXXFLAGS), altere o SConstruct para que o Evironment de compilação fique da seguinte forma: + Para fazer os SConstruct de terceiros respeitarem tudo o que é passado para SCons no ambiente (isto é, o mais importante, CC/CXX/CFLAGS/CXXFLAGS), altere o SConstruct para que o Evironment de compilação fique da seguinte forma: env = Environment(**ARGUMENTS) - Ele poderá então ser modificado com env.Append e env.Replace + Ele poderá então ser modificado com env.Append e env.Replace. - Usando <command>cargo</command> + Compilando Aplicações <application>Rust</application> com <command>cargo</command> - Para ports que usam Cargo, defina USES=cargo + Para ports que usam Cargo, defina USES=cargo.
Variáveis ​​que os Usuários Podem Configurar para Compilar <command>cargo</command> @@ -6661,7 +6661,7 @@ CMAKE_OFF= VAR3 CARGO_CARGOLOCK ${WRKSRC}/Cargo.lock - O caminho para o Cargo.lock que será utilizado para o make cargo-crates. É possível especificar mais de um arquivo de bloqueio quando necessário. + O caminho para o Cargo.lock que será utilizado para o make cargo-crates. É possível especificar mais de um arquivo de bloqueio quando necessário. @@ -6751,7 +6751,7 @@ CMAKE_OFF= VAR3 CARGO_DIST_SUBDIR rust/crates - Diretório relativo a DISTDIR onde os arquivos de distribuição do crate serão armazenados. + Diretório relativo a DISTDIR onde os arquivos de distribuição do crate serão armazenados. @@ -6802,7 +6802,7 @@ GH_ACCOUNT= Aaronepower fetch: https://codeload.github.com/Aaronepower/tokei/tar.gz/v7.0.2?dummy=/Aaronepower-tokei-v7.0.2_GH0.tar.gz: size of remote file is not known Aaronepower-tokei-v7.0.2_GH0.tar.gz 45 kB 239 kBps 00m00s - Agora o arquivo de distribuição está pronto para uso e podemos ir em frente e extrair as dependências crate do pacote Cargo.lock: + Agora o arquivo de distribuição está pronto para uso e podemos ir em frente e extrair as dependências crate do pacote Cargo.lock: % make cargo-crates *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***