[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
pkgsrc/doc/guide/files/fixes.xml: 1.103 -> 1.104
以下のページの更新をしました。ツッコミをお願いします。
pkgsrc/doc/guide/files/fixes.xml: 1.103 -> 1.104
> Update severely outdated documentation about dependencies.
> Inspired by patch from Francois Tigeot on pkgsrc-wip-discuss.
火曜日までに異議がなければ、 commit します。
以下、訳と原文それぞれの新旧の差分です。
--- fixes.xml.orig 2011-05-30 00:23:47.000000000 +0900
+++ fixes.xml 2011-05-30 00:23:47.000000000 +0900
@@ -1,6 +1,6 @@
-<!-- $NetBSD: fixes.xml,v 1.103 2011/01/16 08:40:28 wiz Exp $ -->
+<!-- $NetBSD: fixes.xml,v 1.104 2011/05/21 16:39:03 wiz Exp $ -->
<!-- Based on english version: -->
-<!-- NetBSD: fixes.xml,v 1.103 2011/01/16 08:40:28 wiz Exp -->
+<!-- NetBSD: fixes.xml,v 1.104 2011/05/21 16:39:03 wiz Exp -->
<chapter id="fixes"> <?dbhtml filename="fixes.html"?>
<title>パッケージを動くようにする</title>
@@ -336,33 +336,36 @@
</listitem>
<listitem>
- <para>パッケージを構築するために他のパッケージが必要で、
- そのパッケージに <filename>buildlink3.mk</filename> ファイルがない場合は、
- <varname>BUILD_DEPENDS</varname>定義を使ってください。</para>
+ <para>パッケージを構築するために、他のパッケージのバイナリーが必要な場合は、
+ <varname>BUILD_DEPENDS</varname> 定義を使ってください。</para>
<programlisting>
-BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf
+BUILD_DEPENDS+= scons-[0-9]*:../../devel/scons
</programlisting>
</listitem>
<listitem>
-
<para>パッケージがリンクのためのライブラリーを必要とし、
そのパッケージにやはり <filename>buildlink3.mk</filename> ファイルがない場合は、
- <varname>DEPENDS</varname> 定義を使ってください。
- たとえば以下のようにします。</para>
-
- <programlisting>
-DEPENDS+= xpm-3.4j:../../graphics/xpm
- </programlisting>
+ <filename>buildlink3.mk</filename> ファイルを作ってください。
+ <varname>DEPENDS</varname> を使うと、
+ インクルードファイルやライブラリーをコンパイラーから隠してしまうので、このような場合には不適切です。</para>
+ </listitem>
- <para>また、パッケージ依存関係にはワイルドカードを使うことができます。</para>
+ <listitem>
+ <para>パッケージを実行するために、いくつかの実行可能ファイルが必要であり、かつ
+ <filename>buildlink3.mk</filename> ファイルが存在しない場合は、
+ <varname>DEPENDS</varname>変数を使ってください。<filename role="pkg">print/lyx</filename>パッケージを実行する時には、
+ teTeXパッケージ由来のlatex のバイナリーが実行可能でなければなりません。これ
+ は、以下のように指定します。</para>
<programlisting>
-DEPENDS+= xpm-[0-9]*:../../graphics/xpm
+DEPENDS+= teTeX-[0-9]*:../../print/teTeX
</programlisting>
-
- <para>ワイルドカード依存関係は、バイナリーパッケージを作る時には保持されること
+ </listitem>
+ <listitem>
+ <para>パッケージ依存関係にはワイルドカードを使うことができます。
+ ワイルドカード依存関係は、バイナリーパッケージを作る時には保持されること
に注意してください。依存関係はバイナリーパッケージのインストール時にチェッ
クされ、パターンにマッチするパッケージが使われます。ワイルドカード依存関係
は、注意を払って使うよう気を付けてください。</para>
@@ -376,63 +379,21 @@
依存パッケージがあるバージョン以上でないと構築できないことを指定するのにも使えます。</para>
<programlisting>
-DEPENDS+= tiff>=3.5.4:../../graphics/tiff
+DEPENDS+= ImageMagick>=6.0:../../graphics/ImageMagick
</programlisting>
- <para>以上のように書いた場合、このパッケージは tiff ライブラリーのバージョン 3.5.4
- 以降とともに構築されることを意味します。このような形式の依存関係は、たとえば、
- tiff ライブラリーの API が 3.5.4 で変更されたため、それより前のバージョンの tiff
- ではパッケージがコンパイルできないような場合に、構築できることを保証することができます。</para>
-
- <para>なお、このような形式の依存関係は、新しい依存関係が必要となった場合のみに更新してください。
- ABI の変更などであって、構築自体は正常におこなうことができる場合、
- その推奨のために依存関係を更新したりしないでください。
- 後者の場合は <varname>ABI_DEPENDS</varname> を使って推奨を示すことができます。</para>
+ <para>以上のように書いた場合、このパッケージは ImageMagick のバージョン 6.0
+ 以上を使って構築されることを意味します。このような形式の依存関係は、たとえば、
+ 依存先のコマンドラインオプションが変更された場合にでも、構築できることを保証することができます。</para>
- <programlisting>
-ABI_DEPENDS+= tiff>=3.6.1:../../graphics/tiff
- </programlisting>
-
- <para>これを上述の <varname>DEPENDS</varname> 行に追加することで、
- パッケージの構築は tiff>=3.5.4 でおこなうことができるが、
- 少なくともバージョン 3.6.1 を推奨するということを意味します。
- <varname>ABI_DEPENDS</varname> の内容は、(警告が表示された際に)
- 明示的に無視された場合を除き、依存関係に反映されます。</para>
-
- <para>ABI の依存性に関するこの推奨を無視して、必須の
- <varname>DEPENDS</varname> を使うだけにするには、
- <varname>USE_ABI_DEPENDS=NO</varname> を設定します。
- こうすると、互換性のある古い依存性をそのまま使うことができるので、
- pkgsrc を使って構築されたパッケージの更新が簡単かつ速くできるようになります。
- これは、パッケージの再構築を念入りに観察する人にとっては便利な方法ですが、
- 一般向けにはよろしくない方法です。
- この方法を使う場合は、OS に由来するものも含めて、
- 起こりうる ABI の変更に十分注意する必要があります。</para>
-
- <para>推奨を無視して構築されたパッケージは、開発者が ftp.NetBSD.org
- へアップロードしてはいけません。また、そのようなパッケージを別のシステムで使うと、
- 別バージョンのバイナリーパッケージが複数インストールされる可能性があるので、
- そのようなこともしないようにしてください。</para>
+ <para>あるバージョン以上のライブラリーに依存させる必要がある場合は、
+ the pkgsrc guide の buildlink の節をご覧ください。</para>
<para>セキュリティー上の修正があった場合は、
パッケージ脆弱性ファイルを更新してください。
さらなる情報は、<xref
linkend="security-handling"/>を参照してください。</para>
</listitem>
-
- <listitem>
- <para>パッケージを実行するために、いくつかの実行可能ファイルが必要であり、かつ
- <filename>buildlink3.mk</filename> ファイルが存在しない場合は、
- <varname>DEPENDS</varname>変数を使ってください。<filename role="pkg">print/lyx</filename>パッケージを実行する時には、
- teTeXパッケージ由来のlatex のバイナリーが実行可能でなければなりません。これ
- は、以下のように指定します。</para>
-
- <programlisting>
-DEPENDS+= teTeX-[0-9]*:../../print/teTeX
- </programlisting>
-
- <para>上述した、ワイルドカード依存関係に関する注意は、ここにも当てはまります。</para>
- </listitem>
</orderedlist>
<para>パッケージの構築用に別のパッケージに含まれるファイルが必要な場合は、
Index: fixes.xml
===================================================================
RCS file: /cvsroot/pkgsrc/doc/guide/files/fixes.xml,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -r1.103 -r1.104
--- fixes.xml 16 Jan 2011 08:40:28 -0000 1.103
+++ fixes.xml 21 May 2011 16:39:03 -0000 1.104
@@ -1,4 +1,4 @@
-<!-- $NetBSD: fixes.xml,v 1.103 2011/01/16 08:40:28 wiz Exp $ -->
+<!-- $NetBSD: fixes.xml,v 1.104 2011/05/21 16:39:03 wiz Exp $ -->
<chapter id="fixes"> <?dbhtml filename="fixes.html"?>
<title>Making your package work</title>
@@ -327,38 +327,41 @@
</listitem>
<listitem>
- <para>If your package needs to use another package to build
- itself and there is no <filename>buildlink3.mk</filename>
- file available, use the <varname>BUILD_DEPENDS</varname>
- definition:</para>
+ <para>If your package needs binaries from another package to build,
+ use the <varname>BUILD_DEPENDS</varname> definition:</para>
<programlisting>
-BUILD_DEPENDS+= autoconf-2.13:../../devel/autoconf
+BUILD_DEPENDS+= scons-[0-9]*:../../devel/scons
</programlisting>
</listitem>
<listitem>
-
<para>If your package needs a library with which to link and
again there is no <filename>buildlink3.mk</filename> file
- available, this is specified using the
- <varname>DEPENDS</varname> definition. For example:</para>
-
- <programlisting>
-DEPENDS+= xpm-3.4j:../../graphics/xpm
- </programlisting>
+ available, create one. Using
+ <varname>DEPENDS</varname> won't be sufficient because the
+ include files and libraries will be hidden from the compiler.</para>
+ </listitem>
- <para>You can also use wildcards in package dependencies:</para>
+ <listitem>
+ <para>If your package needs some executable to be able to run
+ correctly and if there's no
+ <filename>buildlink3.mk</filename> file, this is specified
+ using the <varname>DEPENDS</varname> variable. The
+ <filename role="pkg">print/lyx</filename> package needs to
+ be able to execute the latex binary from the teTeX package
+ when it runs, and that is specified:</para>
<programlisting>
-DEPENDS+= xpm-[0-9]*:../../graphics/xpm
+DEPENDS+= teTeX-[0-9]*:../../print/teTeX
</programlisting>
-
- <para>Note that such wildcard dependencies are retained when
- creating binary packages. The dependency is checked when
- installing the binary package and any package which matches
- the pattern will be used. Wildcard dependencies should be
- used with care.</para>
+ </listitem>
+ <listitem>
+ <para>You can use wildcards in package dependencies. Note that
+ such wildcard dependencies are retained when creating binary
+ packages. The dependency is checked when installing the binary
+ package and any package which matches the pattern will be
+ used. Wildcard dependencies should be used with care.</para>
<para>The <quote>-[0-9]*</quote> should be used instead of
<quote>-*</quote> to avoid potentially ambiguous matches
@@ -370,70 +373,22 @@
pre-requisite:</para>
<programlisting>
-DEPENDS+= tiff>=3.5.4:../../graphics/tiff
+DEPENDS+= ImageMagick>=6.0:../../graphics/ImageMagick
</programlisting>
- <para>This means that the package will build against version
- 3.5.4 of the tiff library or newer. Such a dependency may
- be warranted if, for example, the API of the library has
- changed with version 3.5.4 and a package would not compile
- against an earlier version of tiff.</para>
-
- <para>Please note that such dependencies should only be
- updated if a package requires a newer pre-requisite, but
- not to denote recommendations such as
- ABI changes that do not prevent a package from building
- correctly. Such recommendations can be expressed using
- <varname>ABI_DEPENDS</varname>:</para>
+ <para>This means that the package will build using version 6.0
+ of ImageMagick or newer. Such a dependency may be warranted
+ if, for example, the command line options of an executable
+ have changed.</para>
- <programlisting>
-ABI_DEPENDS+= tiff>=3.6.1:../../graphics/tiff
- </programlisting>
-
- <para>In addition to the above <varname>DEPENDS</varname>
- line, this denotes that while a package will build against
- tiff>=3.5.4, at least version 3.6.1 is recommended.
- <varname>ABI_DEPENDS</varname> entries will be turned into
- dependencies unless explicitly ignored (in which case a
- warning will be printed).</para>
-
- <para>To ignore these ABI dependency recommendations and just
- use the required <varname>DEPENDS</varname>, set
- <varname>USE_ABI_DEPENDS=NO</varname>. This may make
- it easier and faster to update packages built using pkgsrc,
- since older compatible dependencies can continue to be
- used. This is useful for people who watch their rebuilds
- very carefully; it is not very good as a general-purpose
- hammer. If you use it, you need to be mindful of possible
- ABI changes, including those from the underlying OS.</para>
-
- <para>Packages that are built with recommendations ignored
- may not be uploaded to ftp.NetBSD.org by developers and
- should not be used across different systems that may have
- different versions of binary packages installed.</para>
+ <para>If you need to depend on minimum versions of libraries,
+ see the buildlink section of the pkgsrc guide.</para>
<para>For security fixes, please update the package
vulnerabilities file. See <xref
linkend="security-handling"/> for more
information.</para>
</listitem>
-
- <listitem>
- <para>If your package needs some executable to be able to run
- correctly and if there's no
- <filename>buildlink3.mk</filename> file, this is specified
- using the <varname>DEPENDS</varname> variable. The
- <filename role="pkg">print/lyx</filename> package needs to
- be able to execute the latex binary from the teTeX package
- when it runs, and that is specified:</para>
-
- <programlisting>
-DEPENDS+= teTeX-[0-9]*:../../print/teTeX
- </programlisting>
-
- <para>The comment about wildcard dependencies from previous
- paragraph applies here, too.</para>
- </listitem>
</orderedlist>
<para>If your package needs files from another package to build,