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

pkgsrc/doc/guide/files/build.xml: 1.23 -> 1.24



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

pkgsrc/doc/guide/files/build.xml: 1.23 -> 1.24

> revision 1.24
> date: 2006/02/17 20:38:17;  author: rillig;  state: Exp;  lines: +46 -40
> Documented the new mk/scripts/extract command.

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

以下、訳と原文それぞれの新旧の差分です。

--- build.xml.orig	2006-10-30 23:38:42.000000000 +0900
+++ build.xml	2006-10-30 23:38:42.000000000 +0900
@@ -1,6 +1,6 @@
-<!-- $NetBSD: build.xml,v 1.23 2006/02/12 14:44:59 rillig Exp $ -->
+<!-- $NetBSD: build.xml,v 1.24 2006/02/17 20:38:17 rillig Exp $ -->
 <!-- Based on english version: -->
-<!-- NetBSD: build.xml,v 1.23 2006/02/12 14:44:59 rillig Exp   -->
+<!-- NetBSD: build.xml,v 1.24 2006/02/17 20:38:17 rillig Exp   -->
 
 <chapter id="build">
 <title>構築の手順</title>
@@ -114,9 +114,9 @@
 
 <programlisting>
     EVAL_PREFIX+=           GTKDIR=gtk+
-    CONFIGURE_ARGS+=        --with-guile-prefix=${LOCALBASE}        \
-                            --with-gtk-prefix="${GTKDIR}"           \
-                            --enable-multibyte
+    CONFIGURE_ARGS+=        --with-guile-prefix=${LOCALBASE:Q}
+    CONFIGURE_ARGS+=        --with-gtk-prefix=${GTKDIR:Q}
+    CONFIGURE_ARGS+=        --enable-multibyte
 </programlisting>
 
 	<para><varname>EVAL_PREFIX</varname>を使って評価するパッケージに対して、以下のような定義を使って
@@ -229,43 +229,47 @@
 <sect1 id="build.extract">
 <title><emphasis>extract</emphasis> 相</title>
 
-	  <para>distfileがローカルシステム上に存在している場合、
-	    通常、それらは圧縮アーカイブフォーマットで保存されているので、
-	    展開する必要があります。もっとも一般なフォーマットは
-	    <filename>.tar.gz</filename> です。 </para>
-
-	  <para> もし、すべてのdistfileを伸張する必要がないのであれば、
-	    伸張するファイルを
-	    <varname>EXTRACT_ONLY</varname> に設定してください。</para>
-
-	  <para> もし distfile が
-	    <filename>.tar.gz</filename> フォーマットでなければ、
-	    <varname>EXTRACT_SUFX</varname> を設定するか、
-	    <varname>EXTRACT_CMD</varname>,
-	    <varname>EXTRACT_BEFORE_ARGS</varname>,
-	    <varname>EXTRACT_AFTER_ARGS</varname> を設定するかのいずれかにより、
-	    それらを展開することができます。
-	    最初の変数に関して、pkgsrc は多くのサフィックスの展開方法を知っています
-	    (<filename>.tar.gz</filename>, <filename>.tgz</filename>,
-	    <filename>.tar.gz2</filename>, <filename>.tbz</filename>,
-	    <filename>.tar.Z</filename>, <filename>.tar</filename>,
-	    <filename>.shar.gz</filename>,
-	    <filename>.shar.bz2</filename>,
-	    <filename>.shar.Z</filename>, <filename>.shar</filename>,
-	    <filename>.Z</filename>, <filename>.bz2</filename>,
-	    <filename>.gz</filename>; 完全な一覧は、
-	    <filename>bsd.pkg.extract.mk</filename> で定義されている
-	    各種 <varname>DECOMPRESS_CMD</varname> 変数を参照)。
-	    プログラムが圧縮されたシェルアーカイブの形で配布され、
-	    そのファイル名の末尾が <filename>.msg.gz</filename> である場合、
-	    残りの変数の使い方は以下のようになります。</para>
+	<para>distfileがローカルシステム上に存在している場合、
+	通常、それらは圧縮アーカイブフォーマットで保存されているので、
+	展開する必要があります。</para>
+
+	<para>標準では、<varname>DISTFILES</varname> はすべて展開されます。
+	一部だけを展開する必要がある場合は、
+	<varname>EXTRACT_ONLY</varname> 変数を、
+	展開する必要のあるファイルを並べたリストに設定することができます。</para>
+
+	<para>通常、ファイルの展開は <filename>mk/scripts/extract</filename>
+	という小さなプログラムを使っておこなわれます。このプログラムは、
+	各種アーカイブ形式の展開方法を知っているので、
+	何も変更する必要はないでしょう。それでも変更が必要な場合は、
+	以下の変数を使うとよいでしょう。</para>
+
+	<variablelist>
+
+	<varlistentry><term><varname>EXTRACT_OPTS_{BIN,LHA,PAX,RAR,TAR,ZIP,ZOO}</varname></term>
+	<listitem><para>この各変数を使って、展開用のコマンドのオプションを、
+	標準のもの (<filename>mk/scripts/extract</filename>
+	で定義されています) から上書きします。</para></listitem></varlistentry>
+
+	<varlistentry><term><varname>EXTRACT_USING</varname></term>
+	<listitem><para>この変数は、tar アーカイブ展開用のコマンドを設定するもので、
+	<literal>pax</literal>, <literal>tar</literal> または、
+	コマンドの絶対パス名に設定することができます。</para></listitem></varlistentry>
+
+	</variablelist>
+
+	<para>必要なことが <filename>extract</filename>
+	プログラムではできない場合は、ファイル展開用のコマンドを保持する
+	<varname>EXTRACT_CMD</varname> 変数を上書きすることもできます。
+	この変数で指定された展開用コマンドは、
+	<filename>${WRKSRC}</filename> ディレクトリー内で実行されます。
+	このコマンドの実行中は、シェル変数 <varname>extract_file</varname>
+	に、展開中のアーカイブファイルの絶対パス名が保持されます。</para>
+
+	<para>これでもなお不十分な場合は、パッケージの Makefile で、
+	<varname>do-extract</varname>
+	ターゲットを上書きすることができます。</para>
 
-<programlisting>
-    EXTRACT_SUFX=           .msg.gz
-    EXTRACT_CMD=            zcat
-    EXTRACT_BEFORE_ARGS=
-    EXTRACT_AFTER_ARGS=     |sh
-</programlisting>
 
 </sect1>
 
Index: build.xml
===================================================================
RCS file: /cvsroot/pkgsrc/doc/guide/files/build.xml,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- build.xml	12 Feb 2006 14:44:59 -0000	1.23
+++ build.xml	17 Feb 2006 20:38:17 -0000	1.24
@@ -1,4 +1,4 @@
-<!-- $NetBSD: build.xml,v 1.23 2006/02/12 14:44:59 rillig Exp $ -->
+<!-- $NetBSD: build.xml,v 1.24 2006/02/17 20:38:17 rillig Exp $ -->
 
 <chapter id="build">
 <title>The build process</title>
@@ -120,9 +120,9 @@
 
 <programlisting>
     EVAL_PREFIX+=           GTKDIR=gtk+
-    CONFIGURE_ARGS+=        --with-guile-prefix=${LOCALBASE}        \
-                            --with-gtk-prefix="${GTKDIR}"           \
-                            --enable-multibyte
+    CONFIGURE_ARGS+=        --with-guile-prefix=${LOCALBASE:Q}
+    CONFIGURE_ARGS+=        --with-gtk-prefix=${GTKDIR:Q}
+    CONFIGURE_ARGS+=        --enable-multibyte
 </programlisting>
 
 	<para>Specific defaults can be defined for the packages evaluated using
@@ -241,43 +241,49 @@
 <sect1 id="build.extract">
 <title>The <emphasis>extract</emphasis> phase</title>
 
-	  <para>When the distfiles are present on the local system,
-	    they need to be extracted, as they are usually in the form
-	    of some compressed archive format, most commonly
-	    <filename>.tar.gz</filename>. </para>
-
-	  <para> If only some of the
-	    distfiles need to be uncompressed, the files to be
-	    uncompressed should be put into
-	    <varname>EXTRACT_ONLY</varname>.</para>
-
-	  <para> If the distfiles are not in
-	    <filename>.tar.gz</filename> format, they can be extracted
-	    by setting either <varname>EXTRACT_SUFX</varname>, or
-	    <varname>EXTRACT_CMD</varname>,
-	    <varname>EXTRACT_BEFORE_ARGS</varname> and
-	    <varname>EXTRACT_AFTER_ARGS</varname>. In the former case,
-	    pkgsrc knows how to extract a number of suffixes
-	    (<filename>.tar.gz</filename>, <filename>.tgz</filename>,
-	    <filename>.tar.gz2</filename>, <filename>.tbz</filename>,
-	    <filename>.tar.Z</filename>, <filename>.tar</filename>,
-	    <filename>.shar.gz</filename>,
-	    <filename>.shar.bz2</filename>,
-	    <filename>.shar.Z</filename>, <filename>.shar</filename>,
-	    <filename>.Z</filename>, <filename>.bz2</filename> and
-	    <filename>.gz</filename>; see the definition of the
-	    various <varname>DECOMPRESS_CMD</varname> variables in
-	    <filename>bsd.pkg.extract.mk</filename> for a complete
-	    list). Here's an example on how to use the other variables
-	    for a program that comes with a compressed shell archive
-	    whose name ends in <filename>.msg.gz</filename>:</para>
+	<para>When the distfiles are present on the local system, they
+	need to be extracted, as they usually come in the form of some
+	compressed archive format.</para>
+
+	<para>By default, all <varname>DISTFILES</varname> are
+	extracted. If you only need some of them, you can set the
+	<varname>EXTRACT_ONLY</varname> variable to the list of those
+	files.</para>
+
+	<para>Extracting the files is usually done by a little program,
+	<filename>mk/scripts/extract</filename>, which already knows how
+	to extract various archive formats, so most likely you will not
+	need to change anything here. But if you need, the following
+	variables may help you:</para>
+
+	<variablelist>
+
+	<varlistentry><term><varname>EXTRACT_OPTS_{BIN,LHA,PAX,RAR,TAR,ZIP,ZOO}</varname></term>
+	<listitem><para>Use these variables to override the default
+	options for an extract command, which are defined in
+	<filename>mk/scripts/extract</filename>.</para></listitem></varlistentry>
+
+	<varlistentry><term><varname>EXTRACT_USING</varname></term>
+	<listitem><para>This variable can be set to
+	<literal>pax</literal>, <literal>tar</literal> or an absolute
+	pathname pointing to the command with which tar archives should
+	be extracted.</para></listitem></varlistentry>
+
+	</variablelist>
+
+	<para>If the <filename>extract</filename> program doesn't serve
+	your needs, you can also override the
+	<varname>EXTRACT_CMD</varname> variable, which holds the command
+	used for extracting the files. This command is executed in the
+	<filename>${WRKSRC}</filename> directory. During execution of
+	this command, the shell variable <varname>extract_file</varname>
+	holds the absolute pathname of the file that is going to be
+	extracted.</para>
+
+	<para>And if that still does not suffice, you can override the
+	<varname>do-extract</varname> target in the package
+	Makefile.</para>
 
-<programlisting>
-    EXTRACT_SUFX=           .msg.gz
-    EXTRACT_CMD=            zcat
-    EXTRACT_BEFORE_ARGS=
-    EXTRACT_AFTER_ARGS=     |sh
-</programlisting>
 
 </sect1>