- Merge the following from the English version:

r19736 -> r20257	head/ja_JP.eucJP/books/porters-handbook/book.sgml

Submitted by:	Hiroo Ono <hiroo _at_ jp dot FreeBSD dot org>
References:	[doc-jp-work 1810, 1828, 1830, 1842, 1846]
This commit is contained in:
Ryusuke SUZUKI 2012-10-18 13:29:08 +00:00
parent 7429809827
commit 1749476b13
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=39766

View file

@ -9,7 +9,7 @@
The FreeBSD Documentation Project The FreeBSD Documentation Project
The FreeBSD Japanese Documentation Project The FreeBSD Japanese Documentation Project
Original revision: r19736 Original revision: r20257
$FreeBSD$ $FreeBSD$
--> -->
@ -379,9 +379,22 @@ lib/X11/oneko/mouse.xpm
また、port 化したプログラムの短い説明文を また、port 化したプログラムの短い説明文を
バグレポートの <quote>Description</quote> フィールドに追加して、 バグレポートの <quote>Description</quote> フィールドに追加して、
<quote>Fix</quote> フィールドには shar したファイル、 <quote>Fix</quote> フィールドには shar したファイル、
もしくは uuencode した tar ファイルを追加するようにしてください。 もしくは uuencode した
後者は、ports 管理の作業をスクリプトで行なっている tar ファイルを追加するようにしてください。</para>
コミッターの助けとなります。</para>
<note>
<para>障害報告の概要 (synopsis) 欄がよく書けていると、
わたしたちが作業しやすくなります。
新しい port を提出するなら
<quote>New port: &lt;カテゴリ&gt;/&lt;port 名&gt;
&lt;短い port の概要&gt;</quote>
port の更新なら、
<quote>Update port: &lt;カテゴリ&gt;/&lt;port 名&gt;
&lt;短い更新の概要&gt;</quote>
のような形が歓迎されます。
この考え方に沿っていれば、
誰かがあなたの障害報告を時間をおかずに見てくれる可能性が高くなります。</para>
</note>
<para>もう一度、<emphasis>オリジナルのソースファイルや <para>もう一度、<emphasis>オリジナルのソースファイルや
<filename>work</filename> ディレクトリ、 <filename>work</filename> ディレクトリ、
@ -410,18 +423,6 @@ lib/X11/oneko/mouse.xpm
FreeBSD への貢献者</ulink>の一覧やその他のファイルにも載るでしょう。 FreeBSD への貢献者</ulink>の一覧やその他のファイルにも載るでしょう。
う~ん、素晴らしい。<!-- smiley -->:-)</para> う~ん、素晴らしい。<!-- smiley -->:-)</para>
<!-- kuriyama - should use link tag? --> <!-- kuriyama - should use link tag? -->
<note>
<para>わたしたちが作業しやすいように、
障害報告の概要 (synopsis) は適切に記述してください。
たとえば新しい port の提出なら
<quote>New port: &lt;port の簡単な説明&gt;</quote>
port の更新なら
<quote>Update port: &lt;カテゴリ&gt;/&lt;port 名&gt; &lt;更新内容の簡単な説明&gt;</quote>
といった形式が歓迎されます。
こういう方法で報告するように心がけていれば、あなたの報告 (PR) が
すぐに誰かの目にとまる確率が ぐっと高くなるのです。</para>
</note>
</sect1> </sect1>
</chapter> </chapter>
@ -847,7 +848,11 @@ lib/X11/oneko/mouse.xpm
新しいオフィシャルベンダーリリースが行なわれた時) には 新しいオフィシャルベンダーリリースが行なわれた時) には
いつでも 0 にリセットされます。 いつでも 0 にリセットされます。
また、その値が 0 でない場合には package 名に追加されます。 また、その値が 0 でない場合には package 名に追加されます。
その port から作られる package の内容や構造に <makevar>PORTREVISION</makevar> の変更は、(例えば
&man.pkg.version.1; 等の) 自動化ツールが、
新たな package が入手できることを示すのに使われます。</para>
<para>その port から作られる package の内容や構造に
大きな影響を与える変更を行なった時には、 大きな影響を与える変更を行なった時には、
<makevar>PORTREVISION</makevar> を増やしてください。</para> <makevar>PORTREVISION</makevar> を増やしてください。</para>
@ -857,7 +862,7 @@ lib/X11/oneko/mouse.xpm
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para>セキュリティ上の脆弱性やバグを修正するため、または <para>セキュリティ上の脆弱性やバグを修正するため、または
その port に新しい機能を追加するためのパッチの追加。</para> その port に新しい機能を追加するためのパッチの追加。</para>
</listitem> </listitem>
<listitem> <listitem>
@ -919,9 +924,10 @@ lib/X11/oneko/mouse.xpm
ビルド可能にするための修正 (その port が以前にビルド可能だった ビルド可能にするための修正 (その port が以前にビルド可能だった
プラットフォームにおいて、その変更により何らかの機能的な プラットフォームにおいて、その変更により何らかの機能的な
違いが発生しない場合に限ります)。 違いが発生しない場合に限ります)。
<makevar>PORTREVISION</makevar> は package の内容を <makevar>PORTREVISION</makevar> は package
反映したものなので、その package が以前にビルド可能でなければ の内容を反映したものなので、その package
内容の変更も無いため、<makevar>PORTREVISION</makevar> が以前にビルド可能でなかったのなら、変更を示すために、
<makevar>PORTREVISION</makevar>
増やす必要はありません。</para> 増やす必要はありません。</para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
@ -931,9 +937,7 @@ lib/X11/oneko/mouse.xpm
実質的な効能であれ)、アップデートすることにより、 実質的な効能であれ)、アップデートすることにより、
誰もが利益を受けるような何かかどうか、また定期的に ports 誰もが利益を受けるような何かかどうか、また定期的に ports
ツリーを更新している人に更新を強制するということに値するか自問してみることです。 ツリーを更新している人に更新を強制するということに値するか自問してみることです。
もし答がイエスであれば、新しい package もし答がイエスであれば、
が利用可能になった事実を (例えば &man.pkg.version.1; 等の)
自動化ツールが強調することができるように、
<makevar>PORTREVISION</makevar> を上げるべきでしょう。</para> <makevar>PORTREVISION</makevar> を上げるべきでしょう。</para>
</sect3> </sect3>
@ -1426,7 +1430,7 @@ PORTEPOCH= 1</programlisting>
<tbody> <tbody>
<row> <row>
<entry><filename>accessibility*</filename></entry> <entry><filename>accessibility</filename></entry>
<entry>障害を持ったユーザの役に立つ ports</entry> <entry>障害を持ったユーザの役に立つ ports</entry>
<entry></entry> <entry></entry>
</row> </row>
@ -1696,9 +1700,9 @@ PORTEPOCH= 1</programlisting>
<makevar>CATEGORIES</makevar> 行に書かれている場合、 <makevar>CATEGORIES</makevar> 行に書かれている場合、
<literal>misc</literal> <literal>misc</literal>
を削除して他のサブディレクトリにおいて良いという意味になります。 を削除して他のサブディレクトリにおいて良いという意味になります。
このカテゴリにある ports は見落とされる傾向があるので、 このカテゴリに置かれた ports は見落とされやすいので、
可能であれば、<literal>misc</literal> 可能な限り <literal>misc</literal>
ports より適切なカテゴリを選んでください。</entry> よりふさわしいカテゴリを探してください。</entry>
</row> </row>
<row> <row>
@ -1940,11 +1944,10 @@ PORTEPOCH= 1</programlisting>
ほとんどは他の <filename>x11-*</filename> カテゴリ ほとんどは他の <filename>x11-*</filename> カテゴリ
(下記参照) に分類されるべきです。 (下記参照) に分類されるべきです。
あなたの port が X アプリケーションで、 あなたの port が X アプリケーションで、
<makevar>USE_XLIB</makevar> が定義 <makevar>USE_XLIB</makevar> を定義し
(<makevar>USE_IMAKE</makevar> を定義すると自動的に定義されます) (<makevar>USE_IMAKE</makevar>
されている場合は、適切なカテゴリに分類してください。 を定義すると自動的に定義されます)、
また、それらのほとんどは他の <filename>x11-*</filename> 適切なカテゴリに分類してください。</entry>
カテゴリ (下記参照) に分類されます。</entry>
</row> </row>
<row> <row>
@ -2075,8 +2078,8 @@ PORTEPOCH= 1</programlisting>
<para><makevar>DISTNAME</makevar> <para><makevar>DISTNAME</makevar>
は製作者が決めたソフトウェアの名前です。 は製作者が決めたソフトウェアの名前です。
デフォルトでは <makevar>DISTNAME</makevar> デフォルトでは <makevar>DISTNAME</makevar>
<literal>${PORTNAME}-${PORTVERSION}</literal> になります <literal>${PORTNAME}-${PORTVERSION}</literal> になりますので
必要に応じて書き換えることができます 必要にな場合だけ書き換えるようにしてください
<makevar>DISTNAME</makevar> は二つの場所でしか使われません。 <makevar>DISTNAME</makevar> は二つの場所でしか使われません。
一つ目は配布ファイルリスト (<makevar>DISTFILES</makevar>) のデフォルト 一つ目は配布ファイルリスト (<makevar>DISTFILES</makevar>) のデフォルト
<makevar>${DISTNAME}</makevar><makevar>${EXTRACT_SUFX}</makevar> <makevar>${DISTNAME}</makevar><makevar>${EXTRACT_SUFX}</makevar>
@ -2093,7 +2096,7 @@ PORTEPOCH= 1</programlisting>
<makevar>${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX}</makevar> という <makevar>${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX}</makevar> という
名前ではないのに、<makevar>WRKSRC</makevar> 名前ではないのに、<makevar>WRKSRC</makevar>
<filename>work/<makevar>${PORTNAME}-${PORTVERSION}</makevar></filename> <filename>work/<makevar>${PORTNAME}-${PORTVERSION}</makevar></filename>
と設定している場合、おそらく <makevar>DISTNAME</makevar> と設定しているなら、おそらく <makevar>DISTNAME</makevar>
はそのままにしておく必要があることに注意してください &mdash; はそのままにしておく必要があることに注意してください &mdash;
<makevar>DISTNAME</makevar><makevar>WRKSRC</makevar> <makevar>DISTNAME</makevar><makevar>WRKSRC</makevar>
の両方を (そして おそらく <makevar>EXTRACT_SUFX</makevar> も) の両方を (そして おそらく <makevar>EXTRACT_SUFX</makevar> も)
@ -2137,7 +2140,7 @@ MASTER_SITE_SUBDIR= applications</programlisting>
<para>これらの変数は <filename>/usr/ports/Mk/bsd.sites.mk</filename> <para>これらの変数は <filename>/usr/ports/Mk/bsd.sites.mk</filename>
で定義されています。 で定義されています。
いつでも新しいアーカイブサイトが追加されますので、 いつでも新しい項目が追加されて行きますので、
port を提出する前に このファイルの最新版を port を提出する前に このファイルの最新版を
チェックするように心掛けてください。</para> チェックするように心掛けてください。</para>
@ -2974,7 +2977,9 @@ PATCHFILES= patch1:test</programlisting>
お願いします。 お願いします。
<!-- smiley --><emphasis remap="tt">:-)</emphasis></para> <!-- smiley --><emphasis remap="tt">:-)</emphasis></para>
<para><literal>user@hostname.domain</literal> <para><makevar>MAINTAINER</makevar>
の値は、コメント部のない単一のアドレスしか受け付けられません。
<literal>user@hostname.domain</literal>
という形式を利用してください。この項目には、 という形式を利用してください。この項目には、
あなたの本名などの説明用のテキストは一切いれないでください。 あなたの本名などの説明用のテキストは一切いれないでください。
(そうしても、ただ <filename>bsd.port.mk</filename> (そうしても、ただ <filename>bsd.port.mk</filename>
@ -2986,9 +2991,6 @@ PATCHFILES= patch1:test</programlisting>
Makefile 中の MAINTAINER</ulink> Makefile 中の MAINTAINER</ulink>
セクションを参照してください。</para> セクションを参照してください。</para>
<para><makevar>MAINTAINER</makevar> の値としては、
コメント部のないアドレスだけが受け付けられます。</para>
<para>Port のメンテナがユーザからの更新要求に <para>Port のメンテナがユーザからの更新要求に
(主な公休日を除いて) 2 週間返答しなかったら、 (主な公休日を除いて) 2 週間返答しなかったら、
保守担当者の持ち時間が切れたとみなして、 保守担当者の持ち時間が切れたとみなして、
@ -3019,6 +3021,10 @@ PATCHFILES= patch1:test</programlisting>
<para><filename>Makefile</filename> 中で、 <para><filename>Makefile</filename> 中で、
COMMENT 変数は MAINTAINER 変数の直後においてください。</para> COMMENT 変数は MAINTAINER 変数の直後においてください。</para>
<para>COMMENT 行は、port
の 1 行の要約としてユーザに示されるので、
70 文字未満に抑えるようにしてください。</para>
</sect1> </sect1>
<sect1 id="makefile-depend"> <sect1 id="makefile-depend">
@ -3026,7 +3032,7 @@ PATCHFILES= patch1:test</programlisting>
<para>多くの port は他の port に依存しています。 <para>多くの port は他の port に依存しています。
必要なものすべてがユーザのマシン上に存在することを 必要なものすべてがユーザのマシン上に存在することを
保証するために使用可能な、5 つの変数が用意されています。 保証するために使用可能な、7 つの変数が用意されています。
よくあるケースのためにあらかじめ設定された依存変数に加え、 よくあるケースのためにあらかじめ設定された依存変数に加え、
いくつかの依存関係の制御のための変数があります。</para> いくつかの依存関係の制御のための変数があります。</para>
@ -3184,10 +3190,59 @@ PATCHFILES= patch1:test</programlisting>
と同じ場合には省略することができます。</para> と同じ場合には省略することができます。</para>
</sect2> </sect2>
<sect2>
<title><makevar>EXTRACT_DEPENDS</makevar></title>
<para>この変数には、この port
の展開に必要な実行ファイルや、他のファイルを指定します。
前の変数と同じく、これは
<replaceable>path</replaceable>:<replaceable>dir</replaceable><optional><replaceable>:target</replaceable></optional>
のタプルの一覧です。たとえば、<programlisting>EXTRACT_DEPENDS=
unzip:${PORTSDIR}/archivers/unzip</programlisting>
は、<command>unzip</command>
という実行形式のファイルがあるかどうか確認し、
見つからなければ、ports ツリーの
<filename>archivers/unzip</filename>
サブディレクトリに降りてビルドおよびインストールを行います。</para>
<para>依存関係は <maketarget>extract</maketarget>
ターゲットにおいて確認されます。
<replaceable>target</replaceable> 部分が
<makevar>DEPENDS_TARGET</makevar>
と同じなら、省いて構いません。</para>
<note>
<para>この変数は、展開が働いておらず
(デフォルトでは <command>gzip</command> を仮定しています)、
<xref linkend="use-vars"/> で説明されている
<makevar>USE_ZIP</makevar><makevar>USE_BZIP2</makevar>
を使っても動かない場合にだけ使ってください。</para>
</note>
</sect2>
<sect2>
<title><makevar>PATCH_DEPENDS</makevar></title>
<para>この変数は、この port
がパッチを当てる際に必要とする実行ファイルや他のファイルを指定します。
前の変数と同じく、これは
<replaceable>path</replaceable>:<replaceable>dir</replaceable><optional><replaceable>:target</replaceable></optional>
のタプルの一覧です。たとえば、<programlisting> PATCH_DEPENDS=
${NONEXISTENT}:${PORTSDIR}/java/jfc:extract
</programlisting> は、ports ツリーの
<filename>java/jfc</filename> サブディレクトリに移動して、
ビルドおよびインストールを行います。</para>
<para>依存関係は、<maketarget>patch</maketarget>
ターゲットにおいて確認されます。<replaceable>target</replaceable>
部分が <makevar>DEPENDS_TARGET</makevar>
と同じなら省略して構いません。</para>
</sect2>
<sect2> <sect2>
<title><makevar>DEPENDS</makevar></title> <title><makevar>DEPENDS</makevar></title>
<para>上記の四つのいずれにもあてはまらないような依存関係がある場合、 <para>上記のいずれにもあてはまらないような依存関係がある場合、
または他の port がインストールされているだけではなく または他の port がインストールされているだけではなく
ソースが展開されている必要がある場合には、この変数を使います。 ソースが展開されている必要がある場合には、この変数を使います。
これは上記の四つと違い、特に<quote>確認</quote>するものが これは上記の四つと違い、特に<quote>確認</quote>するものが
@ -3199,7 +3254,7 @@ PATCHFILES= patch1:test</programlisting>
と同じ場合には省略することができます。</para> と同じ場合には省略することができます。</para>
</sect2> </sect2>
<sect2> <sect2 id="use-vars">
<title><makevar>USE_<replaceable>*</replaceable></makevar></title> <title><makevar>USE_<replaceable>*</replaceable></makevar></title>
<para>多くの ports に共通の依存関係をカプセル化するために、 <para>多くの ports に共通の依存関係をカプセル化するために、
@ -3300,6 +3355,15 @@ PATCHFILES= patch1:test</programlisting>
が使われます。</entry> が使われます。</entry>
</row> </row>
<row>
<entry><makevar>USE_SDL</makevar></entry>
<entry>その port のビルドや実行に
<literal>SDL</literal> が使われます。
<makevar>USE_SDL</makevar> の使い方について、詳しくは
<xref linkend="using-sdl"/> をご覧ください。</entry>
</row>
<row> <row>
<entry><makevar>NO_INSTALL_MANPAGES</makevar></entry> <entry><makevar>NO_INSTALL_MANPAGES</makevar></entry>
@ -3621,14 +3685,22 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
<important> <important>
<para>port 作成者として、あなたには、使用許諾条件をよく読み、 <para>port 作成者として、あなたには、使用許諾条件をよく読み、
FTP または CD-ROM FTP/HTTP または CD-ROM
で再配布してはいけないソースコードやコンパイルされたバイナリを配布してしまい、 で再配布してはいけないソースコードやコンパイルされたバイナリを配布してしまい、
その責任が FreeBSD プロジェクトにかかってくることのないよう注意する義務があります。 その責任が FreeBSD プロジェクトにかかってくることのないよう注意する義務があります。
疑わしい場合には &a.ports; で聞いてみてください。</para> 疑わしい場合には &a.ports; で聞いてみてください。</para>
</important> </important>
<para>そのような場合、次の変数を設定してください。 <para>そのような場合、次の節で説明されている変数が設定できます。</para>
また、<filename>ports/LEGAL</filename> も更新すべきです。</para>
<note>
<para><makevar>RESTRICTED</makevar>
は、それだけを設定すれば済むように、暗黙のうちに
<makevar>NO_CDROM</makevar><makevar>NO_PACKAGE</makevar>
を設定します。それに対して、
<makevar>NO_PACKAGE</makevar><makevar>NO_CDROM</makevar>
は独立で、同時に設定可能です。</para>
</note>
<sect2> <sect2>
<title><makevar>NO_PACKAGE</makevar></title> <title><makevar>NO_PACKAGE</makevar></title>
@ -3641,7 +3713,8 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
<para>また、<makevar>NO_PACKAGE</makevar> <para>また、<makevar>NO_PACKAGE</makevar>
は、バイナリパッケージが汎用的ではなく、 は、バイナリパッケージが汎用的ではなく、
いつもアプリケーションをソースコードからコンパイルすべき場合にも利用すべきです。 いつもアプリケーションをソースコードからコンパイルすべき場合にも利用すべきです。
たとえば、アプリケーションにサイト特有の設定情報がコンパイル時にハードコードされるような場合です。</para> たとえば、アプリケーションにサイト特有の設定情報がコンパイル時にハードコードされるような場合には、
<makevar>NO_PACKAGE</makevar> を設定してください。</para>
<para><makevar>NO_PACKAGE</makevar> には、 <para><makevar>NO_PACKAGE</makevar> には、
パッケージを作成すべきではない理由を述べた文字列を設定すべきです。</para> パッケージを作成すべきではない理由を述べた文字列を設定すべきです。</para>
@ -3650,43 +3723,51 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
<sect2> <sect2>
<title><makevar>NO_CDROM</makevar></title> <title><makevar>NO_CDROM</makevar></title>
<para>この変数は、 <para>この変数は、バイナリパッケージの作成は許可されていますが、
バイナリパッケージの作成は許可されていますが、 その package や port の <makevar>DISTFILES</makevar>
そのパッケージや port の <makevar>DISTFILES</makevar> を販売用の CD-ROM (や DVD-ROM)
を販売用の CDROM (や DVD-ROM) に載せるのは許されていないことを表します。なんにせよ、
に載せるのは許されていないことを表します。 バイナリパッケージと port の <makevar>DISTFILES</makevar>
<makevar>DISTFILES</makevar> は、FTP (設定次第では HTTP) は、FTP/HTTP で入手できます。</para>
で入手可能です。</para>
<para><makevar>NO_PACKAGE</makevar><makevar>NO_CDROM</makevar> <para><makevar>NO_CDROM</makevar> には、その port が何故 CD-ROM
は、同時に設定できます。</para> で再配布できないか説明する文字列を設定するべきです。
これはたとえば、その port のライセンスが<quote>非商用</quote>
利用に限っている場合に使うべきです。</para>
</sect2> </sect2>
<sect2> <sect2>
<title><makevar>RESTRICTED</makevar></title> <title><makevar>RESTRICTED</makevar></title>
<para>アプリケーションのライセンスが、FTP (設定次第では HTTP) <para>アプリケーションのライセンスが、FTP/HTTP
でそのアプリケーションの で、そのアプリケーションの <makevar>DISTFILES</makevar>
<makevar>DISTFILES</makevar> をミラーすることも禁じていたら、 をミラーすることや、
バイナリパッケージを配布することを禁じていたら、
この変数を設定してください。</para> この変数を設定してください。</para>
<para>また、 <para><makevar>RESTRICTED</makevar> には、その port
アプリケーションのライセンスが利用者について一般的な制限をかけている場合も、 が何故再配布できないか説明する文字列を設定するべきです。
この変数を設定してください。 典型的な場合としては、その port
たとえば、非商用利用限定のアプリケーションなどがあります。</para> がプロプライエタリなソフトウェアを含んでいて、
<makevar>DISTFILES</makevar>
<para>Ports のソースコード管理者 (committer) は を、おそらくソフトウェアに関する登録を行ったり
その制限が何を要求しているかを正確に述べた項目を <acronym>EULA</acronym> を承諾した後で、
<filename>/usr/ports/LEGAL</filename> に追加すべきです。</para> 手動でダウンロードしなければならないことを表します。</para>
</sect2> </sect2>
<sect2> <sect2>
<title><makevar>RESTRICTED_FILES</makevar></title> <title><makevar>RESTRICTED_FILES</makevar></title>
<para>一部の配布ファイルだけに制限がかかっていたら、 <para><makevar>RESTRICTED</makevar><makevar>NO_CDROM</makevar>
この変数にそのファイルのリストを設定してください。デフォルトでは、 が設定されている時は、この変数はデフォルトで
<literal>${DISTFILES} ${PATCHFILES}</literal> <literal>${DISTFILES} ${PATCHFILES}</literal>
になります。</para> になります。それ以外は空です。
一部の配布ファイルだけに制限がかかっていたら、
この変数にそのファイルのリストを設定してください。</para>
<para>port committer は、設定した配布ファイル毎に
<filename>/usr/ports/LEGAL</filename>
に制限の内容を説明する項目を追加すべきことに注意してください。</para>
</sect2> </sect2>
</sect1> </sect1>
@ -3713,6 +3794,31 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
を使用することを示します。</entry> を使用することを示します。</entry>
</row> </row>
<row>
<entry><makevar>USE_PERL5_BUILD</makevar></entry>
<entry>その port をビルドするのに <literal>perl 5</literal>
を使用することを示します。</entry>
</row>
<row>
<entry><makevar>USE_PERL5_RUN</makevar></entry>
<entry>その port を実行するのに <literal>perl 5</literal>
を使用することを示します。</entry>
</row>
<row>
<entry><makevar>PERL</makevar></entry>
<entry>システムまたは port からインストールされた
<literal>perl 5</literal>
の完全なパスからバージョン番号を省いたもの。
スクリプトの
<quote><literal>#!</literal></quote>
行を置き換える必要があれば使ってください。</entry>
</row>
<row> <row>
<entry><makevar>PERL_CONFIGURE</makevar></entry> <entry><makevar>PERL_CONFIGURE</makevar></entry>
@ -3762,6 +3868,21 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
がアーキテクチャ依存のライブラリをインストールする場所。 がアーキテクチャ依存のライブラリをインストールする場所。
デフォルトは <literal>${ARCH}-freebsd</literal></entry> デフォルトは <literal>${ARCH}-freebsd</literal></entry>
</row> </row>
<row>
<entry><makevar>PERL_PORT</makevar></entry>
<entry>インストールされている <literal>perl</literal>
の port の名称 (例えば <literal>perl5</literal>)。</entry>
</row>
<row>
<entry><makevar>SITE_PERL</makevar></entry>
<entry>サイト独自の <literal>perl</literal>
パッケージの入るディレクトリ名。
この値は PLIST_SUB に追加されます。</entry>
</row>
</tbody> </tbody>
</tgroup> </tgroup>
</table> </table>
@ -4019,7 +4140,7 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
<para>FreeBSD/GNOME プロジェクトは、ある特定の port <para>FreeBSD/GNOME プロジェクトは、ある特定の port
が使っている GNOME コンポーネントを特定するために が使っている GNOME コンポーネントを特定するために
<literal>GNOMENG</literal> というシステムを利用しています。 独自の変数群を使っています。
FreeBSD/GNOME プロジェクトのページに FreeBSD/GNOME プロジェクトのページに
<ulink url="http://www.FreeBSD.org/gnome/docs/porting.html">その変数のわかりやすい一覧</ulink> <ulink url="http://www.FreeBSD.org/gnome/docs/porting.html">その変数のわかりやすい一覧</ulink>
があります。</para> があります。</para>
@ -4119,6 +4240,107 @@ LDCONFIG_DIRS= %%PREFIX%%/lib/foo %%PREFIX%%/lib/bar</programlisting>
<para>この節はまだ書かれていません。</para> <para>この節はまだ書かれていません。</para>
</sect1> </sect1>
<sect1 id="using-sdl">
<title>SDL の利用</title>
<para><makevar>USE_SDL</makevar> 変数は、
<filename role="package">devel/sdl12</filename>
<filename role="package">x11-toolkits/sdl_gui</filename>
など、SDL ベースの ports
への依存を自動設定するのに使われます。</para>
<para>今のところ、次の SDL ライブラリが認識されます。</para>
<itemizedlist>
<listitem>
<para>sdl: <filename role="package">devel/sdl12</filename></para>
</listitem>
<listitem>
<para>gfx: <filename role="package">graphics/sdl_gfx</filename></para>
</listitem>
<listitem>
<para>gui: <filename role="package">x11-toolkits/sdl_gui</filename></para>
</listitem>
<listitem>
<para>image: <filename role="package">graphics/sdl_image</filename></para>
</listitem>
<listitem>
<para>ldbad: <filename role="package">devel/sdl_ldbad</filename></para>
</listitem>
<listitem>
<para>mixer: <filename role="package">audio/sdl_mixer</filename></para>
</listitem>
<listitem>
<para>mm: <filename role="package">devel/sdlmm</filename></para>
</listitem>
<listitem>
<para>net: <filename role="package">net/sdl_net</filename></para>
</listitem>
<listitem>
<para>sound: <filename role="package">audio/sdl_sound</filename></para>
</listitem>
<listitem>
<para>ttf: <filename role="package">graphics/sdl_ttf</filename></para>
</listitem>
</itemizedlist>
<para>したがって、ある port が
<filename role="package">net/sdl_net</filename>
<filename role="package">audio/sdl_mixer</filename>
に依存していたら、構文は次のようになります。</para>
<programlisting>USE_SDL= net mixer</programlisting>
<para><filename role="package">net/sdl_net</filename>
<filename role="package">audio/sdl_mixer</filename>
が必要とする <filename role="package">devel/sdl12</filename>
の依存も自動的に追加されます。</para>
<para><makevar>USE_SDL</makevar>
を使うと、以下のことが自動的に行われます。</para>
<itemizedlist>
<listitem>
<para><makevar>BUILD_DEPENDS</makevar>
<application>sdl11-config</application>
への依存を追加します。</para>
</listitem>
<listitem>
<para><makevar>CONFIGURE_ENV</makevar>
<makevar>SDL_CONFIG</makevar> 変数を追加します。</para>
</listitem>
<listitem>
<para><makevar>LIB_DEPENDS</makevar>
に選択したライブラリへの依存を追加します。</para>
</listitem>
</itemizedlist>
<para>SDL ライブラリが利用できるかどうか調べるためには、
<makevar>WANT_SDL</makevar> 変数を使ってください。</para>
<programlisting>WANT_SDL=yes
.include &lt;bsd.port.pre.mk&gt;
.if ${HAVE_SDL:Mmixer}!=""
USE_SDL+= mixer
.endif
.include &lt;bsd.port.post.mk&gt;</programlisting>
</sect1>
</chapter> </chapter>
<!-- <!--
@ -4867,10 +5089,10 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
それ以外の場合には port の <filename>scripts/Makefile</filename> それ以外の場合には port の <filename>scripts/Makefile</filename>
<filename>/usr/local</filename> <filename>/usr/local</filename>
(imake を使わない X のプログラムは <filename>/usr/X11R6</filename>) (imake を使わない X のプログラムは <filename>/usr/X11R6</filename>)
と書いてあるところを と書いてあるところを
<makevar>PREFIX</makevar> に書き換えてください。 <makevar>${PREFIX}</makevar> に書き換えてください。
この値は port のコンパイルおよび、 この値は port のコンパイルおよび、
インストール時に自動的に環境変数として下位 make に渡されます。</para> インストールの全段階において、自動的に下位のプロセスに渡されます。</para>
<para>そのアプリケーションが <makevar>PREFIX</makevar> <para>そのアプリケーションが <makevar>PREFIX</makevar>
使用しないで、何かを直接 <filename>/usr/local</filename> 使用しないで、何かを直接 <filename>/usr/local</filename>
@ -4972,28 +5194,27 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
の場合は、あなたがアップグレードをしてくださると助かります。 の場合は、あなたがアップグレードをしてくださると助かります。
その場合にはアップグレードを作成した後、 その場合にはアップグレードを作成した後、
変更前と変更後のディレクトリの再帰的 <command>diff</command> 変更前と変更後のディレクトリの再帰的 <command>diff</command>
の出力結果を送ってください の出力結果を保存してください
(たとえば変更前のディレクトリが (たとえば変更前のディレクトリが
<filename>superedit.bak</filename> <filename>superedit.bak</filename>
という名前でとってあり、変更後のものが という名前でとってあり、変更後のものが
<filename>superedit</filename> <filename>superedit</filename>
に入っているなら、 に入っているなら、
<command>diff -ruN superedit.bak superedit</command> <command>diff -ruN superedit.bak superedit</command>
の結果を送ってください)。 の結果を保存してください)。
unified または context diff のどちらでも構いませんが unified または context diff のどちらでも構いませんが
port のコミッターは一般に unified diff の方を好むようです。 port のコミッターは一般に unified diff の方を好むようです。
<literal>-N</literal> オプションの使い方を覚えておいてください。 <literal>-N</literal> オプションの使い方を覚えておいてください。
これは、新たにファイルが追加されたり、 これは、新たにファイルが追加されたり、
古いファイルが削除された場合を diff 古いファイルが削除された場合を diff
が正しく扱えるようにする方法です。</para> が正しく扱えるようにする方法です。わたしたちに差分を送る前に、
すべての変更が正しくなされているか出力結果を確認してください。</para>
<para>diff の出力を見て、
すべての変更が正しくなされているか確認してください。 <para>差分を送る一番良い方法は &man.send-pr.1;
変更箇所については、&man.send-pr.1;
(カテゴリは <literal>ports</literal>) (カテゴリは <literal>ports</literal>)
に diff の出力結果を添えて、わたしたちに送ってもらうのが一番良いです。 に diff の出力結果を添えて、わたしたちに送ってもらうのが一番良いです。
commit する際に CVS に明確に記述しなければならないので、 commit する際に CVS に明確に記述しなければならないので、
あなたがその port のメンテナなら、概要 (synopsis) 行の先頭に あなたがその port のメンテナになるなら、概要 (synopsis) 行の先頭に
<literal>[maintainer update]</literal> <literal>[maintainer update]</literal>
と記入し、PR の <quote>Class</quote> と記入し、PR の <quote>Class</quote>
<literal>maintainer-update</literal> にしてください。 <literal>maintainer-update</literal> にしてください。
@ -5274,7 +5495,8 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<sect1 id="freebsd-versions"> <sect1 id="freebsd-versions">
<title>__FreeBSD_version の値</title> <title>__FreeBSD_version の値</title>
<informaltable frame="none"> <table frame="none">
<title>__FreeBSD_version values</title>
<tgroup cols="2"> <tgroup cols="2">
<thead> <thead>
<row> <row>
@ -5853,6 +6075,12 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<entry>490101</entry> <entry>490101</entry>
</row> </row>
<row>
<entry>rtld に libmap 機能を MFC した後の
4.9-STABLE</entry>
<entry>490102</entry>
</row>
<row> <row>
<entry>5.0-CURRENT</entry> <entry>5.0-CURRENT</entry>
<entry>500000</entry> <entry>500000</entry>
@ -6235,7 +6463,7 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<filename>&lt;dev/sio/sioreg.h&gt;</filename> から <filename>&lt;dev/sio/sioreg.h&gt;</filename> から
<filename>&lt;dev/ic/ns16550.h&gt;</filename> <filename>&lt;dev/ic/ns16550.h&gt;</filename>
に移動した後の 5.1-CURRENT。 に移動した後の 5.1-CURRENT。
また、rtld が 無条件で libmap 機能をサポートした</entry> また、rtld が 無条件で libmap 機能をサポートした時点。</entry>
<entry>501107</entry> <entry>501107</entry>
</row> </row>
<row> <row>
@ -6273,6 +6501,10 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
<entry>5.2-RELEASE</entry> <entry>5.2-RELEASE</entry>
<entry>502000</entry> <entry>502000</entry>
</row> </row>
<row>
<entry>5.2.1-RELEASE</entry>
<entry>502010</entry>
</row>
<row> <row>
<entry>RELENG_5_2 が分岐した後の 5.2-CURRENT</entry> <entry>RELENG_5_2 が分岐した後の 5.2-CURRENT</entry>
<entry>502100</entry> <entry>502100</entry>
@ -6282,9 +6514,25 @@ PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}</programlisting>
に追加された後の 5.2-CURRENT</entry> に追加された後の 5.2-CURRENT</entry>
<entry>502101</entry> <entry>502101</entry>
</row> </row>
<row>
<entry>デフォルトの pthread ライブラリを
libc_r から libpthread に変更した後の
5.2-CURRENT</entry>
<entry>502102</entry>
</row>
<row>
<entry>デバイスドライバ API の大規模パッチをあてた後の
5.2-CURRENT</entry>
<entry>502103</entry>
</row>
<row>
<entry>getopt_long_only() が追加された後の
5.2-CURRENT</entry>
<entry>502104</entry>
</row>
</tbody> </tbody>
</tgroup> </tgroup>
</informaltable> </table>
<note> <note>
<para>(2.2-STABLE は 2.2.5-RELESE 以後、 <para>(2.2-STABLE は 2.2.5-RELESE 以後、