Table of Contents
pkgsrc システムはすでに、多くのオペレーティングシステム、 ハードウェアアーキテクチャー、およびコンパイラーに移植されています。 本章では、pkgsrc の移植性をさらに高めるために必要な手順を説明します。
pkgsrc を未対応のオペレーティングシステム (以下、
MyOS とします) に移植するには、
以下のファイルを作成あるいは修正する必要があります。
pkgtools/bootstrap-mk-files/files/mods/MyOS.sys.mkこのファイルには、いくつかの基本的な定義、 たとえば C コンパイラーの名前が含まれています。
mk/bsd.prefs.mkOPSYS, OS_VERSION,
LOWER_OS_VERSION,
LOWER_VENDOR,
MACHINE_ARCH, OBJECT_FMT,
APPEND_ELF の各変数、
その他このファイルに書かれている各変数を定義するコードを追加します。
mk/platform/MyOS.mkこのファイルには、 pkgsrc が使用するプラットフォーム固有の定義が含まれています。 まず他のプラットフォーム用のファイルのいずれかをコピーしてから、 必要に応じて編集します。
mk/platform/MyOS.pkg.distこのファイルには、ディレクトリーを並べたリストが、
パーミッションビットと所有権とともに含まれています。
ここに含まれるディレクトリーは、明示的に USE_MTREE
を設定している各パッケージのインストールに際して、
自動的に作成されます。この機能は、
廃止が予定されています。
mk/platform/MyOS.x11.dist既存の x11.dist ファイルのいずれかを、
にコピーするだけです。MyOS.x11.dist
mk/tools/bootstrap.mkプラットフォームによっては、ベースシステム附属のツールが pkgsrc で使うには不十分なことがあります。 たとえば sed(1) には、 処理可能な行長が短く制限されているバージョンがたくさんあります。 したがって、pkgsrc では別途ツールを用意しており、 このファイルで有効化することができます。
mk/tools/tools.MyOS.mkこのファイルでは、 pkgsrc 自身が必要とするツールおよび、別のツールや pkgsrc のパッケージが必要とするツールすべてのパスを定義しています。 これらのツールが移植対象のプラットフォームではどこにあるかを調べて、 書き足します。
これで、lang/perl5 や shells/bash のような、
いくつかの基本的なパッケージが構築できるようになったはずです。