aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKazuo Horikawa <horikawa@FreeBSD.org>2000-11-17 03:19:53 +0000
committerKazuo Horikawa <horikawa@FreeBSD.org>2000-11-17 03:19:53 +0000
commit395d10ef21696ebecf95b7cc2b23656951add9de (patch)
treea81e2767bb0e745a7c3c009f01f5ecbdd87f342e
parenteeb803f1dcb1467a7a52fc45650ac488d0f734d2 (diff)
downloaddoc-395d10ef21696ebecf95b7cc2b23656951add9de.tar.gz
doc-395d10ef21696ebecf95b7cc2b23656951add9de.zip
crunchgen.1 1.11.2.1
ppp.8 1.209.2.13
Notes
Notes: svn path=/head/; revision=8384
-rw-r--r--ja_JP.eucJP/man/man1/crunchgen.188
-rw-r--r--ja_JP.eucJP/man/man8/ppp.822
2 files changed, 77 insertions, 33 deletions
diff --git a/ja_JP.eucJP/man/man1/crunchgen.1 b/ja_JP.eucJP/man/man1/crunchgen.1
index 19c1047ce1..8c91937417 100644
--- a/ja_JP.eucJP/man/man1/crunchgen.1
+++ b/ja_JP.eucJP/man/man1/crunchgen.1
@@ -22,7 +22,7 @@
.\" Author: James da Silva, Systems Design and Analysis Group
.\" Computer Science Department
.\" University of Maryland at College Park
-.\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.11 2000/03/01 14:08:47 sheldonh Exp %
+.\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.11.2.1 2000/11/15 18:38:48 joe Exp %
.\"
.Dd September 29, 1997
.\" jpman %Id: crunchgen.1,v 1.3 1997/07/29 13:43:59 konuma Stab %
@@ -33,14 +33,13 @@
.Nd クランチバイナリ構築環境を作成する
.Sh 書式
.Nm \&crunchgen
-.Op Fl fql
+.Op Fl foql
.Op Fl h Ar makefile-header-name
.Op Fl m Ar makefile-name
.Op Fl c Ar c-file-name
.Op Fl e Ar exec-file-name
.Op Ar conf-file
.Sh 解説
-
クランチバイナリ(crunched binary)は、
たくさんの別々のプログラムをひとつにまとめて
単一の実行形式にしたプログラムです。
@@ -49,9 +48,8 @@
複数プログラムをクランチしてひとつにまとめる主たる理由は、
インストールフロッピあるいはシステム回復フロッピ上に、
できるだけ多くのプログラムを収納するためです。
-
.Pp
-.Nm crunchgen
+.Nm
.Ar conf-file
に記述されたクランチバイナリのための設定項目を読み込み、
@@ -69,7 +67,31 @@ Makefile とそれに付随するトップレベルの C ソースファイルを生成します。
.Nm crunchide
を用い、全ての不要なシンボルを隠すことで
コンポーネントプログラム間のリンク時のシンボル競合を防ぎます。
-
+.Pp
+.Nm
+は特殊な要件をパッケージの
+.Pa Makefiles
+に課しており、このことが原因で
+.Pa Makefiles
+が非 BSD ソース用に使えなくなっています。
+特に、
+.Nm Makefile
+はターゲット
+.Ar depend
+を含むことが必要であり、全オブジェクトファイルを変数
+.Ar OBJS
+で定義することが必要です。
+場合によっては、偽の
+.Pa Makefile
+を使えるでしょう。
+.Nm
+は、ソースディレクトリ
+.Pa foo
+中の
+.Pa Makefile
+を見る前に、現在のディレクトリ中の
+.Pa Makefile.foo
+を見ます。
.Pp
.Nm
実行後、 ``make -f <conf-name>.mk'' を実行することで
@@ -82,7 +104,6 @@ Makefile とそれに付随するトップレベルの C ソースファイルを生成します。
しかしこのターゲットは自動的には実行されません。
リリースエンジニアリング環境では、オブジェクトを他のディレクトリで
修正するのは一般に望ましくないからです。
-
.Pp
オプションは以下の通りです:
.Bl -tag -width indent
@@ -99,7 +120,7 @@ Makefile とそれに付随するトップレベルの C ソースファイルを生成します。
.It Fl l
名前の表示。このバイナリが対応する名前を一覧表示します。
.It Fl h Ar makefile-header-name
-.Nm crunchgen
+.Nm
が生成する Makefile の先頭に含めるファイルの名前を設定します。
make の変数を定義するのに便利です。
これには、make の動作に影響を与え、環境変数を介してでは面倒である、
@@ -109,11 +130,12 @@ make の変数を定義するのに便利です。
出力する Makefile の名前を
.Ar makefile-name
とします。デフォルトの名前は ``<conf-name>.mk'' です。
+.It Fl o
+各プログラムの make ターゲットに対し、``make obj'' ルールを追加します。
.It Fl q
静粛処理モード。状況報告メッセージを抑制します。
.El
.Sh CRUNCHGEN コンフィギュレーションファイルコマンド
-
.Nm
は、クランチバイナリのコンポーネントについて記述した設定項目を
.Ar conf-file
@@ -146,6 +168,8 @@ make の変数を定義するのに便利です。
クランチバイナリのリンク時に含めるライブラリ指定のリスト。
.Nm libs
行は複数あっても構いません。
+.It Nm buildopts Ar buildopts ...
+各 make ターゲットに追加追加される、ビルドオプションのリスト。
.It Nm ln Ar progname linkname
argv[0] に
.Ar linkname
@@ -155,7 +179,6 @@ argv[0] に
これにより、起動時の名前によって振る舞いを変えるようなプログラムも
正しく動作するようにできます。
.El
-
特別な状況、例えば
ソースファイルがないとか、
従来の Makefile によらないビルドを行うといった
@@ -196,6 +219,12 @@ argv[0] に
自身が
.Ar objdir
となります。
+.It Nm special Ar progname Nm buildopts Ar buildopts
+ビルドオプション集合を定義します。
+.Ar progname
+処理時には、
+.Nm buildopts
+で指定されたものに加え、これらが追加されてターゲットが作成されます。
.It Nm special Ar progname Nm objs Ar object-file-name ...
プログラム
.Ar progname
@@ -225,7 +254,6 @@ argv[0] に
このオプションはシンボルが衝突するときの最後の拠所ですが、
シンボル解決の唯一の方法である場合もあります。
.El
-
.Pp
実際に
.Nm
@@ -242,7 +270,6 @@ argv[0] に
ですから、もし可能なら、初期のパラメータを指定し、あとは
.Nm
に求めさせたほうが便利な場合もあります。
-
.Pp
.Nm
が生成する makefile はオプションのターゲット
@@ -264,17 +291,20 @@ argv[0] に
.Dq Pa kcopy.conf
の内容を示します。
.Pp
-.nf
- srcdirs /usr/src/bin /usr/src/sbin
+.Bd -literal -offset indent
+srcdirs /usr/src/bin /usr/src/sbin
+
+progs test cp echo sh fsck halt init mount umount myinstall
+progs anotherprog
+ln test [ # test は [ として起動することもできる
+ln sh -sh # init は argv[0] を "-sh" としてシェルを起動する
- progs test cp echo sh fsck halt init mount umount myinstall
- ln test [ # test は [ として起動することもできる
- ln sh -sh # init は argv[0] を "-sh" としてシェルを起動する
+special myprog objpaths /homes/leroy/src/myinstall.o # ソースなし
- special myprog objpaths /homes/leroy/src/myinstall.o # ソースなし
+special anotherprog -DNO_FOO WITHOUT_BAR=YES
- libs -lutil -lcrypt
-.fi
+libs -lutil -lcrypt
+.Ed
.Pp
このコンフィギュレーションファイルでは、
いくつかの基本的なシステムユーティリティと
@@ -285,15 +315,19 @@ argv[0] に
.Nm special
行で直接指定されています。
.Pp
+さらに、``anotherprog'' 構築時には、引数
+.Ar -DNO_FOO WITHOUT_BAR=YES
+がすべてのビルドターゲットに対して追加されます。
+.Pp
クランチバイナリ ``kcopy'' は以下のようにして作成できます:
.Pp
-.nf
- % crunchgen -m Makefile kcopy.conf # Makefile と kcopy.c 作成
- % make objs # コンポーネントプログラムの *.o 作成
- % make # クランチバイナリ kcopy の作成
- % kcopy sh # シェル sh を起動できるかどうか試すと..
- $ # うまくいった!
-.fi
+.Bd -literal -offset indent
+% crunchgen -m Makefile kcopy.conf # Makefile と kcopy.c 作成
+% make objs # コンポーネントプログラムの *.o 作成
+% make # クランチバイナリ kcopy の作成
+% kcopy sh # シェル sh を起動できるかどうか試すと..
+$ # うまくいった!
+.Ed
.Pp
ここまでくれば、バイナリ ``kcopy'' をインストールフロッピにコピーし、
各コンポーネントプログラムの名前でハードリンクを設けることができます。
diff --git a/ja_JP.eucJP/man/man8/ppp.8 b/ja_JP.eucJP/man/man8/ppp.8
index 93fb3a95c0..bad532fc44 100644
--- a/ja_JP.eucJP/man/man8/ppp.8
+++ b/ja_JP.eucJP/man/man8/ppp.8
@@ -1,4 +1,4 @@
-.\" %FreeBSD: src/usr.sbin/ppp/ppp.8,v 1.209.2.12 2000/10/31 02:26:18 brian Exp %
+.\" %FreeBSD: src/usr.sbin/ppp/ppp.8,v 1.209.2.13 2000/11/16 21:52:03 brian Exp %
.\"
.\" jpman %Id: ppp.8,v 1.4 1997/06/08 18:41:58 saeki Stab %
.\"
@@ -3087,12 +3087,22 @@ NAT は、外部インタフェースでのみ動作し、
それらをゲートウェイの後の特定のマシンにマップしたい場合に有用です。
.It nat deny_incoming Op yes|no
yes に設定すると、
-ファイアウォールとほぼ同様にパケットを落とすことにより、
-このコマンドは全入力接続を拒否します。
+エイリアシングリンクがまだ存在しないところでは、
+このコマンドは全パケットを拒否します。
+.Dq エイリアシングリンク
+が何であるかについては、
+.Xr libalias 3
+の
+.Sx 概念の背景
+節を参照してください。
.Pp
-このオプションを有効化すると、
-libalias が識別不可能な IP パケットを落とすことに注意してください。
-これは将来修正される予定です。
+どのような状況において
+.Xr libalias 3
+がエイリアシングリンクを作成したか、気をつける必要があります。
+.Dq set filter
+または
+.Dq nat target
+のコマンドを使用して、更にネットワークを保護する必要があるかもしれません。
.It nat help|?
このコマンドは、使用可能な nat コマンドのまとめを表示します。
.It nat log Op yes|no