[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

pkgsrc/doc/guide/files/components.xml: 1.28 -> 1.30



以下のページの更新をしました。ツッコミをお願いします。

pkgsrc/doc/guide/files/components.xml: 1.28 -> 1.30

> revision 1.30
> date: 2006/09/10 19:36:41;  author: wiz;  state: Exp;  lines: +2 -2
> Remove accidental extra character.
> ----------------------------
> revision 1.29
> date: 2006/09/10 19:11:15;  author: wiz;  state: Exp;  lines: +414 -363
> Document SVR4_PKGNAME; improve pkgdiff description; document
> PATCHDIR, default setting of MESSAGE_SUBST, and FILESDIR.
> Reindent.

火曜日までに異議がなければ、 commit します。

原文は
http://cvsweb.de.NetBSD.org/cgi-bin/cvsweb.cgi/pkgsrc/doc/guide/files/components.xml?rev=1.30&content-type=text/plain
で、訳文は
http://www.na.rim.or.jp/%7Ekano/tmp/pkgsrc/doc/guide/files/components.xml
に置いてあります。

以下、訳と原文それぞれの、
1.28 から空白類文字を調節したものと 1.30 との差分です。

--- components.xml.orig	2006-12-18 00:15:27.000000000 +0900
+++ components.xml	2006-12-18 00:22:11.000000000 +0900
@@ -1,6 +1,6 @@
-<!-- $NetBSD: components.xml,v 1.28 2006/09/03 00:20:49 wiz Exp $ -->
+<!-- $NetBSD: components.xml,v 1.30 2006/09/10 19:36:41 wiz Exp $ -->
 <!-- Based on english version: -->
-<!-- NetBSD: components.xml,v 1.28 2006/09/03 00:20:49 wiz Exp   -->
+<!-- NetBSD: components.xml,v 1.30 2006/09/10 19:36:41 wiz Exp   -->
 
 <chapter id="components"> <?dbhtml filename="components.html"?>
 <title>パッケージコンポーネント - ファイル、ディレクトリー、およびコンテンツ</title>
@@ -31,14 +31,24 @@
     基礎となる名前です。</para></listitem>
 
     <listitem><para><varname>PKGNAME</varname> は、
-    pkgsrc が使うパッケージ名です。これは、パッケージ名が <varname>DISTNAME</varname>
-    と異なる場合のみ書く必要があります。
+    pkgsrc が使うパッケージ名です。これは、
+    <varname>DISTNAME</varname> (標準での値) が pkgsrc
+    におけるパッケージ名としてふさわしくない場合のみ書く必要があります。
     通常、これはディレクトリー名とバージョン番号を合わせたものになります。
     この値は正規表現 <varname>^[A-Za-z0-9][A-Za-z0-9-_.+]*$</varname>
     にマッチする必要があります。すなわち、使える文字は、
     アルファベット・数字・マイナス記号・下線・ピリオド・プラス記号だけであり、
     また、最初の文字はアルファベットまたは数字である必要があります。</para></listitem>
 
+    <listitem><para><varname>SVR4_PKGNAME</varname> は、
+    <varname>PKGNAME</varname> が SVR4 のシステムにおいて一意なものにならない場合に、
+    パッケージファイルを作成する際に使う名前です。標準では
+    <varname>PKGNAME</varname> であり、これの短縮は
+    <filename role="pkg">pkgtools/gensolpkg</filename> を使っておこなうことができます。
+    <varname>SVR4_PKGNAME</varname> を使うのは、SVR4 のシステムで
+    <varname>PKGNAME</varname> から一意なパッケージ名が得られない場合だけです。
+    <varname>SVR4_PKGNAME</varname> の長さの上限は 5 文字です。</para></listitem>
+
     <listitem><para><varname>CATEGORIES</varname> は、
     当該パッケージにふさわしいカテゴリーのリストです。
     pkgsrc の最上層にあるディレクトリーから自由に選ぶことができます。</para>
@@ -232,7 +242,10 @@
   <command>cp -p filename filename.orig</command>のようにするか、あるいはさらに簡単に、同パッケージの
   <command>pkgvi</command>を使って、元のファイルを<filename>filename.orig</filename>の名前でバックアップしておくだ
   けです。この方法でパッケージをアップグレードした場合、<command>patchdiff</command>を使って、新
-  しいパッチと既存のパッチを簡単に比較することができます。</para>
+  しいパッチと既存のパッチを簡単に比較することができます。
+  使用したいパッチまたは更新したいパッチを、
+  <filename>work/.newpatches</filename> ディレクトリーから
+  <filename>patches/</filename> にコピーします。</para>
 
   <para>パッケージを作り終えたとき、忘れずに<command>make
   makepatchsum</command>コマンドでパッチファ
@@ -240,6 +253,21 @@
   linkend="components.distinfo"/>を参照してくだ
   さい。</para>
 
+  <para>(たとえば、マニュアルページのインストール先を
+  pkgsrc の流儀に合わせて変えるといったものではなく)
+  distfile の問題を正すパッチを追加した場合は、
+  そのパッチをバグ報告としてメンテナーに送ってください。
+  こうすることで、pkgsrc を使っていない利用者も幸せになれますし、
+  通常は、将来のバージョンでパッチを削除することができるようになります。</para>
+
+  <para>pkgsrc の複数のパッケージが同じ distfile を使っているなどの理由で、
+  複数のパッケージの間でパッチを共有したい場合は、
+  <varname>PATCHDIR</varname> をパッチファイルのある場所へのパスに設定します。
+  たとえば以下のようにします。</para>
+  <programlisting>
+    PATCHDIR= ${.CURDIR}/../xemacs/patches
+  </programlisting>
+
     <para>作者その他のメンテナーが配布しているパッチファイルは、
     <varname>PATCHFILES</varname>
     に列挙することができます。</para>
@@ -443,7 +471,8 @@
 	    イルが移動された後。このファイルは、
 	    <filename>PLIST</filename>内の@execコマンドでは不可能な特
 	    別な処理のために使うことができます。より詳細な情報は&man.pkg.add.1;と
-	    &man.pkg.create.1;を参照してください。</para>
+	    &man.pkg.create.1;を参照してください。<xref
+	    linkend="files-and-dirs-outside-prefix" />もあわせて参照してください。</para>
 	  </listitem>
 	</varlistentry>
 
@@ -477,7 +506,19 @@
 	    </programlisting>
 
 	    <para>とすると、<filename>MESSAGE</filename>中の "${SOMEVAR}" は、
-	    <quote>somevalue</quote>に置換されます。</para>
+	    <quote>somevalue</quote>に置換されます。標準では、置換は
+	    <varname>PKGNAME</varname>,
+	    <varname>PKGBASE</varname>, <varname>PREFIX</varname>,
+	    <varname>LOCALBASE</varname>, <varname>X11PREFIX</varname>,
+	    <varname>X11BASE</varname>,
+	    <varname>PKG_SYSCONFDIR</varname>,
+	    <varname>ROOT_GROUP</varname>,
+	    <varname>ROOT_GROUP</varname> に対しておこなわれます。</para>
+
+	    <para><varname>MESSAGE_SRC</varname> 変数を設定すると、
+	    置換の対象のファイルを変えたり追加したりすることができます。
+	    この変数は、<filename>MESSAGE</filename> (このファイルが存在する場合)
+	    です。</para>
 	  </listitem>
 	</varlistentry>
 
@@ -562,8 +603,16 @@
     <para>また、もしあなたがコンフィギュレーションまたは構築するより前に、パッケージ
     中に何かファイルを置きたいならば、それらのファイルをfilesディレクトリーに置
     くことができますし、<quote>pre-configure</quote>ターゲットで、
-    <quote>${CP}</quote>コマンドによりコピーす
+    <command>${CP}</command>コマンドによりコピーす
     ることができます。あるいは、<filename>/dev/null</filename>に対するそのファイルの単純なdiffをとり、
     パッチメカニズムを使用して、そのファイルを生成することもできます。</para>
+
+    <para>files ディレクトリーにファイルを置く方法で、他のパッケージとファイルを共有したい場合は、
+    <varname>FILESDIR</varname> 変数を、他のパッケージの
+    <filename>files</filename> ディレクトリーを指すように設定します。
+    たとえば以下のようにします。</para>
+    <programlisting>
+      FILESDIR=${.CURDIR}/../xemacs/files
+    </programlisting>
   </sect1>
 </chapter>
--- components.xml.orig	2006-12-16 22:47:19.000000000 +0900
+++ components.xml	2006-12-16 19:43:53.000000000 +0900
@@ -1,4 +1,4 @@
-<!-- $NetBSD: components.xml,v 1.28 2006/09/03 00:20:49 wiz Exp $ -->
+<!-- $NetBSD: components.xml,v 1.30 2006/09/10 19:36:41 wiz Exp $ -->
 
 <chapter id="components"> <?dbhtml filename="components.html"?>
 <title>Package components - files, directories and contents</title>
@@ -20,8 +20,8 @@
   sections that describe the package.</para>
 
   <para>In the first section there are the following variables, which
-  should appear exactly in the order given here. The ordering and
-  grouping of variables is mostly historical and has no further
+  should appear exactly in the order given here.  The order and
+  grouping of the variables is mostly historical and has no further
   meaning.</para>
   <itemizedlist>
 
@@ -31,13 +31,24 @@
 
     <listitem><para><varname>PKGNAME</varname> is the name of the
     package, as used by pkgsrc. You only need to provide it if
-    it differs from <varname>DISTNAME</varname>. Usually it is the
+    <varname>DISTNAME</varname> (which is the default) is not a good
+    name for the package in pkgsrc.  Usually it is the pkgsrc
     directory name together with the version number. It must match the
     regular expression
     <varname>^[A-Za-z0-9][A-Za-z0-9-_.+]*$</varname>, that is, it
     starts with a letter or digit, and contains only letters, digits,
     dashes, underscores, dots and plus signs.</para></listitem>
 
+    <listitem><para><varname>SVR4_PKGNAME</varname> is the name of
+    the package file to create if the <varname>PKGNAME</varname>
+    isn't unique on a SVR4 system. The default is
+    <varname>PKGNAME</varname>, which may be shortened when you use
+    <filename role="pkg">pkgtools/gensolpkg</filename>. Only add
+    <varname>SVR4_PKGNAME</varname> if <varname>PKGNAME</varname>
+    does not produce an unique package name on a SVR4 system.
+    The length of <varname>SVR4_PKGNAME</varname> is limited to 5
+    characters.</para></listitem>
+
     <listitem><para><varname>CATEGORIES</varname> is a list of categories
     which the package fits in. You can choose any of the top-level
     directories of pkgsrc for it.</para>
@@ -233,13 +244,30 @@
   using <command>pkgvi</command> again from the same package. If
   you upgrade a package this way, you can easily compare the new
   set of patches with the previously existing one with
-  <command>patchdiff</command>.</para>
+  <command>patchdiff</command>. Copy the patches you want to use
+  or update from the <filename>work/.newpatches</filename>
+  directory to <filename>patches/</filename>.</para>
 
   <para>When you have finished a package, remember to generate
   the checksums for the patch files by using the <command>make
   makepatchsum</command> command, see <xref
   linkend="components.distinfo"/>.</para>
 
+  <para>When adding a patch that corrects a problem in the
+  distfile (rather than e.g. enforcing pkgsrc's view of where
+  man pages should go), send the patch as a bug report to the
+  maintainer.  This benefits non-pkgsrc users of the package,
+  and usually makes it possible to remove the patch in future
+  version.</para>
+
+  <para>If you want to share patches between multiple packages
+  in pkgsrc, e.g. because they use the same distfiles, set
+  <varname>PATCHDIR</varname> to the path where the patch files
+  can be found, e.g.:</para>
+  <programlisting>
+    PATCHDIR= ${.CURDIR}/../xemacs/patches
+  </programlisting>
+
     <para>Patch files that are distributed by the author or other
     maintainers can be listed in
     <varname>PATCHFILES</varname>.</para>
@@ -443,7 +471,8 @@
 	    are moved in place. This can be used to do any custom
 	    procedures not possible with @exec commands in
 	    <filename>PLIST</filename>. See &man.pkg.add.1; and
-	    &man.pkg.create.1; for more information.</para>
+	    &man.pkg.create.1; for more information.  See also <xref
+	    linkend="files-and-dirs-outside-prefix" />.</para>
 	  </listitem>
 	</varlistentry>
 
@@ -477,7 +506,19 @@
 	    </programlisting>
 
 	    <para>replaces "${SOMEVAR}" with <quote>somevalue</quote> in
-	    <filename>MESSAGE</filename>.</para>
+	    <filename>MESSAGE</filename>.  By default, substitution is
+	    performed for <varname>PKGNAME</varname>,
+	    <varname>PKGBASE</varname>, <varname>PREFIX</varname>,
+	    <varname>LOCALBASE</varname>, <varname>X11PREFIX</varname>,
+	    <varname>X11BASE</varname>,
+	    <varname>PKG_SYSCONFDIR</varname>,
+	    <varname>ROOT_GROUP</varname>, and
+	    <varname>ROOT_GROUP</varname>.</para>
+
+	    <para>You can display a different or additional files by
+	    setting the <varname>MESSAGE_SRC</varname> variable.  Its
+	    default is <filename>MESSAGE</filename>, if the file
+	    exists.</para>
 	  </listitem>
 	</varlistentry>
 
@@ -563,10 +604,18 @@
 
     <para>If you have any files that you wish to be placed in the package prior
     to configuration or building, you could place these files here and use
-    a <quote>${CP}</quote> command in the
+    a <command>${CP}</command> command in the
     <quote>pre-configure</quote> target to achieve
     this. Alternatively, you could simply diff the file against
     <filename>/dev/null</filename> and use the patch mechanism to manage
     the creation of this file.</para>
+
+    <para>If you want to share files in this way with other
+    packages, set the <varname>FILESDIR</varname> variable to point
+    to the other package's <filename>files</filename> directory,
+    e.g.:</para>
+    <programlisting>
+      FILESDIR=${.CURDIR}/../xemacs/files
+    </programlisting>
   </sect1>
 </chapter>