「Free Pascal パッケージガイドライン」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
(他言語へのリンクを追加)
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
 
[[Category:パッケージ開発]]
 
[[Category:パッケージ開発]]
 
[[en:Free Pascal package guidelines]]
 
[[en:Free Pascal package guidelines]]
  +
[[pt:Free Pascal package guidelines]]
  +
[[zh-hans:Free Pascal package guidelines]]
 
{{Package Guidelines}}
 
{{Package Guidelines}}
   
7行目: 9行目:
 
== Free Pascal ==
 
== Free Pascal ==
 
=== パッケージの命名規則 ===
 
=== パッケージの命名規則 ===
  +
プロジェクトの名前だけで十分です。
 
  +
通常はプロジェクト名だけで十分です。しかし、クロスコンパイルの場合、multilib から i686 Linux をターゲットにする場合はパッケージの先頭に {{ic|fpc32-}} を付け、Arch 以外の Linux システムをターゲットにする場合は {{ic|fpc-''cpu''-''system''-''pkgname''}} という形式で名前を付ける必要があります。
   
 
=== 便利なスニペット ===
 
=== 便利なスニペット ===
15行目: 18行目:
   
 
=== パッケージング ===
 
=== パッケージング ===
  +
 
FPC ベースのパッケージを作成する場合、以下の事柄に従ってください:
 
FPC ベースのパッケージを作成する場合、以下の事柄に従ってください:
 
* {{ic|makedepends}} または {{ic|depends}} に常に {{Pkg|fpc}} を追加する
 
* {{ic|makedepends}} または {{ic|depends}} に常に {{Pkg|fpc}} を追加する
 
* コンパイル済みのファイル (*.a, *.compiled, *.o, *.ppu, *.res, *.rst) は常に {{ic|/usr/lib/fpc/''$_fpcver''/units/''$arch''-linux}} に保存する
 
* コンパイル済みのファイル (*.a, *.compiled, *.o, *.ppu, *.res, *.rst) は常に {{ic|/usr/lib/fpc/''$_fpcver''/units/''$arch''-linux}} に保存する
 
* インポートライブラリをインストールする場合は {{ic|staticlibs}} を {{ic|options}} に追加する
 
* インポートライブラリをインストールする場合は {{ic|staticlibs}} を {{ic|options}} に追加する
  +
  +
==== クロスコンパイル ====
  +
  +
* 常に {{ic|depends}} に上記の対応するクロスコンパイラパッケージ ({{ic|fpc-''cpu''-''system''-rtl}}) を追加します。
  +
* 非 Unix ベースのシステムの場合、常に {{ic|!strip}} を {{ic|options}} に追加します。
  +
* 全てのコンパイル済みユニット (*.a, *.compiled, *.o, *.ppu, *.res, *.rsj) を常に {{ic|/usr/lib/fpc/''$_fpcver''/units/''$_unitdir''}} (マルチリブの場合は {{ic|/usr/lib/fpc/''$_fpcver''/units/i386-linux}}) の下に置いて下さい。
  +
* 常に {{ic|any}} を使用してください。(multilib の場合は {{ic|x86_64}}) をアーキテクチャとして使用します。
  +
* インポートライブラリをインストールする場合は {{ic|staticlibs}} を {{ic|options}} に追加してください。

2023年6月28日 (水) 17:34時点における最新版

このページでは Free Pascal Compiler (FPC) でビルドされるソフトウェアの PKGBUILD を書く方法を説明しています。fpc パッケージはホスト CPU (i686 または x86_64) を対象にしたコンパイラを提供します。

Free Pascal

パッケージの命名規則

通常はプロジェクト名だけで十分です。しかし、クロスコンパイルの場合、multilib から i686 Linux をターゲットにする場合はパッケージの先頭に fpc32- を付け、Arch 以外の Linux システムをターゲットにする場合は fpc-cpu-system-pkgname という形式で名前を付ける必要があります。

便利なスニペット

  • FPC のバージョンとユニットの CPU と OS を確認するには:
_unitdir=`fpc -iSP`-`fpc -iSO`
_fpcver=`fpc -iV`

パッケージング

FPC ベースのパッケージを作成する場合、以下の事柄に従ってください:

  • makedepends または depends に常に fpc を追加する
  • コンパイル済みのファイル (*.a, *.compiled, *.o, *.ppu, *.res, *.rst) は常に /usr/lib/fpc/$_fpcver/units/$arch-linux に保存する
  • インポートライブラリをインストールする場合は staticlibsoptions に追加する

クロスコンパイル

  • 常に depends に上記の対応するクロスコンパイラパッケージ (fpc-cpu-system-rtl) を追加します。
  • 非 Unix ベースのシステムの場合、常に !stripoptions に追加します。
  • 全てのコンパイル済みユニット (*.a, *.compiled, *.o, *.ppu, *.res, *.rsj) を常に /usr/lib/fpc/$_fpcver/units/$_unitdir (マルチリブの場合は /usr/lib/fpc/$_fpcver/units/i386-linux) の下に置いて下さい。
  • 常に any を使用してください。(multilib の場合は x86_64) をアーキテクチャとして使用します。
  • インポートライブラリをインストールする場合は staticlibsoptions に追加してください。