ドキュメントの修正
authorj8takagi <j8takagi@nifty.com>
Wed, 20 Jun 2018 13:50:11 +0000 (22:50 +0900)
committerj8takagi <j8takagi@nifty.com>
Wed, 20 Jun 2018 13:50:11 +0000 (22:50 +0900)
INSTALL
Makefile
doc/.gitignore
doc/install.texi
doc/install.txt [new file with mode: 0644]
doc/manual.texi
doc/texinfo.mk

diff --git a/INSTALL b/INSTALL
index 22b893d..fa63cce 100644 (file)
--- a/INSTALL
+++ b/INSTALL
   シェルの確認
   2.8.1 'PATH'の設定
   2.8.2 'INFOPATH'の設定
-  2.8.3 'CASL2LIB'の設定
 1 要件
 ******
 
  YACASL2は、LinuxやMac OS Xなど、UNIX系のOS上で動作します。現在動作を確
-認しているのは、Ubuntu LinuxとVine Linux、Mac OS Xです。
+認しているのは、Ubuntu LinuxとMac OS Xです。
 
  インストール時に、'tar' 'gcc' 'make'が必要です。Linuxでは多くの場合、標
 準でインストールされています。Mac OS Xの場合、Xcodeの「Command Line
@@ -39,7 +38,7 @@ Tools」に含まれます。
 =========================
 
  ダウンロードが完了したら、圧縮ファイルが改竄されていないか検証します。
-検証にはGnuPG分離署名か、MD5ハッシュ値を使います。
+検証にはGnuPG分離署名か、MD5ハッシュ値を使います。
 
 2.2.1 GnuPG分離署名での検証
 ---------------------------
@@ -184,8 +183,6 @@ Tools」に含まれます。
 PREFIX         インストール時のルートファイル       '~'
 BINDIR         実行ファイルのインストール先         '$prefix/bin'
 INFODIR        infoファイルのインストール先         '$prefix/share/info'
-CASL2LIBDIR    CASL II ライブラリファイルのインス   '$prefix/share/casl2lib'
-               トール先
 
 2.8 環境変数の設定
 ==================
@@ -235,16 +232,3 @@ CASL2LIBDIR    CASL II ライブラリファイルのインス   '$prefix/share/
 
      $ echo 'INFOPATH=$INFOPATH:~/share/info && export INFOPATH' >>~/.bashrc
 
-2.8.3 'CASL2LIB'の設定
-----------------------
-
- 環境変数'CASL2LIB'を設定しておけば、CASL IIプログラム作成時に共通ライブ
-ラリを呼び出す手間が小さくなります。例えば、CASL2LIBを
-'~/share/casl2lib'にインストールしたときは、次のコマンドで設定できます。
-
-     $ CASL2LIB=~/share/casl2lib && export CASL2LIB
-
- '~/.bashrc'には次のコマンドで追加できます。
-
-     $  echo 'CASL2LIB=~/share/casl2lib && export CASL2LIB' >>~/.bashrc
-
index 67d7de3..7222401 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -36,7 +36,7 @@ VERSIONFILES = include/package.h \
         test/system/comet2_opt/opt_v/0.txt \
         test/system/dumpword/opt_v/0.txt
 
-all: build doc gtags
+all: build INSTALL gtags
 
 build:
        $(MAKE) -C src all
@@ -45,13 +45,12 @@ build:
 gtags:
        $(if $(strip $(shell $(WHICH) $(GTAGS))),$(GTAGS),@$(ECHO) '$(GTAGS): not found')
 
-doc:
-       $(MAKE) -C doc base
-       $(MAKE) INSTALL
-
 INSTALL: doc/install.txt
        $(CP) $< $@
 
+doc/install.txt:
+       $(MAKE) -C doc base
+
 alldoc:
        $(MAKE) -C doc all
 
@@ -61,17 +60,14 @@ doc_inner:
 check:
        $(MAKE) -sC test/system
 
-install: casl2 comet2 dumpword install-info install-casl2lib
+install: casl2 comet2 dumpword install-info
        $(INSTALL) -d $(bindir)
        $(INSTALL) $(CMD) $(bindir)/
 
 install-info:
        $(MAKE) -C doc install-info
 
-install-casl2lib:
-       $(MAKE) -C as/casl2lib install-casl2lib
-
-uninstall: uninstall-info uninstall-casl2lib
+uninstall: uninstall-info
        $(RM) $(prefix $(bindir)/,$(CMD))
 
 version: $(VERSIONFILES)
index f8fc444..86a0894 100644 (file)
@@ -2,7 +2,6 @@ install.html
 install_html
 install.info
 install.pdf
-install.txt
 manual.html
 manual_html
 manual.pdf
index f4e4fe0..ee81dc4 100644 (file)
@@ -35,7 +35,7 @@ Copyright @copyright{} 2010-2018 j8takagi
 @node Require, install, Top, Top
 @chapter 要件
 
-YACASL2は、LinuxやMac OS Xなど、UNIX系のOS上で動作します。現在動作を確認しているのは、Ubuntu LinuxとVine Linux、Mac OS Xです。
+YACASL2は、LinuxやMac OS Xなど、UNIX系のOS上で動作します。現在動作を確認しているのは、Ubuntu LinuxとMac OS Xです。
 
 インストール時に、@command{tar} @command{gcc} @command{make}が必要です。Linuxでは多くの場合、標準でインストールされています。Mac OS Xの場合、Xcodeの「Command Line Tools」に含まれます。
 
@@ -61,7 +61,7 @@ YACASL2は、LinuxやMac OS Xなど、UNIX系のOS上で動作します。現在
 @node Verify, Expand, Download, install
 @section YACASL2ファイルの検証
 
-ダウンロードが完了したら、圧縮ファイルが改竄されていないか検証します。検証にはGnuPG分離署名か、MD5ハッシュ値を使います。
+ダウンロードが完了したら、圧縮ファイルが改竄されていないか検証します。検証にはGnuPG分離署名か、MD5ハッシュ値を使います。
 
 @subsection GnuPG分離署名での検証
 
@@ -218,7 +218,6 @@ $ @kbd{sudo make install prefix=/usr/local}
 @item @var{prefix} @tab インストール時のルートファイル @tab @file{~}
 @item @var{bindir} @tab 実行ファイルのインストール先 @tab @file{$prefix/bin}
 @item @var{infodir} @tab infoファイルのインストール先 @tab @file{$prefix/share/info}
-@item @var{casl2libdir} @tab CASL II ライブラリファイルのインストール先 @tab @file{$prefix/share/casl2lib}
 @end multitable
 
 @node Environment,  , Install, install
@@ -265,18 +264,4 @@ $ @kbd{INFOPATH=$INFOPATH:~/share/info && export INFOPATH}
 $ @kbd{echo 'INFOPATH=$INFOPATH:~/share/info && export INFOPATH' >>~/.bashrc}
 @end example
 
-@subsection @code{CASL2LIB}の設定
-
-環境変数@code{CASL2LIB}を設定しておけば、CASL IIプログラム作成時に共通ライブラリを呼び出す手間が小さくなります。例えば、CASL2LIBを@code{~/share/casl2lib}にインストールしたときは、次のコマンドで設定できます。
-
-@example
-$ @kbd{CASL2LIB=~/share/casl2lib && export CASL2LIB}
-@end example
-
-@file{~/.bashrc}には次のコマンドで追加できます。
-
-@example
-$ @kbd{ echo 'CASL2LIB=~/share/casl2lib && export CASL2LIB' >>~/.bashrc}
-@end example
-
 @bye
diff --git a/doc/install.txt b/doc/install.txt
new file mode 100644 (file)
index 0000000..fa63cce
--- /dev/null
@@ -0,0 +1,234 @@
+1 要件
+2 インストールの手順
+2.1 YACASL2ファイルのダウンロード
+2.2 YACASL2ファイルの検証
+  2.2.1 GnuPG分離署名での検証
+  2.2.2 MD5ハッシュ値での検証
+2.3 YACASL2ファイルの展開
+2.4 'casl2' 'comet2' 'dumpword'のビルド
+2.5 'casl2'の実行テスト
+2.6 詳細なテスト
+2.7 インストール
+2.8 環境変数の設定
+  シェルの確認
+  2.8.1 'PATH'の設定
+  2.8.2 'INFOPATH'の設定
+1 要件
+******
+
+ YACASL2は、LinuxやMac OS Xなど、UNIX系のOS上で動作します。現在動作を確
+認しているのは、Ubuntu LinuxとMac OS Xです。
+
+ インストール時に、'tar' 'gcc' 'make'が必要です。Linuxでは多くの場合、標
+準でインストールされています。Mac OS Xの場合、Xcodeの「Command Line
+Tools」に含まれます。
+
+2 インストールの手順
+********************
+
+2.1 YACASL2ファイルのダウンロード
+=================================
+
+ YACASL2のサイト (http://www.j8takagi.net/yacasl2/)から、'tar.gz'または
+'tar.xz'ファイルと、対応する検証用ファイルをダウンロードします。githubの
+ダウンロードページ (http://github.com/j8takagi/YACASL2/downloads/)から
+'tar.gz'などのファイルをダウンロードすることもできます。
+
+2.2 YACASL2ファイルの検証
+=========================
+
+ ダウンロードが完了したら、圧縮ファイルが改竄されていないか検証します。
+検証には、GnuPG分離署名か、MD5ハッシュ値を使います。
+
+2.2.1 GnuPG分離署名での検証
+---------------------------
+
+ GnuPGの'gpg'で圧縮ファイルを検証します。この検証を行うには、GnuPGがイン
+ストールされ、自分の秘密鍵と公開鍵のペアが作成されている必要があります。
+
+     $ gpg --verify yacasl2.tar.xz.asc
+     gpg: Signature made Sat Oct 27 02:17:16 2012 JST using RSA key ID 25B62DD1
+     gpg: Can't check signature: public key not found
+     $ gpg --recv-keys 25B62DD1
+     gpg: requesting key 25B62DD1 from hkp server keys.gnupg.net
+     gpg: key 25B62DD1: public key "j8takagi <j8takagi@nifty.com>" imported
+     gpg: Total number processed: 1
+     gpg:               imported: 1  (RSA: 1)
+
+     $ gpg --lsign-key 25B62DD1
+
+     pub  2048R/25B62DD1  created: 2012-09-29  expires: never       usage: SC
+                          trust: unknown       validity: full
+     sub  2048R/92E25C29  created: 2012-09-29  expires: never       usage: E
+     [  full  ] (1). j8takagi <j8takagi@nifty.com>
+
+
+     pub  2048R/25B62DD1  created: 2012-09-29  expires: never       usage: SC
+                          trust: unknown       validity: full
+      Primary key fingerprint: ...
+
+          .* <.*@.*>
+
+     Are you sure that you want to sign this key with your
+     key ".* <.*@.*>"
+
+     The signature will be marked as non-exportable.
+
+     Really sign? (y/N) y
+
+     You need a passphrase to unlock the secret key for
+     user: ".* <.*@.*>"
+     2048-bit RSA key, ID ........, created 20..-..-..
+
+     <input password> password
+
+     $ gpg --verify yacasl2.tar.xz.asc
+     gpg: Signature made Sat Oct 27 02:17:16 2012 JST using RSA key ID 25B62DD1
+     gpg: checking the trustdb
+     gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
+     gpg: depth: 0  valid:   1  signed:   4  trust: 0-, 0q, 0n, 0m, 0f, 1u
+     gpg: depth: 1  valid:   4  signed:   0  trust: 4-, 0q, 0n, 0m, 0f, 0u
+     gpg: Good signature from "j8takagi <j8takagi@nifty.com>"
+
+2.2.2 MD5ハッシュ値での検証
+---------------------------
+
+ 'openssl'と'diff'で圧縮ファイルを検証します。
+
+     $ openssl md5 yacasl2.tar.gz | diff -s yacasl2.tar.gz.md5sum -
+     Files yacasl2.tar.gz.md5sum and - are identical
+
+2.3 YACASL2ファイルの展開
+=========================
+
+ YACASL2ファイルをダウンロードしたら、'tar'コマンドで展開します。
+
+     $ tar xvzf yacasl2.tar.gz
+
+2.4 'casl2' 'comet2' 'dumpword'のビルド
+=======================================
+
+ 展開したら、'make'コマンドで'casl2' 'comet2' 'dumpword'をビルドします。
+
+     $ cd yacasl2
+     $ make
+     make -C src
+     make[1]: Entering directory ‘/home/kazubito/yacasl2/src’
+     gcc -c -g -Wall -I ../include casl2.c
+     gcc -c -g -Wall -I ../include word.c
+     gcc -c -g -Wall -I ../include hash.c
+     gcc -c -g -Wall -I ../include cerr.c
+     gcc -c -g -Wall -I ../include struct.c
+     gcc -c -g -Wall -I ../include cmd.c
+     gcc -c -g -Wall -I ../include assemble.c
+     gcc -c -g -Wall -I ../include token.c
+     gcc -c -g -Wall -I ../include label.c
+     gcc -c -g -Wall -I ../include macro.c
+     gcc -c -g -Wall -I ../include exec.c
+     gcc -c -g -Wall -I ../include dump.c
+     gcc -g -Wall -I ../include -o ../casl2 casl2.o word.o hash.o cerr.o st
+     ruct.o cmd.o assemble.o token.o label.o macro.o exec.o dump.o
+     gcc -c -g -Wall -I ../include comet2.c
+     gcc -g -Wall -I ../include -o ../comet2 comet2.o word.o hash.o cerr.o
+     struct.o cmd.o exec.o dump.o
+     gcc -c -g -Wall -I ../include dumpword.c
+     gcc -g -Wall -I ../include -o ../dumpword dumpword.o word.o cerr.o
+     make[1]: Leaving directory ‘/home/kazubito/yacasl2/src’
+
+2.5 'casl2'の実行テスト
+=======================
+
+ ビルドしたら、次のコマンドが正常に実行できるかを確認します。 正常に実行
+された場合は、「Hello, World!」と表示されます。
+
+     $ ./casl2 as/hello.casl
+     Hello, World!
+
+2.6 詳細なテスト
+================
+
+ 'make check'コマンドを実行すると、正常にビルドできているかどうかを詳細
+にテストできます。 テストには、しばらく時間がかかります。
+
+     $ make check
+     195 / 195 tests passed. Details in /home/username/yacasl2/test/integra
+     tion/casl2/Test.log
+     All tests are succeded.
+     149 / 149 tests passed. Details in /home/username/yacasl2/test/integra
+     tion/comet2/Test.log
+     All tests are succeded.
+     4 / 4 tests passed. Details in /home/username/yacasl2/test/integration
+     /dumpword/Test.log
+     All tests are succeded.
+
+2.7 インストール
+================
+
+ ビルドが成功したら、'make install'コマンドで必要なファイルをインストー
+ルできます。 初期設定では、ホームディレクトリー以下にYACASL2のファイルが
+インストールされます。
+
+     $ make install
+
+ コマンド実行時にオプションを指定することで、インストール先のディレクト
+リーを変更できます。 例えば、'/usr/local'以下にファイルをインストールす
+るには、 次のようにコマンドを実行します。
+
+     $ sudo make install prefix=/usr/local
+
+ オプションの詳細は次のとおりです。
+
+オプション     説明                                 初期設定
+---------------------------------------------------------------------------
+PREFIX         インストール時のルートファイル       '~'
+BINDIR         実行ファイルのインストール先         '$prefix/bin'
+INFODIR        infoファイルのインストール先         '$prefix/share/info'
+
+2.8 環境変数の設定
+==================
+
+ 環境変数'PATH'や'CASL2LIB'を設定することで、YACASL2が使いやすくなります
+。環境変数は、使っているシェルを確認してから設定します。
+
+シェルの確認
+------------
+
+ 環境変数の設定方法は使っているシェルによって異なります。シェルは、次の
+コマンドで確認できます。
+
+     $ echo $SHELL
+     /bin/bash
+
+ 現在もっとも多く使われているシェルは、Bashでしょう。以下、Bashでの設定
+方法を説明します。
+
+2.8.1 'PATH'の設定
+------------------
+
+ 'PATH'にYACASL2の実行ファイルのインストール先を追加すると、ディレクトリ
+ーの指定を省略して'casl2' 'comet2' 'dumpword'を実行できます。例えば、初
+期設定のまま実行ファイルを'~/bin'にインストールしたときは、次のコマンド
+で設定できます。
+
+     $ PATH=$PATH:~/bin && export PATH
+
+ 環境変数の設定は、シェルの初期設定ファイルに追加することでログインした
+あと自動的に反映されるようになります。Bashでは'~/.bashrc'が初期設定ファ
+イルです。次のコマンドで追加できます。
+
+     $ echo ’PATH=$PATH:~/bin && export PATH’ >>~/.bashrc
+
+2.8.2 'INFOPATH'の設定
+----------------------
+
+ 'INFOPATH'にYACASL2のInfoファイルをインストールしたディレクトリーを追加
+すると、ディレクトリーの指定を省略して'casl2' 'comet2' 'dumpword'を実行
+できます。例えば、初期設定のままInfoファイルを'~/share/info'にインストー
+ルしたときは、次のコマンドで設定できます。
+
+     $ INFOPATH=$INFOPATH:~/share/info && export INFOPATH
+
+ '~/.bashrc'には次のコマンドで追加できます。
+
+     $ echo 'INFOPATH=$INFOPATH:~/share/info && export INFOPATH' >>~/.bashrc
+
index 9ccba19..1c27aa2 100644 (file)
@@ -778,7 +778,7 @@ $ @kbd{comet2 hello.o}
 @command{comet2}の使用方法を表示して終了します。
 @end table
 
-@node dumpword invocation, CASL2LIB Manual, comet2 invocation, Top
+@node dumpword invocation, , comet2 invocation, Top
 @chapter @command{dumpword}の呼び出し
 
 @pindex dumpword
index 148fff1..37ff54a 100644 (file)
@@ -62,7 +62,7 @@ endif
        if test ! -e $@; then $(MKDIR) $@; fi
        $(CP) $(CSS) $@/
        $(MAKEINFO) -o $@ --html --css-ref=$(CSS) $<
-       $(SED) -i '.org' -e 's%<img src="\([^"]*\)" *[^>]*>%<object type="image/svg+xml" data="\1">&</object>%g' $@/*.html
+       $(SED) -i'.org' -e 's%<img src="\([^"]*\)" *[^>]*>%<object type="image/svg+xml" data="\1">&</object>%g' $@/*.html
        $(RM) $@/*.html.org
 
 %.html %_html: $(CSS)