Free Pascal package guidelines (Português)

From ArchWiki
Status de tradução: Esse artigo é uma tradução de Free Pascal package guidelines. Data da última tradução: 2018-10-31. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.
Diretrizes de pacotes do Arch

32-bitCLRCMakeCrossDKMSEclipseElectronFonteFree PascalGNOMEGoHaskellJavaKDEKernelLispMesonMinGWNode.jsNonfreeOCamlPerlPHPPythonRRubyRustVCSWebWine

Esta página explica como escrever PKGBUILDs para software construído com o Free Pascal Compiler (FPC). Atualmente, existem duas opções para a criação de software do Linux, bem como várias opções para construir software em outros destinos usando compiladores cruzados do FPC:

  • fpc fornece um compilador visando apenas a CPU de seu host (x86_64 somente).
  • fpc-multilibAUR[link quebrado: package not found] fornece um compilador para host x86_64 visando ambientes Linux com CPU i686 e x86_64. Isso também vai fornecer o pacote de driver de compilador FPC ppcross386AUR[link quebrado: package not found].

Free Pascal

Nomenclatura do pacote

O nome do projeto sozinho é geralmente suficiente. No entanto, no caso de compilação cruzada, o pacote deve ser prefixado com fpc32- ao direcionar o i686 Linux a partir de multilib e nomeado no formato de fpc-cpu-sistema-pkgname ao direcionar a sistemas Linux não Arch.

Trechos úteis de código

  • Determine a versão do FPC e a CPI e o sistema operacional das unidades para retornar:
_unitdir=`fpc -iSP`-`fpc -iSO`
_fpcver=`fpc -iV`

Empacotamento

Por favor, siga as opções abaixo ao criar um pacote baseado no FPC:

  • sempre adicione fpc a makedepends ou depends
  • sempre coloque todas as unidades compiladas (*.a, *.compiled, *.o, *.ppu, *.res, *.rst) sob /usr/lib/fpc/$_fpcver/units/$arch-linux
  • adicione staticlibs a options se estiver instalando uma biblioteca de importação

Compilação cruzada

  • sempre adicione o pacote de compilador cruzado correspondente mencionado acima (fpc-cpu-system-rtl ou fpc-multilibAUR[link quebrado: package not found] para multilib) ao depends
  • sempre adicione !strip a options para sistemas não baseados no Unix
  • sempre coloque todas as unidades compiladas (*.a, *.compiled, *.o, *.ppu, *.res, *.rst) sob /usr/lib/fpc/$_fpcver/units/$_unitdir (ou, se multilib, /usr/lib/fpc/$_fpcver/units/i386-linux)
  • sempre use any (x86_64 se multilib) como a arquitetura
  • adicione staticlibs a options se estiver instalando uma biblioteca de importação