次: , 上: Libtool test suite


12.1.1 テストスイートの記述

テストスイートの現在のプログラムと,それらがテストするもののリストは以 下のようになっています.

cdemo-conf.test
cdemo-exec.test
cdemo-make.test
cdemo-static.test
cdemo-shared.test
これらのプログラムは,libtool配布物のcdemoサブディレクトリが, 正しくコンフィグレーションされ,ビルドされることを知るための調査を行な います.

cdemoサブディレクトリは,libtoolのコンビニエンスライブラリのデ モンストレーションと,ビルド時にスタティックライブラリの作成を可能とす るメカニズムを含んでいて,コンポーネントが共有ライブラリであったとして も,プログラムや他のライブラリと後でリンクされることを可能とする方法で す.

cdemo-make.testcdemo-exec.testのテストは,三つの異なる libtoolコンフィグレーションで,三回実行されます. cdemo-conf.testは,スタティックライブラリと共有ライブラリの両方 をビルドするために(両方サポートしているプラットフォームではデフォルト です)cdemo/libtoolをコンフィグレーションし, cdemo-static.testはスタティックライブラリのみビルドし (`--disable-shared'),そしてcdemo-shared.test は共有ライブ ラリのみビルドします(`--disable-static').

demo-conf.test
demo-exec.test
demo-inst.test
demo-make.test
demo-unst.test
demo-static.test
demo-shared.test
demo-nofast.test
demo-pic.test
demo-nopic.test
これらのプログラムは,libtool配布物のdemoサブディレクトリが,コ ンフィグレーション,ビルド,インストール,そしてアンインストールが正し くできることを知るために調査します.

demoサブディレクトリは,libtoolを使用する平凡なパッケージのデモ ンストレーションを含んでいます.テストのdemo-make.testdemo-exec.testdemo-inst.test,そして demo-unst.testは,四つの異なるlibtoolのコンフィグレーションの下 で,四回実行されます.demo-conf.testは,スタティックと共有の両 方のライブラリをビルドするためにdemo/libtoolをコンフィグレーショ ンし,demo-static.testは,スタティックライブラリのみビルドし (`--disable-shared'),そしてdemo-shared.testは,共有ライブ ラリのみをビルドします(`--disable-static'). demo-nofast.testは,高速インストールモードを使用禁止にするため に(`--enable-fast-install=no'),demo/libtoolをコンフィグレー ションします.demo-pic.testは,PICコードをビルドしたいときは (`--with-pic'),非PICコードをビルドしたいときは (`--without-pic')にするように,demo/libtoolをコンフィグレー ションします.

deplibs.test
スタティックライブラリを共有ライブラリにリンク不可能なシステムもたくさ んあります.そのような場合を避けるため,libtoolは deplibs_check_methodを使用します.このテストは,libtoolの deplibs_check_methodが正しく動作するかどうか調査します.
hardcode.test
共有ライブラリを持つすべてのシステムで,実行形式に対しリンクされるライ ブラリの位置が実行形式の内部に符号化されるはずですsee Linking executables.このテストは,システムリンカがライブラリの位置をハードコー ドし,libtool自身のリンカの動作方法の概念と一致することを保証する条件 を調査します.
build-relink.test
変数shlibpath_overrides_runpathが正しく設定されているかどうか調 査します.テストが失敗し,VERBOSEが設定されている場合,それは変 数を設定する必要がないことを示します.
noinst-link.test
libtoolが,たった今ビルドされたライブラリにリンクする方が良い時,以前 にインストールされているバージョンにリンクしようとしないかどうか調査し ます.
depdemo-conf.test
depdemo-exec.test
depdemo-inst.test
depdemo-make.test
depdemo-unst.test
depdemo-static.test
depdemo-shared.test
depdemo-nofast.test
これらのプログラムは,libtool配布物のdepdemoサブディレクトリの, コンフィグレーション,ビルド,インストール,そしてアンインストールを, 正しく行えることを判定するための調査を行います.

depdemoサブディレクトリは,libtoolに依存する内部ライブラリのデ モンストレーションを含みます.このテストプログラムは,いくつかの交互依 存しているライブラリをリンクします.

テストの,depdemo-make.testdepdemo-exec.testdepdemo-inst.test,そしてdepdemo-unst.testは,四つの異な るlibtoolのコンフィグレーションの下で,四回実行されます. depdemo-conf.testは,スタティックと共有の両方のライブラリをビル ドするために,depdemo/libtoolをコンフィグレーションし, depdemo-static.testはスタティックライブラリのみビルドし (`--disable-shared'),depdemo-shared.testは共有ライブラリ のみビルドします(`--disable-static').depdemo-nofast.test は高速インストールモード(`--enable-fast-install=no')を利用不可能 にするために,depdemo/libtoolをコンフィグレーションします.

mdemo-conf.test
mdemo-exec.test
mdemo-inst.test
mdemo-make.test
mdemo-unst.test
mdemo-static.test
mdemo-shared.test
これらのプログラムは,libtool配布物のmdemoサブディレクトリが, コンフィグレーション,ビルド,インストール,そしてアンインストールが正 しくできることを知るために調査します.

mdemoサブディレクトリは,libtoolと,システム非依存のモジュール ロードのための,dlopenラッパーlibltdlを使用するパッケージのデモ ンストレーションを含みます.ライブラリlibltdlは,様々なプラット フォーム(Linux,Solaris,HP/UX等)に対する,dlpreopenモジュールに対する サポートを含む(see Dlpreopening)dlopenラッパーを提供します.

テストのmdemo-make.testmdemo-exec.testmdemo-inst.test,そしてmdemo-unst.testは,三つの異なる libtoolのコンフィグレーションの下で,三回実行されます. mdemo-conf.testは,スタティックと共有の両方のライブラリをビルド するためにmdemo/libtoolをコンフィグレーションし, mdemo-static.testは,スタティックライブラリのみビルドし (`--disable-shared'),そしてmdemo-shared.testは,共有ライ ブラリのみをビルドします(`--disable-static').

dryrun.test
このテストは,libtoolの--dry-runモードが正しく動作するかどうか を調査します.
assign.test
libtoolスクリプト内の割り当てられている同じ行で,停止したり,続けたり しないかどうか調査します.
link.test
このテストは,libtoolでないスタティックライブラリに対する直接的なリン クが正しく動作することを保証します.
link-2.test
このテストは,`.lo'で終わるファイルがプログラムファイルに直接リン クされないことを確かめます.
nomode.test
実際にlibtoolの助けが可能かどうか調査します.
quote.test
このプログラムはlibtoolのメタ文字を引用符で囲むことを調査します.
sh.test
`test'コマンドがlibtoolで忘れられていないか調査します.
suffix.test
他のプログラミング言語がlibtoolで使用されるとき(see Other languages),ソースファイルは`.c'以外の接尾子で終わるかもしれませ ん.このテストは,サポートするすべてのファイル形式に対する接尾子を扱う こと可能で,接尾子が不当なときは失敗することを確認します.